二桁の正の整数を乱数により2個発生させ,その間の整数を順に表示するプログラムを作成しましょう.
Integers between 69 and 84 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
最初に値の入れ替えを行う可能性があります.
手順 2つの乱数発生 小さい順にソート for 文の range 関数を2つの乱数にして作成 数の表示の際には改行しない
例題 ii. を改造して,出てきた乱数の平均値(小数第1位まで表示)を求めるプログラムを作成しましょう.
|
18 random numbers with 3 digits: 791 404 897 553 951 642 579 654 107 498 249 530 601 906 681 470 180 789 The mean of above numbers: 582.3 |
小数第1位までにするための f 文字列のやり方は,教科書 p.159 の List 6-17 を参考にしてください.
手順 範囲内の乱数発生 和の値を入れておく変数を初期化 for 文の開始 数の表示の際には改行しない 乱数を和に加算 for 文終了時に改行 和を最初の乱数で除して平均値を表示
10 から 20 までの整数をどれか一つ乱数を用いて発生させ,その数の階乗を求めるプログラムを作成しましょう.
The factorial of 16 is 20,922,789,888,000. |
類算代入演算子 *= を使います.
手順 乱数発生 階乗の値を入れる変数の初期化 for 文の開始 変数に逐次 for 文内で定義した変数をかける 結果の表示
5桁の正の整数を乱数により1個発生させ,その数の約数を全て表示するプログラムを作成しましょう.
Divisors of 62898: 1 2 3 6 11 22 33 66 953 1906 2859 5718 10483 20966 31449 62898 |
乱数を for 文内で定義した変数で割り切れたら(余りが0なら)約数ですね.
アルファベットの大文字か小文字をランダムに20文字表示させるプログラムを if 文を使用しないで作成しましょう.
wjcSuNDVUxAkoPBowpSr |
大文字の文字コードは10進数で65から90まででした.大文字の文字コードに32を足すと,対応する小文字のコードになります.足すか足さないかも乱数です.
10桁の正の整数を乱数により1つ発生させます.次にその数の各位の数字を取り出すプログラムを作成しましょう.
Random number with 10 digits: 5057731731 Each digit of above number: 5 0 5 7 7 3 1 7 3 1 |
例えば,4321を1000で割る( // 演算子)と 4 になるので,1000の位の数が出てきます.1000で割った余りにすると 321 になるので,今度はそれを 100 で割ると 3 が出てきます.要は割る数である10のべき乗数を順に小さくしていく処理を for 文で実行させます.
2桁の正の整数を乱数により20個発生させ,その最大値を求めるプログラムを作成しましょう.
30 53 36 13 64 75 77 33 57 94 96 70 87 76 72 53 23 62 91 42 The maximum number of above numbers: 96 |
最大値を入れておく変数を1つ用意して,乱数を発生させる度に値の比較を毎回行います.