4

方程式を使用し、「総走行距離」、「速度」、「ドライバー名」、および「スポンサー」属性を持つodometer_miles = odometer_miles + speed * timeクラスを呼び出して、レースの勝者を決定する Python プログラムを作成する必要があります。Car

speed変数は、毎分ランダムに生成される 0 ~ 120 (mph) の数値です。その後、方程式が再度実行され、odometer_miles変数が更新されます。

odometer_miles変数が 500 (または 500 より大きい最も近い値) マイルに達すると、レースは終了し、(20 人のグループのうち) 500 に達したレーサーが勝者と宣言されます。勝者が決まると、プログラムは「ドライバー名」と「スポンサー」を出力する必要があります。

クラスは適切に作成されたと思いますが、プログラムの残りの部分は私の能力をはるかに超えています。私の教科書は役に立たないわけではなく、教授に連絡する方法もありません。私は過去数時間を無駄に理解しようとしました。

これは私がこれまでに持っているものです:

class Car:
    def __init__(self, odo_miles, speed, driver, sponsor):
        self.odo_miles = odo_miles
        self.speed = speed
        self.driver = driver
        self.sponsor = sponsor

誰かが 2 人のレーサー、または必要な 20 人のレーサー全員を埋めるのに十分な数のレーサーでそれを行う方法を教えてくれたら、私は永遠に感謝します.

手伝ってくれてどうもありがとう!

4

1 に答える 1

0

この車のクラスには、必要なものがすべて含まれている必要があります。レーサーをインクリメントする順序が重要になることに注意してください。とにかく、ここから車のリスト/セットを作成し、それをループして、勝者が得られるまで各車に updateMinute() を適用します。updateMinute() が True を返したらループから抜け出し、現在更新している車を使用してドライバーとスポンサーを見つけることができます。

import random
class Car:

    def __init__(self, odo_miles, speed, driver, sponsor):
        self.odo_miles = odo_miles
        self.speed = speed
        self.driver = driver
        self.sponsor = sponsor

    def updateMinute():
        self.odo_miles += speed              #I'm updating the distance before newSpeed
                                             #So that the original speed passed in is used
        if self.odo_miles > 500:
            return True
        self.speed = random.randrange(120)
        return False

リストを実行するには:

while True:
    for c in cars:
        finished = c.updateMinute()
        if finished:
            print_relevant_stuff()
            return
于 2013-06-08T18:41:56.020 に答える