ホームページ >バックエンド開発 >Python チュートリアル >日 - ループ演習
ここでは、練習用に数字に焦点を当てた while ループの質問をいくつか示します。
基本的な問題
1.数字を印刷します
while ループを使用して 1 から 10 までの数字を出力するプログラムを作成します。
def print_number(no): num=1 while num<=no: print(num, end=" ") num+=1 print_number(10)
1 2 3 4 5 6 7 8 9 10
2.N 個の数値の合計
while ループを使用して最初の NN 自然数の合計を計算するプログラムを作成します。
def sum_of_number(no): num=1 total=0 while num<=no: total=total+num num+=1 return total no=int(input("Sum of the number:")) print(sum_of_number(no))
Sum of the number:10 55
3.偶数
while ループを使用して 1 から 50 までのすべての偶数を出力するプログラムを作成します。
def print_even_number(no): num=2 while num<=no: print(num, end=" ") num+=2 print_even_number(50)
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50
4.奇数
1 から NN までのすべての奇数を出力するプログラムを作成してください。
def print_odd_number(no): num=1 while num<=no: print(num, end=" ") num+=2 return no no=int(input("Enter the number:")) print_odd_number(no)
Enter the number:20 1 3 5 7 9 11 13 15 17 19
5.逆カウント
while ループを使用して、20 から 1 までの数値を逆順に出力するプログラムを作成します。
def print_reverse_number(no): num=20 while num>=no: print(num, end=" ") num-=1 print_reverse_number(1)
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
中級問題
1.階乗計算
while ループを使用して、指定された数値の階乗を計算するプログラムを作成します。
def find_factorial(num): no=1 factorial=1 while no<=num: factorial=factorial*no no+=1 return factorial num=int(input("Enter the number:")) print(find_factorial(num))
Enter the number:5 120
def sum_of_digits(num): sum=0 while num>0: sum=sum+num%10 num=num//10 return sum num=int(input("Enter the number:")) print(sum_of_digits(num))
Enter the number:123 6
3.桁を数える
指定された数値の桁数を数えるプログラムを作成します (例: 12345 → 5 桁)。
def count_of_digits(num): count=0 while num>0: num=num//10 count+=1 return count num=int(input("Enter the number:")) print(count_of_digits(num))
Enter the number:12345 5
4.数字を反転する
指定された数値を反転するプログラムを作成します (例: 123 → 321)。
def reverse_number(num): reverse=0 while num>0: reverse=reverse*10+num%10 num=num//10 return reverse num=int(input("Enter the number:")) print(reverse_number(num))
Enter the number:123 321
5.九九
while ループを使用して、指定された数値 nn の九九を出力するプログラムを作成します。
def multiply(num): no=1 while no<=15: print(no,"*",num,"=",no*num , end="\n") no+=1 num=int(input("Enter the number:")) multiply(num)
Enter the number:12 1 * 12 = 12 2 * 12 = 24 3 * 12 = 36 4 * 12 = 48 5 * 12 = 60 6 * 12 = 72 7 * 12 = 84 8 * 12 = 96 9 * 12 = 108 10 * 12 = 120 11 * 12 = 132 12 * 12 = 144 13 * 12 = 156 14 * 12 = 168 15 * 12 = 180
高度な問題
1.回文をチェック
指定された数値が回文であるかどうかを確認するプログラムを作成します (例: 121 → 回文、123 → 回文ではない)。
def palindrome(num): count=0 while num>0: count=count*10+num%10 num=num//10 return count num=int(input("Enter the number:")) result=palindrome(num) if result==num: print("Palindrome") else: print("Not palindrome")
Enter the number:121 Palindrome Enter the number:123 Not palindrome
*2.力を見つける*
def find_power(base,power): result=1 while power>=1: result=result*base power-=1 return result base=int(input("Enter the base number:")) power=int(input("Enter the power number:")) result=find_power(base,power) print(result)
Enter the base number:2 Enter the power number:5 32
3.アームストロング数
指定された数値がアームストロング数値であるかどうかを確認するプログラムを作成します (例: 153 → 13 53 33=15313 53 33=153)。
def count_of_digits(num): count=0 while num>0: num=num//10 count+=1 return count def find_power(base,power): result=1 while power>=1: result=result*base power-=1 return result def find_armstrong(num,count): armstrong=0 while num>0: rem=num%10 result= find_power(rem,count) armstrong=armstrong+result num=num//10 return armstrong num=int(input("Enter the number:")) count=count_of_digits(num) armstrong_result=find_armstrong(num,count) if armstrong_result==num: print("Armstrong") else: print("Not armstrong")
Enter the number:123 Not armstrong Enter the number:153 Armstrong
4.偶数位置と奇数位置の合計:
def sum_of_even_odd(num): odd=0 even=0 index=0 while index<len(num): digit=int(num[index]) if index%2==0: even=even+digit else: odd=odd+digit index+=1 return even,odd num=input("Enter the number:") even,odd=sum_of_even_odd(num) print("sum of even number:",even) print("sum of odd number:",odd)
Enter the number:12345 sum of even number: 9 sum of odd number: 6
以上が日 - ループ演習の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。