学習環境
- Surface Go、タイプ カバー、ペン(端末)
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad Pro + Apple Pencil
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
数学読本〈1〉数・式の計算/方程式/不等式 (松坂 和夫(著)、岩波書店)の第4章(大小関係を見る - 不等式)、4.2(不等式の解法)、1次不等式の問8の解答を求めてみる。
ボールの個数を a 個、箱の個数を b 個とおく。
問題の仮定より、
この等式、不等式を満たす正の整数 a、bを求める。
よって、ボールの個数が129個、138個、147個の場合に問題の仮定が成り立つ。
コード
Python 3
#!/usr/bin/env python3 from sympy import pprint, symbols, solve, Rational from sympy.solvers.inequalities import reduce_inequalities print('8.') ball, box = symbols('ball, box', integer=True, positive=True) box_count = solve(9 * box + 30 - ball, box) for box in box_count: print(box.factor()) expr = ball - 12 * (box - 1) pprint(reduce_inequalities(0 < expr) & reduce_inequalities(expr < 12)) for ball in range(128, 156): box = Rational(ball - 30, 9) if box.is_integer: print(f'ボールの個数: {ball}個(箱の個数: {box}個)')
入出力結果(cmd(コマンドプロンプト)、Terminal、Jupyter(IPython))
$ python3 sample8.py 8. (ball - 30)/9 120 < ball ∧ ball < 156 ボールの個数: 129個(箱の個数: 11個) ボールの個数: 138個(箱の個数: 12個) ボールの個数: 147個(箱の個数: 13個) $
0 コメント:
コメントを投稿