質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

1372閲覧

Pythonで素因数分解を学習するためのゲームを作りたい

massuu

総合スコア6

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2021/11/27 08:40

こんにちは。

私はRPGを用いた数学学習ゲームを作成しています。

テキスト入力欄を作るところまでは作ることができました。

1.素因数分解の問題を作る
2.素因数分解の問題を画面に表示する
3.入力されたものと答えが一致するかを判定する

どれか一つでもよいので、教えていただけると幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

素因数分解の問題は、素数の積である整数を与えて、"素因数分解せよ"と問えば良い。どのような素数の積にするかで、難易度が変わります。

回答者が、素因数分解可能な数の持つ性質についての知識("1の桁の数が偶数なら2で割り切れる"、"1の桁の数が0か5なら5で割り切れる"、各桁の数の総和が9で割り切れたら9で割り切れる、各桁の数の総和が3で割り切れたら3で割り切れる、等々)や、1桁の素数(2,3,5,7)や20以下の素数(11,13,17,19)を暗記しているか否かで難易度が変わります。
整数の割り算の計算速度も難易度に直結してきます。(解放が判っていても、時間切れで答えが出ない生徒が想定されます)

こうしたことを考慮した上で、どのような生徒を対象に、どの程度の難易度の問題とするかを決めるのが良いと思われます。

投稿2021/11/27 11:02

coco_bauer

総合スコア6915

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

以下のような感じです。

python

1import random 2 3primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] 4 5factors = [] 6for j in random.sample(primes, random.randint(2,5)): 7 factors.append([j, random.randint(1,3)]) 8 9P = 1 10for p, e in factors: 11 P *= p**e 12 13print(f'質問: {P}を素因数分解してください') 14print(f'正解:{P}を素因数分解すると',' * '.join([f'{p}**{e}' for p, e in factors]), 'です')

実行結果の例

python

1>>> print(f'質問: {P}を素因数分解してください') 2質問: 1455475257271を素因数分解してください 3>>> print(f'正解:{P}を素因数分解すると',' * '.join([f'{p}**{e}' for p, e in factors]), 'です') 4正解:1455475257271を素因数分解すると 53**2 * 43**3 * 7**3 * 19**1 です

投稿2021/11/27 09:17

ppaul

総合スコア24666

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問