ロジカ式ロゴ

Python
データ分析

ページ一覧に戻る
応用問題3 旅人算
渡辺先生

表・グラフ・連立方程式を使って同じ問題を確かめます。

まず自分で予想してから、コードを動かしてみよう!

そうた

結果だけでなく、そう考えた理由も説明してみます。

ひな

QUESTION まず考えよう

20km離れた2人が向かい合い、時速4kmと6kmで進むと何時間後に出会うでしょう?

PREDICT 実行前の予想

1時間ごとの位置を考え、出会う時刻を予想してください。

TRY 実行して確かめよう

TRY
import matplotlib.pyplot as plt from sympy import symbols, Eq, solve t = symbols('t') meeting = solve(Eq(4*t, 20-6*t), t)[0] print('出会う時刻:', meeting, '時間後') times = [0, 0.5, 1, 1.5, 2] person_a = [4*x for x in times] person_b = [20-6*x for x in times] plt.plot(times, person_a, marker='o', label='A') plt.plot(times, person_b, marker='s', label='B') plt.xlabel('時間') plt.ylabel('出発点Aからの距離 (km)') plt.legend() plt.grid(True) plt.show()
渡辺先生

グラフや数値のどこが予想と同じで、どこが違ったかを見つけましょう。

CHECK 結果を読み取ろう

交点の横軸と縦軸は、それぞれ何を表しますか。

📖 考え方を確認する

横軸2は2時間後、縦軸8はAの出発点から8kmの場所を表します。

CHALLENGE 自分で直してみよう

距離30km、速さが時速5kmと時速7kmの場合に変更してください。

CHALLENGE
from sympy import symbols, Eq, solve t = symbols('t') # 5*t = 30-7*t を解こう

📖 解答例と解説

from sympy import symbols, Eq, solve

t = symbols('t')
meeting = solve(Eq(5*t, 30-7*t), t)[0]
position = 5 * meeting
print('出会う時刻:', meeting, '時間後')
print('Aからの距離:', position, 'km')

2.5時間後、Aから12.5kmの場所で出会います。表・グラフ・式は同じ関係を表しています。

POINT
  •  移動を時間の一次関数で表す
  •  交点は同時刻・同位置を意味する
  •  複数の方法で同じ答えを確かめる

NEXT 次の学びへ

渡辺先生

まとめでは、自分の問いをデータとグラフで説明します。

振り返り:今回使った命令、結果から分かったこと、この方法を使える場面を、それぞれ1文で書きましょう。