CMU 15-112 Spring 2019: Fundamentals of Programming and Computer Science
Check 1.7


  1. Check 1.7
    Write the function testFun(x) which prints "Done!" and returns 2*x
    import sys def set_certificate(certificate_div_id, certificate): document[certificate_div_id].textContent = certificate def get_student_code(student_code_div_id): raw_student_code = document[student_code_div_id].textContent return window.patchCodeToCheckTimeout(raw_student_code, 'check_timeout();'); class captureIO: def __init__(self): self.captured = [] def get_output(self): out = "" for c in self.captured: out += str(c) return out def write(self, data): self.captured.append(data) def flush(self): pass def make_certificate(student_code_div_id, certificate_div_id): try: student_code = get_student_code(student_code_div_id) certificate = [] execCapture = captureIO() sys.stdout = execCapture sys.stderr = execCapture exec(student_code) for test in [1,2,3,4.2,6.7,"hello","goodbye","",9,12]: capture = captureIO() sys.stdout = capture sys.stderr = capture returned_result = testFun(test) printed_result = capture.get_output() certificate.append((returned_result, type(returned_result))) certificate.append((printed_result, type(printed_result))) set_certificate(certificate_div_id, str(certificate)) except: set_certificate(certificate_div_id, "error")

  2. Back to notes