1

わかりましたので、2台の車が特定の速度で互いに離れて速度を上げているときに車の時間を見つけることができるプログラムを作成しようとしています。しかし、次のような問題を行うには、未解決の変数を含む式が必要です。

Car1 は時速 20 マイルで進んでいます。Car2 は Car1 より 10mph 速く進んでいます。Car2 は Car1 より 1 時間遅れて出発しました。Car2 が Car1 に追いつくのにどれくらいの時間がかかりますか?

そして、プログラムなしで私の仕事:

t = Travel time total (in hours)

10*t = 20(t-1) # Note the 1 is for the 1 hour

# rearrange
10*t = 20*t - 20

# subtract 10*t from both sizes
0 = 10*t - 20

# add 20 to both sides
20 = 10*t

#divide both sizes by 10
2 = t

分配特性を使用して未定義変数の操作をサポートするモジュール (つまり、このような方程式を解くことができるモジュール) はありますか?

そうでない場合は、モジュールなしで未確認の変数を使用する方法の小さな例を教えてください。私はちょうど学校でこれを調べました。

4

2 に答える 2

6

探しているモジュールはSymPyと呼ばれます。

import sympy
t = sympy.Symbol('t') # set t as a variable/symbol
sympy.solve(sympy.Eq(10*t, 20*(t-1)), t) # which reads: solve the equation 10*t == 20*(t-1) for t.
# returns [2] (list of solutions to the equation)

( SymPy を使用するいくつかの簡単な例を参照してください)。

于 2012-10-11T11:56:01.543 に答える
1

これは、あなたの望むことですか?

def get_time(v1, v2, dt):
    t = (v2*dt)/(v2 - v1)
    return t

次に、car1、car2、およびオフセットの速度で関数を呼び出すと、必要な時間が返されます。

于 2012-10-11T12:54:07.790 に答える