เขียนโปรแกรมตามผังงานข้าง ๆ นี้
___inp___ = ["10"]
def input():
return ___inp___[0]
n = int(input())
s = 0
for i in range(n):
s += i
print(s)
obj = Ex().check_for_loop(missing_msg="ต้องใช้วงวน for ตามผังงาน")
obj.check_iter().has_equal_value(
incorrect_msg = "ควรใช้ range และเขียนค่าข้างในให้ถูกตามผังงาน")
for v in [0, 1, 5, 113]:
precode = "___inp___[0] ='"+str(v)+"'"
Ex().has_equal_output(pre_code=precode,
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
เขียนโปรแกรมตามผังงานข้าง ๆ นี้
___inp___ = ["10"]
def input():
return ___inp___[0]
n = int(input())
s = 0
for i in range(1,n+1):
if i%2 == 0:
s += i
s += i
print(s)
obj = Ex().check_for_loop(missing_msg="ต้องใช้วงวน for ตามผังงาน")
obj.check_iter().has_equal_value(
incorrect_msg = "ควรใช้ range และเขียนค่าข้างในให้ถูกตามผังงาน")
for v in [0, 1, 5, 113]:
precode = "___inp___[0] ='"+str(v)+"'"
Ex().has_equal_output(pre_code=precode,
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
เขียนโปรแกรมตามผังงานข้าง ๆ นี้
___inp___ = ["10"]
def input():
return ___inp___[0]
n = int(input())
s = 0
k = 1
for i in range(n,0,-1):
if i%2 == 0:
s += i*k
else:
s -= k
k += 2
s += i*k
print(s)
obj = Ex().check_for_loop(missing_msg="ต้องใช้วงวน for ตามผังงาน")
obj.check_iter().has_equal_value(
incorrect_msg = "ควรใช้ range และเขียนค่าข้างในให้ถูกตามผังงาน")
for v in [0, 1, 5, 113]:
precode = "___inp___[0] ='"+str(v)+"'"
Ex().has_equal_output(pre_code=precode,
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
อ่านจำนวนเต็ม a, b และ c จาก input แล้วแสดงจำนวนเต็มที่มีค่า a, a+c, a+2c, ... บรรทัดละหนึ่งค่า โดยจะหยุดแสดงเมื่อค่าที่คำนวณมากกว่าหรือเท่ากับ b เช่น a=2, b=7, c=2 จะแสดง 2, 4 และ 6 บรรทัดละค่า
___inp___ = ["6 50 7"]
def input():
return ___inp___[0]
x = input().split()
a = int(x[0])
b = int(x[1])
c = int(x[2])
for i in range(a, b, c):
print(i)
obj = Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
obj.check_iter().has_equal_value(
incorrect_msg = "ควรใช้ range และเขียนค่าข้างในให้ถูกต้อง")
for v in ["0 1 1", "0 5 2", "7 40 3"]:
precode = "___inp___[0] ='"+str(v)+"'"
Ex().has_equal_output(pre_code=precode,
incorrect_msg = "ผิด เช่น กรณีอินพุตคือ " + str(v))
อ่านจำนวนเต็มไม่ติดลบ m จาก input แล้วแสดงจำนวนเต็มที่มีค่าตั้งแต่ -m จนถึง m บรรทัดละหนึ่งค่า
___inp___ = ["10"]
def input():
return ___inp___[0]
m = int(input())
for i in range(-m, m+1):
print(i)
obj = Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
obj.check_iter().has_equal_value(
incorrect_msg = "ควรใช้ range และเขียนค่าข้างในให้ถูกต้อง")
for v in ["0", "7", "21"]:
precode = "___inp___[0] ='"+str(v)+"'"
Ex().has_equal_output(pre_code=precode,
incorrect_msg = "ผิด เช่น กรณีอินพุตคือ " + str(v))
อ่านจำนวนเต็มไม่ติดลบ m จาก input แล้วแสดงเฉพาะจำนวนเต็มคู่ที่มีค่าตั้งแต่ -m จนถึง m บรรทัดละหนึ่งค่า
___inp___ = ["1"]
def input():
return ___inp___[0]
m = int(input())
s = -m; t = m
if m%2 == 1:
s += 1
t -= 1
for i in range(s, t+1, 2):
print(i)
for v in ["0", "4", "21"]:
precode = "___inp___[0] ='"+str(v)+"'"
Ex().has_equal_output(pre_code=precode,
incorrect_msg = "ผิด เช่น กรณีอินพุตคือ " + str(v))
อ่านจำนวนเต็ม n จาก input แล้วเขียนคำสั่งเพื่อคำนวณและแสดงค่าของ \(\sum_{i=1}^n i^5\) (โดยใช้วงวน for)
___inp___ = ["1"]
def input():
return ___inp___[0]
n = int(input())
s = 0
for i in range(1,n+1):
s += i**5
print(s)
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
for v in [1,3,5,10]:
Ex().has_equal_output(pre_code="___inp___[0] ='"+str(v)+"'",
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
ข้อมูลที่ input มีบรรทัดแรกเป็นจำนวนเต็ม n ตามด้วยอีก n บรรทัดเป็นจำนวนเต็ม d0, d1, ..., dn-1 บรรทัดละจำนวน จงเขียนโปรแกรมอ่านข้อมูลจาก input (โดยใช้วงวน for) เพื่อหาผลรวมของ d0, d1, ..., dn-1
___inp___ = ["1","2"]
def input():
t = ___inp___.pop(0)
___inp___.append(t)
return t
n = int(input())
n = int(input())
s = 0
for k in range(n):
s += int(input())
print(s)
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
for v in ["0", "3789", "6123456"]:
Ex().has_equal_output(pre_code="___inp___[:] = "+str(list(v)),
incorrect_msg = "ผิด เช่น กรณีบรรทัดแรกคือ " + str(v[0]) +
("" if v[0] == "0" else
" ตามด้วย " + " ".join(v[1:]) + " บรรทัดละจำนวน"))
มีรายการของจำนวนเต็มในบรรทัดเดียวกันของ input เช่น 10 20 30 55 จงเขียนชุดคำสั่งอ่านจำนวนเต็มเหล่านี้เก็บใส่ตัวแปรชื่อ a ที่เป็นลิสต์ จากนั้นสร้างลิสต์ของจำนวนจริงมีขนาดเท่ากับของ a แต่ละช่องเก็บค่าครึ่งหนึ่งของที่เก็บใน a เช่น อ่านข้อมูลได้ a = [10,20,30,55] แล้วก็สร้าง b = [5.0, 10.0, 15.0, 27.5]
___inp___ = ["1 2 3 4 5"]
def input():
return ___inp___[0]
x = input().split()
a = [0]*len(x)
for i in range(len(x)):
a[i] = int(x[i])
b = [0.0]*len(x)
for i in range(len(a)):
b[i] = a[i]/2
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
obj = Ex().check_object('a', missing_msg="ไม่มีตัวแปร a")
obj.has_equal_value(incorrect_msg = "a มีค่าไม่ตรงตามโจทย์")
obj.has_equal_value(expr_code="type(a)", incorrect_msg="a ต้องเป็น list")
obj.has_equal_value(expr_code="[type(e) for e in a]",
incorrect_msg="a ต้องเป็นลิสต์ของจำนวนเต็ม")
obj = Ex().check_object('b', missing_msg="ไม่มีตัวแปร b")
obj.has_equal_value(incorrect_msg = "b มีค่าไม่ตรงตามโจทย์")
obj.has_equal_value(expr_code="type(b)", incorrect_msg="b ต้องเป็น list")
obj.has_equal_value(expr_code="[type(e) for e in b]",
incorrect_msg="b ต้องเป็นลิสต์ของจำนวนจริง")
อ่านจำนวนเต็ม n จาก input แล้วแสดงรูปสามเหลี่ยมดังตัวอย่างข้าง ๆ นี้
___inp___ = ["5"]
def input():
return ___inp___[0]
n = int(input())
for i in range(1,n+1):
print("*"*i)
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
for v in [1,4,7,10]:
Ex().has_equal_output(pre_code="___inp___[0] ='"+str(v)+"'",
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
อ่านจำนวนเต็ม n จาก input แล้วแสดงรูปสามเหลี่ยมดังตัวอย่างข้าง ๆ นี้
___inp___ = ["5"]
def input():
return ___inp___[0]
n = int(input())
for i in range(1,n+1):
print("*"*i)
for i in range(n-1,0,-1):
print("*"*i)
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
for v in [1,4,7,10]:
Ex().has_equal_output(pre_code="___inp___[0] ='"+str(v)+"'",
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
อ่านจำนวนเต็ม n จาก input แล้วแสดงรูปสามเหลี่ยมดังตัวอย่างข้าง ๆ นี้
___inp___ = ["5"]
def input():
return ___inp___[0]
n = int(input())
for i in range(1,n+1):
print(" "*(n-i) + "*"*i)
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
for v in [1,4,7,10]:
Ex().has_equal_output(pre_code="___inp___[0] ='"+str(v)+"'",
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
อ่านสตริง t
จาก input เพื่อนับและแสดงว่ามีสระใน t
กี่ตัว (นับทั้งตัวเล็กและตัวใหญ่ โดยใช้วงวน for) เช่น Anna มีสระเป็นจำนวน 2 ตัว แบบฝึกหัดของบทก่อน เราเขียนโดยใช้วงวน while ดังแสดงข้างล่างนี้
___inp___ = ["1"]
def input():
return ___inp___[0]
t = input()
t = input()
c = 0
vowels = "aeiouAEIOU"
for k in range(len(t)):
if t[k] in vowels:
c += 1
print(c)
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
for v in ['', 'Annotation', 'Krungthepmahanakorn', 'bcdfghjklmnpqrstvwxyz', 'AEIUOaeiuo']:
Ex().has_equal_output(pre_code = "___inp___[0]='"+v+"'", incorrect_msg = "ผิด เช่น t = '" + v + "'")
อ่านสตริง t
จาก input แล้วนับและแสดงว่ามีสตริงย่อย "ABC" อยู่ภายในกี่ตำแหน่ง เช่น "ABCabcAABCABAABC" มี "ABC" อยู่ 3 ตำแหน่ง
___inp___ = ["ABcxABCxABCcCA"]
def input():
return ___inp___[0]
t = input()
c = 0
for i in range(len(t)-2):
if t[i:i+3] == "ABC":
c += 1
print(c)
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
for v in ['', 'A', 'AB', 'ABc', 'ABC', "ABcABCxAxBABC"]:
Ex().has_equal_output(pre_code = "___inp___[0]='"+v+"'", incorrect_msg = "ผิด เช่น t = '" + v + "'")
อ่านสตริง t
จาก input มาหนึ่งบรรทัด แล้วก็อ่านสตริง s
จาก input อีกหนึ่งบรรทัด จากนั้นนับและแสดงว่า มีสตริงของ s
อยู่ภายในสตริงของ t
กี่ตำแหน่ง เช่น t = "ABCabcAABCABAABC" และ s = "ABC" จะแสดง 3
___inp___ = ["XYXYZXYZZXXYZXYZZZZXY", "XYZZ"]
def input():
t = ___inp___.pop(0)
___inp___.append(t)
return t
t = input()
s = input()
c = 0
for i in range(len(t)-len(s)+1):
if t[i:i+len(s)] == s:
c += 1
print(c)
Ex().check_for_loop(missing_msg="ควรฝึกใช้วงวน for")
for v in [['','A'], ['A','A'], ['AB', 'ABC'], ["ABCcABCCxABCCxBABC", "ABCC"]]:
Ex().has_equal_output(pre_code = "___inp___[:]="+str(v), incorrect_msg = "ผิด เช่น t = '" + v[0] + "'; s ='" + v[1] + "'")