ให้เขียนโปรแกรมรับจำนวนเต็ม n จาก input เพื่อแสดงจำนวนเต็มคี่ตั้งแต่ 1 ถึงจำนวนคี่ที่ไม่เกิน n (โดยใช้วงวน while)
___inp___ = ["1"]
def input():
return ___inp___[0]
n = int(input())
i = 1
while i <= n:
print(i)
i += 2
Ex().check_while(missing_msg="ควรฝึกใช้วงวน while")
for v in [1,3,5,13, 29,30]:
Ex().has_equal_output(pre_code="___inp___[0]='"+str(v)+"'",
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
ข้อมูลที่ input มีบรรทัดแรกเป็นจำนวนเต็ม n ตามด้วยอีก n บรรทัดเป็นจำนวนเต็ม d0, d1, ..., dn-1 บรรทัดละจำนวน จงเขียนโปรแกรมอ่านข้อมูลจาก input (โดยใช้วงวน while) เพื่อหาผลรวมของ d0, d1, ..., dn-1
___inp___ = ["1","2"]
def input():
t = ___inp___.pop(0)
___inp___.append(t)
return t
n = int(input())
n = int(input())
k = 0
s = 0
while k < n:
s += int(input())
k += 1
print(s)
Ex().check_while(missing_msg="ควรฝึกใช้วงวน while")
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 เป็นจำนวนเต็ม บรรทัดละจำนวน จงเขียนโปรแกรมรับข้อมูลจาก input (โดยใช้วงวน while) เพื่อหาผลรวมของจำนวนที่อ่านเข้ามา จนพบจำนวนลบ (ไม่รวมจำนวนลบ)
___inp___ = [str(e) for e in range(20,-1,-1)] + ["-1"] + \
[str(e) for e in range(5,0,-1)]
def input():
t = ___inp___.pop(0)
___inp___.append(t)
return t
s = 0
x = int(input())
while x >= 0:
s += x
x = int(input())
print(s)
Ex().check_while(missing_msg="ควรฝึกใช้วงวน while")
Ex().has_equal_output(incorrect_msg = "ยังไม่ถูก")
ข้อมูลจาก input เป็นจำนวนเต็ม บรรทัดละจำนวน จนถึงบรรทัดสุดท้ายจะเป็นคำว่า end จงเขียนโปรแกรมรับข้อมูลจาก input (โดยใช้วงวน while) เพื่อหาผลรวมของจำนวนที่อ่านเข้ามา จนพบคำว่า end
___inp___ = [str(e) for e in range(20,-1,-1)] + ["end"]
def input():
t = ___inp___.pop(0)
___inp___.append(t)
return t
s = 0
x = input()
while x != "end":
s += int(x)
x = input()
print(s)
Ex().check_while(missing_msg="ควรฝึกใช้วงวน while")
Ex().has_equal_output(incorrect_msg = "ยังไม่ถูก")
อ่านจำนวนเต็ม n จาก input แล้วเขียนคำสั่งเพื่อคำนวณและแสดงค่าของ \(\sum_{i=1}^n i^5\) (โดยใช้วงวน while)
___inp___ = ["1"]
def input():
return ___inp___[0]
n = int(input())
s = 0
i = 1
while i <= n:
s += i**5
i += 1
print(s)
Ex().check_while(missing_msg="ควรฝึกใช้วงวน while")
for v in [1,3,5,10]:
Ex().has_equal_output(pre_code="___inp___[0] ='"+str(v)+"'",
incorrect_msg = "ผิด เช่น กรณี n = " + str(v))
อ่านสตริง t
จาก input เพื่อนับและแสดงว่ามีสระใน t
กี่ตัว (นับทั้งตัวเล็กและตัวใหญ่ โดยใช้วงวน while) เช่น Anna มีสระเป็นจำนวน 2 ตัว แบบฝึกหัดของบทก่อน เราจำกัดขนาดของ t แค่ 5 ตัวอักษร แล้วก็ยังไม่ได้เรียนเรื่องวงวน ก็เขียนเป็นคำสั่งได้ดังข้างล่างนี้ จะเห็นว่ามีคำสั่งที่ทำงานในรูปแบบซ้ำ ๆ กัน ก็นำมาทำในวงวนได้
t = input() c = 0 vowels = "aeiouAEIOU" if t[0] in vowels: c += 1 if t[1] in vowels: c += 1 if t[2] in vowels: c += 1 if t[3] in vowels: c += 1 if t[4] in vowels: c += 1 print(c)
___inp___ = ["1"]
def input():
return ___inp___[0]
t = input()
t = input()
c = 0
vowels = "aeiouAEIOU"
k = 0
while k < len(t):
if t[k] in vowels:
c += 1
k += 1
print(c)
Ex().check_while(missing_msg="ควรฝึกใช้วงวน while")
for v in ['', 'Annotation', 'Krungthepmahanakorn', 'bcdfghjklmnpqrstvwxyz', 'AEIUOaeiuo']:
Ex().has_equal_output(pre_code = "___inp___[0]='"+v+"'", incorrect_msg = "ผิด เช่น t = '" + v + "'")