เขียนโปรแกรมตามผังงานข้าง ๆ นี้
___inp___ = ["43", "14"]
def input():
t = ___inp___.pop(0)
___inp___.append(t)
return t
a = int(input())
b = int(input())
if a < b:
min = a
max = b
else:
min = b
max = a
print(min, max)
for v in 'ab':
obj = Ex().check_object(v, missing_msg = "ไม่มีตัวแปร "+v+" ควรเขียนให้เหมือนผังงาน")
obj.has_equal_value(incorrect_msg = v+" มีค่าไม่ตรงตามโจทย์")
obj.has_equal_value(expr_code="type("+v+")", incorrect_msg=v+" ต้องเป็น int")
Ex().check_if_else(missing_msg="ฝึกใช้ if-else ตามผังงาน").check_test().multi(
set_env(a=1,b=2).has_equal_value(incorrect_msg = "ดูให้ดี กรณี a < b, ควรเขียนให้เหมือนผังงาน"),
set_env(a=2,b=2).has_equal_value(incorrect_msg = "ดูให้ดี กรณี a == b, ควรเขียนให้เหมือนผังงาน"),
set_env(a=2,b=1).has_equal_value(incorrect_msg = "ดูให้ดี กรณี a > b, ควรเขียนให้เหมือนผังงาน")
)
for v in ['min', 'max']:
obj = Ex().check_object(v, missing_msg = "ไม่มีตัวแปร "+v +" ควรเขียนให้เหมือนผังงาน")
obj.has_equal_value(incorrect_msg = v+" มีค่าไม่ตรงตามโจทย์")
Ex().has_equal_output(incorrect_msg="ไม่ได้แสดงผล หรือแสดงผลที่ผิด")
เขียนโปรแกรมตามผังงานข้าง ๆ นี้ (มีตัวแปร a
และ b
ให้แล้ว ไม่ต้องตั้งค่าหรือรับอินพุตใด ๆ)
a,b = 9,8
if abs(a-b) > 2:
a,b = b,a
else:
a = b**2 + a
print(a,b)
Ex().check_if_else(missing_msg="ใช้ if-else ตามผังงาน")
for v in ["1,2","1,3","1,4","2,1","3,1","4,1"]:
Ex().has_equal_output(pre_code="a,b="+v,
incorrect_msg = "ผิด เช่น กรณี a,b = " + v)
เขียนโปรแกรมตามผังงานข้าง ๆ นี้ (มีตัวแปร a
ให้แล้ว ไม่ต้องตั้งค่าหรือรับอินพุตใด ๆ)
a = 0
if a%2 == 0: # a เป็นจำนวนคู่ ?
if a%2 == 0:
a *= 2
else:
if a > 10:
a //= 2
else:
a = 0
print(a)
Ex().check_if_else(missing_msg="ใช้ if-else ตามผังงาน")
for v in range(5,15):
Ex().has_equal_output(pre_code="a="+str(v),
incorrect_msg = "ผิด เช่น กรณี a = " + str(v))
เขียนโปรแกรมตามผังงานข้าง ๆ นี้ (มีตัวแปร a
ให้แล้ว ไม่ต้องตั้งค่าหรือรับอินพุตใด ๆ)
a = 0
if a%2 == 0: # a เป็นจำนวนคู่ ?
if a%2 == 0:
if a > 10:
a //= 2
else:
a = 0
else:
a *= 2
print(a)
Ex().check_if_else(missing_msg="ใช้ if-else ตามผังงาน")
for v in range(5,15):
Ex().has_equal_output(pre_code="a="+str(v),
incorrect_msg = "ผิด เช่น กรณี a = " + str(v))
เขียนโปรแกรมตามผังงานข้าง ๆ นี้ (มีตัวแปร a
ให้แล้ว ไม่ต้องตั้งค่าหรือรับอินพุตใด ๆ)
a = 0
if a%2 == 0:
b = 2*a
if a > 10:
a //= 2
else:
b += a
a += b
else:
a *= 2
print(a,b)
Ex().check_if_else(missing_msg="ใช้ if-else ตามผังงาน")
for v in range(5,15):
Ex().has_equal_output(pre_code="a="+str(v),
incorrect_msg = "ผิด เช่น กรณี a = " + str(v))