日 - ループ演習

Dec 07, 2024 am 09:30 AM

Day - Looping exercises

ここでは、練習用に数字に焦点を当てた 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
ログイン後にコピー
  1. 数字の合計 指定された数値の桁の合計を求めるプログラムを作成します (例: 123 → 1 2 3=6)。
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 サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? LinuxターミナルでPythonバージョンを表示するときに発生する権限の問題を解決する方法は? Apr 01, 2025 pm 05:09 PM

LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか? 中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか? Apr 02, 2025 am 07:15 AM

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

あるデータフレームの列全体を、Python内の異なる構造を持つ別のデータフレームに効率的にコピーする方法は? あるデータフレームの列全体を、Python内の異なる構造を持つ別のデータフレームに効率的にコピーする方法は? Apr 01, 2025 pm 11:15 PM

PythonのPandasライブラリを使用する場合、異なる構造を持つ2つのデータフレーム間で列全体をコピーする方法は一般的な問題です。 2つのデータがあるとします...

プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は? プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は? Apr 02, 2025 am 07:18 AM

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

uvicornは、serving_forever()なしでhttpリクエストをどのように継続的に聞いていますか? uvicornは、serving_forever()なしでhttpリクエストをどのように継続的に聞いていますか? Apr 01, 2025 pm 10:51 PM

UvicornはどのようにしてHTTPリクエストを継続的に聞きますか? Uvicornは、ASGIに基づく軽量のWebサーバーです。そのコア機能の1つは、HTTPリクエストを聞いて続行することです...

Investing.comの反クローラーメカニズムをバイパスするニュースデータを取得する方法は? Investing.comの反クローラーメカニズムをバイパスするニュースデータを取得する方法は? Apr 02, 2025 am 07:03 AM

Investing.comの反クラウリング戦略を理解する多くの人々は、Investing.com(https://cn.investing.com/news/latest-news)からのニュースデータをクロールしようとします。

See all articles