小学6年生の長男が夏休みの自由研究にPythonを勉強したいというので付き合ってみました。
どこから手を付けていけばわからないので、いくつか課題を出し、それを実現するコードを一緒に書くということを繰り返しました。
この記事では、「課題3 掛け算ゲーム」について扱います。その他の課題については下記の記事をご覧ください。
- 夏休みなので小学生とPythonを勉強してみた - 課題1 FizzBuzz - Qiita
- 夏休みなので小学生とPythonを勉強してみた - 課題2 掛け算九九 - Qiita
- 夏休みなので小学生とPythonを勉強してみた - 課題4 じゃんけん - Qiita
- 夏休みなので小学生とPythonを勉強してみた - 課題5 サイコロの目の出る確率 - Qiita
- 夏休みなので小学生とPythonを勉強してみた - 課題6 写真の整理 - Qiita
- 夏休みなので小学生とPythonを勉強してみた - 課題7 掛け算ゲームWeb版 - Qiita
- 夏休みなので小学生とPythonを勉強してみた - 課題8 掲示板 - Qiita
- 夏休みなので小学生とPythonを勉強してみた - 課題9 顔の検出 - Qiita
- 夏休みなので小学生とPythonを勉強してみた - 課題10 顔の認識 - Qiita
コードはGitHubにて公開しています。
課題3-1 1から9の範囲でランダムに選ばれた数を表示する
指示
1から9の範囲でランダムに選ばれた数を表示するプログラムを作りましょう。
ヒント
組み込み関数では提供されていない機能を使いたい場合には、その機能を提供するモジュールをimport文で取り込みます。
整数の擬似乱数を生成するには、randomモジュールのrandrange関数を使います。
回答例
import random
print(random.randrange(1, 10))
課題3-2 ランダムに選んだ掛け算を表示する
指示
1から9の範囲でランダムに選ばれた数を2つ用意し、それらを掛け算した結果を表示するプログラムを作りましょう。
回答例
import random
a = random.randrange(1, 10)
b = random.randrange(1, 10)
print(f'{a} * {b} = {a * b}')
課題3-2 ランダムに選んだ掛け算を問題として出し、結果を判定する
指示
1から9の範囲でランダムに選ばれた数を使った掛け算をユーザーに問題として出し、ユーザーが入力した結果の判定結果を表示するプログラムを作りましょう。
ヒント
ユーザーからの入力はinput関数で受け取ります。
input関数の出力は文字列なので、int関数で整数に変換します。
回答例
import random
a = random.randrange(1, 10)
b = random.randrange(1, 10)
c = int(input(f'{a} * {b} = '))
if c == a * b:
print('Good job!')
else:
print('Oops!')
実行例
2 * 2 = 4
Good job!
1 * 6 = 7
Oops!