「さはら3」です。
AI副業でどこまでいけるのか?をテーマに頑張っていきたいと思います。
今回は、ChatGPTに教わるPythonの基礎編・練習問題となります。
練習問題
問題1: 変数の作成と出力
- 自分の名前を表す文字列型の変数を作成してください。
- 自分の年齢を表す整数型の変数を作成してください。
- これらの変数を使用して、
"私の名前は[名前]で、年齢は[年齢]歳です。"
と出力してください。
問題2: 整数の計算
- 任意の2つの整数を変数に代入してください。
- これらの整数の和、差、積を計算し、結果を出力してください。
問題3: 制御構造
1: if文
- 変数
number
に任意の整数を代入してください。 number
が正の場合は"正の数"
、負の場合は"負の数"
、0の場合は"ゼロ"
と出力してください。
2: forループ
range()
を使用して、1から10までの整数を順番に出力してください。- 1から10までの整数の合計を計算し、出力してください。
3: whileループ
- 変数
count
に0
を代入してください。 count
が10未満の間、count
の値を出力し、count
に1
を加えてください。
解答例
問題1-1
- 1. 自分の名前を表す文字列型の変数を作成してください。
AIさはら 問題1-1の解答は以下であっていますか?
name = "John"
ChatGPT
はい、問題1-1の解答として、name = "John"
は正しいです。
このコードは、name
という変数に文字列"John"
を代入しています。
もちろん、"John"
の部分はご自身の名前や他の名前に置き換えても構いません。
問題1-2
- 2. 自分の年齢を表す整数型の変数を作成してください。
AIさはら 問題1-2の解答は以下であっていますか?
age = 20
ChatGPT
はい、問題1-2の解答として、age = 20は正しいです。
このコードは、ageという変数に整数20を代入しています。
もちろん、20の部分はご自身の年齢や他の年齢に置き換えても構いません。
問題1-3
- 3. これらの変数を使用して、
"私の名前は[名前]で、年齢は[年齢]歳です。"
と出力してください。
AIさはら 問題1-3の解答は以下であっていますか?
print("私の名前は" + name + "で、年齢は" + age + "歳です。")
ChatGPT
問題1-3の解答には少し修正が必要です。age
は整数型の変数なので、直接文字列と結合(+
)することはできません。
age
を文字列型に変換する必要があります。str()
関数を使用して整数を文字列に変換できます。
修正後のコードは以下のようになります:
print("私の名前は" + name + "で、年齢は" + str(age) + "歳です。")
このコードを実行すると、name
に代入された名前とage
に代入された年齢を使用して、正しい文が出力されます。
→お恥ずかしい。間違えてしまいました。
問題2-1
- 1. 任意の2つの整数を変数に代入してください。
AIさはら 問題2-1の解答は以下であっていますか?
a = 10 b = 5
ChatGPT
はい、問題2-1の解答として、そのコードは正しいです。
このコードは、変数a
に整数10
を、変数b
に整数5
をそれぞれ代入しています。
これらの変数を使用して、次のステップで様々な計算を行うことができます。
問題2-2
- 2. これらの整数の和、差、積を計算し、結果を出力してください。
AIさはら 問題2-2の解答は以下であっていますか?
a = 10 b = 5 print(a + b) print(a - b) print(a * b)
ChatGPT
はい、問題2-2の解答として、提供されたコードは正しいです。
このコードは、変数a
とb
の和、差、および積を計算し、結果を出力します。
具体的には、コードを実行すると以下のように出力されます:
15 # 和 5 # 差 50 # 積
このコードは、基本的な算術演算子の使用方法を示しています。
問題3-1-1
1: if文
- 1. 変数
number
に任意の整数を代入してください。
- 1. 変数
AIさはら 問題3-1-1の解答は以下であっていますか?
number = 13
ChatGPT
はい、問題3-1-1の解答として、number = 13
は正しいです。
このコードは、変数number
に整数13
を代入しています。
問題3-1-2
1: if文
- 2.
number
が正の場合は"正の数"
、負の場合は"負の数"
、0の場合は"ゼロ"
と出力してください。
- 2.
AIさはら 問題3-1-2の解答は以下であっていますか?
if number > 0: print("正の数") elif number == 0: print("ゼロ") else: print("負の数")
ChatGPT
はい、正確にです!提供されたコードは正しいです。
number
が正の数であれば"正の数"
、0
であれば"ゼロ"
、負の数であれば"負の数"
と出力します。
このコードを実行すると、number
の値に基づいて適切なメッセージが出力されます。
問題3-2-1
2: forループ
- 1.
range()
を使用して、1から10までの整数を順番に出力してください。
- 1.
AIさはら 問題3-2-1の解答は以下であっていますか?
for i in range(10): print(i)
ChatGPT
問題3-2-1の解答には少し修正が必要です。
range(10)
は、0
から9
までの整数を生成します。
問題では、1
から10
までの整数を順番に出力するように指定されていますので、range(1, 11)
を使用する必要があります。
修正後のコードは以下のようになります:
for i in range(1, 11): print(i)
このコードを実行すると、1
から10
までの整数が順番に出力されます。
→おっと、そのオプションは習ってなかったですよ。ChatGPTさん
問題3-2-2
2: forループ
- 2. 1から10までの整数の合計を計算し、出力してください。
AIさはら 問題3-2-2の解答は以下であっていますか?
for i in range(1, 11): i++; print(i)
ChatGPT
問題3-2-2の解答にはいくつかの誤りがあります。
- Pythonでは、
i++
のようなインクリメント演算子は存在しません。i += 1
を使用する必要があります。 ただし、この問題の場合、合計を計算するために別の変数を使用する必要があります。 - 合計を計算するために、新しい変数(例えば
total
)を初期化し、ループの中で各数値を加える必要があります。 print(i)
はループの外で実行されるため、最後のi
の値、すなわち10
が出力されます。 合計を出力するためには、print(total)
とする必要があります。
以下が修正後のコードです:
total = 0 for i in range(1, 11): total += i print(total)
このコードを実行すると、1
から10
までの整数の合計である55
が出力されます。
→また間違えてしまいました。でも間違えると何がダメだったのかをちゃんと教えてくれるのでありがたいです。ChatGPTさん
問題3-3-1、3-3-2
3: whileループ
1. 変数
count
に0
を代入してください。2.
count
が10未満の間、count
の値を出力し、count
に1
を加えてください。
AIさはら 問題3-3-1、3-3-2の解答は以下であっていますか?
count = 0 while count < 10: print(count) count += 1
ChatGPT
はい、正確にです!提供されたコードは正しいです。
count = 0 # 初期化 while count < 10: # countが10未満の間、ループを続ける print(count) # countの値を出力 count += 1 # countの値を1増加させる
このコードを実行すると、0
から9
までの整数が順に出力されます。
このwhile
ループは、count
が10
になると終了します。
おわりに
AIさはら Pythonの基礎編・練習問題はいかがでしたでしょうか?
問題を解いて理解は深まりましたか?
私自身も、基礎から勉強しておりますので、何問か間違えてしまいました。
これからも一緒にpythonを習得するために頑張っていきましょう。
次回は「ステップ3: 関数とモジュール」となる予定です。
【おススメ本:Amazonアソシエイト】
python+ChatGPTで楽々プログラミング
本日のAI着物美女

本日のAI着物美女

AI関連は日進月歩、日々之精進でございます。
最後まで読んで頂きありがとうございました。
AIさはら