python3は、入力数が素数であるか否かを判断します

まず、我々は素数であるかを定義する必要がありますか?

  素数:も知ら素数は、より大きな意味に加えて、自然数1 1及び数自体、他は(だけのように定義自然数分割することができない2数自体の数の因子)。

  例えば:である1または整数以外5 --- 5に加えて、第三のは、もはやアップ自然数で割り切れる見つけることができません。だから、5は素数です。

プログラムそれが素数でないのであれば、どのように判断するには?

アイデアの実現:

1  、それに割り当てられた番号が決定されて入力する必要があるとナンバー
 2「ナンバー>満たしていないシンボルの数を決定する1 それはサイクルの終わりを満たしていない場合ではない素数である場合は、テストを満たすために行く、」ルールを
 3  ナンバー1であることをすれば、一方との間の任意の正の整数のサイクルの終わりに、素数で割り切れるではないと判断することができる
 4であれば1との間のすべての正の整数で割り切れない数は、それがサイクルの終わりに、素数であります

アイデアを、の特定を達成する方法を見てみましょう:

ナンバー= INT(INPUT(数値を入力してください))          正の整数を入力し、ナンバーに割り当てられた
IFナンバー> 1:                                 正の整数が入力よりも大きいか否かを判断するかどうか1。
    ための I におけるレンジ(2、ナンバー):                  サイクリック数1正の整数に2を撮影し、私は
        IF数%が== 0 I:                    私の数はモジュロ剰余が0である場合、それは分割することができる
            プリントデジタル%sは素数ではない%の数)
             BREAK                               #は素数ではありません、ループは終了し
    、他印刷デジタル%sは素数です数%)           そうでない場合は、それが素数である、結果を印刷し
、他印刷デジタル入力が法的、1以上です

このコードでは、注意すべき場所があります:

  何も他に存在しない場合、それが我々の共通のペアを構成しているか、とのためのペアが、並んで、あり、そして一緒になった他のために...他の... ...のelif ... elseとそうでは、実際にできればのためにならば他の出現と、このコードでは、残りの結果の次の反復が0の場合、サイクルが終わったことを、力に侵入。それをすべて失う、それはトップのアイデアの三点です。

最後に、異なる状況の結果を見てみましょう。

番号を入力してください:17 
17は素数で

、番号を入力してください: -10 
1より小さい入りの番号ではなく、法的には、

数字を入力します。9 
9は素数ではありません

 

 

おすすめ

転載: www.cnblogs.com/Zhan-W/p/11519708.html