![見出し画像](https://assets.st-note.com/production/uploads/images/93948740/rectangle_large_type_2_bc2147b26dec8cd3e261fe45000737fe.png?width=1200)
Photo by
featurecompass
最高の金持ちと結婚する方法(AIが最善・完璧なプログラムを生成)
正直、結果に驚いた…
AIはほぼ最善・完璧に動作するプログラムを自動生成
(変数名等も、こちらの意図を読み解くように英訳してる)
※昨日の共通テスト情報モニター模試で出題された内容を実際にシミュレーションさせるPythonプログラムが自動生成された。
(最高の人 ⇒ 数値化しやすいよう「金」に置き換え)
AI(ChatGPT)に指示(入力)した文章
花子さんは金持ちと結婚したいと考えています。
花子さんは金持ちと結婚するための戦略を考え、
その戦略を検証するシミュレーションするプログラムを作成することにしました。
花子さんの戦略と実行したいシミュレーションプログラムの流れ:
①0から1000までの間の乱数を10個発生させ、リスト「候補者年収」に入れる。
②リスト「候補者年収」の前半40%で最も大きい値を変数「基準年収」に入れる。
③リスト「候補者年収」の前半40%以降からひとつづつ取り出す。
もし、取り出した値が「基準年収」以上ならば、その値を「結婚相手」に入れ、ループを抜ける。
ループを抜けられず、リスト「年収」の最後になったら、その値を「結婚相手」に入れる。
④「候補者年収」「基準年収」「結婚相手」をわかりやすくそれぞれ表示する
Pythonで花子さんの考える戦略をシミュレーションするプログラムを作成してください。
AIが自動生成したPythonプログラム:
import random
# 乱数を10個発生させ、リスト「候補者年収」を作成する
candidate_incomes = [random.randint(0, 1000) for _ in range(10)]
# リスト「候補者年収」の前半40%で最も大きい値を「基準年収」に入れる
reference_income = max(candidate_incomes[:int(len(candidate_incomes) * 0.4)])
# リスト「候補者年収」の前半40%以降からひとつづつ取り出す
for income in candidate_incomes[int(len(candidate_incomes) * 0.4):]:
# もし、取り出した値が「基準年収」以上ならば、その値を「結婚相手」に入れ、ループを抜ける
if income >= reference_income:
spouse_income = income
break
# ループを抜けられず、リスト「年収」の最後になったら、その値を「結婚相手」に入れる
else:
spouse_income = candidate_incomes[-1]
# 「候補者年収」「基準年収」「結婚相手」をわかりやすく表示する
print(f"候補者年収: {candidate_incomes}")
print(f"基準年収: {reference_income}")
print(f"結婚相手: {spouse_income}")
生成したプログラムの実行結果:
候補者年収: [306, 803, 690, 209, 523, 961, 765, 111, 338, 152]
基準年収: 803
結婚相手: 961
※AI花子は戦略にのっとり、最高年収の男を釣り上げている・・・
公務員で受取出来ませんので、お気持ちだけで大丈夫です~