0

わかりました、私は簡単なプログラムを作成して、私が物事をどれだけうまく学んでいるかをテストしようとしています.プログラムにデータをセクション(Day1、Day2 .... ect) そのため、現在の Day カウント (Num_Days = ) を読み取るように割り当てようとしましたが、これは気に入らないようです。私は小さなテスト ループを作成して、これを実行できるかどうかをテストし、ロジックが適切に見えてもスタックしてしまいました。私はいくつかの検索を試みましたが、私が何をしようとしているのかさえわからないので、私はあまり遠くまで行きませんでした. 私がやりたいことは、ループに Num_Days を読み取らせ、Days() にカウントを与え、「n」を介してその日に割り当てることです。

Num_Days = 0
Total = 0
Data = 0
Day1 = 0
Day2 = 0
Day3 = 0
def Start_Work(x):
    while Num_Days < 3:
        Num_Days += 1
        print "This is Day:",Num_Days
        n = Num_Days
        Total = +20
        Day(n) += Total

    else:
        print "failed"

x = str('start')

また、完全な黒でそのように見る方が簡単なので、dpasteを作成しました:http://dpaste.com/1398446/

単独で座っている単一のループを作成しようとしているだけだと考えて何人かの人々を失った場所を明確にするために、これを使用しようとしているものを立てます。このプログラムは、私が望んでいた方法で機能しています。

NumDays = 0
TotalOut = 0
Day1Tot = 0
Day1_RepsCnt = 0
Day4 = 0
def Work_Out(x):
    while x == 1: ##crunches
        NumDays = 0
        TotalOut = 0
        Day1Tot = 0
        Day1_RepsCnt = 0
        Day1_WghtCnt = 0
        Day4 = 0
        while NumDays < 3:
            Day1_Wght = float(raw_input("How much weight did you use?"))
            Day1_Reps = float(raw_input("How many reps did you do?"))
            Day1_Sets = float(raw_input("How many sets were done?"))  

            Day1 = Day1_Wght * Day1_Reps * Day1_Sets
            NumDays += 1
            print "Day:",NumDays
            print "Your total output is:",Day1
            Day1_RepsCnt += Day1_Reps
            Day1_WghtCnt += Day1_Wght
            Day1Tot += Day1
            TotalOut += Day1


        if NumDays == 3:
          print "Your total output for 3 days is:",TotalOut
          print "Lets increase the Weight to",(Day1_Wght + 10)


        print "Increase the Weight for days 4-6"
        while NumDays >= 3 and NumDays <6:
            Day4_Wght = float(raw_input("How much weight did you use?"))
            if Day4_Wght <= (Day1_WghtCnt/3):
                  print "You need to increase your total output, add 10 pounds."
                  break
            Day4_Reps = float(raw_input("How many reps did you do?"))
            Day4_Sets = float(raw_input("How many sets were done?"))

            Day4 += Day4_Wght * Day4_Reps * Day4_Sets
            NumDays += 1
            print "Day:",NumDays

        if Day4_Wght <= (Day1_WghtCnt/3):
          print "Re-enter totals once you have added the additional weight."
        else :
          print "Your total output was:",Day4
    while x == 2: ##Benching
        NumDays = 0
        TotalOut = 0
        Day1Tot = 0
        Day1_RepsCnt = 0
        Day4 = 0
        while NumDays < 3:
            Day1_Wght = float(raw_input("How much weight did you use?"))
            Day1_Reps = float(raw_input("How many reps did you do?"))
            Day1_Sets = float(raw_input("How many sets were done?"))  

            Day1 = Day1_Wght * Day1_Reps * Day1_Sets
            NumDays += 1
            print "Day:",NumDays
            print "Your total output is:",Day1
            Day1_RepsCnt += Day1_Reps
            Day1Tot += Day1
            TotalOut += Day1


        if NumDays == 3:
          print "Your total output for 3 days is:",TotalOut
          print "Lets increase the Reps to",(Day1_Reps + 10)


        print "Increase reps for days 4-6"
        while NumDays >= 3 and NumDays <6:
            Day4_Wght = float(raw_input("How much weight did you use?"))
            Day4_Reps = float(raw_input("How many reps did you do?"))
            if Day4_Reps <= (Day1_RepsCnt/3):
                  print "You need to increase your total output, do 10 more Reps."
                  break
            Day4_Sets = float(raw_input("How many sets were done?"))

            Day4 += Day4_Wght * Day4_Reps * Day4_Sets
            NumDays += 1
            print "Day:",NumDays

        if Day4_Reps <= (Day1_RepsCnt/3):
          print "Re-enter totals once you have completed the additional reps."
        else :
          print "Your total output was:",Day4
print "Available work outs in this version: crunches, benching"        
Input = raw_input("What type of Work Out did you do?")
if Input.lower() ==  str('crunches'):
  Work_Out(1)
if Input.lower() == str('benching'):
  Work_Out(2)
else:
        print "Failed"

はい、これを整理する必要があることは理解していますが、そこに投入したいものや再配置したいものについて他のアイデアがありますが、今はこれを毎週のサイクルに分割する方法を見つけようとしています. 1 週間を 1 日のサイクルに分割することから始め、1 週間を乗り切ることから始めました。2 日間を過ぎようとするだけでは非常に難しいことがわかったので、6 日間ではなく 2 部に分けました。どんなアドバイスでも大歓迎です。

4

3 に答える 3

0

あなたのコードは正しいコードのようには見えませんPython。以下訂正です。

#-------------------
#while (condition):
#    #commands
#-------------------
#for i in xrange(3):
#    #commands
#-------------------
#Examples:
Num_Days = 0
Total = 0
Day = [0,0,0]
while Num_Days<3:
    Num_Days += 1
    print "This is Day:",Num_Days
    Total += 20
    Day[Num_Days-1] += Total
print Day
>>>
This is Day: 1
This is Day: 2
This is Day: 3
[20, 40, 60]

またはより良い使用:

Total = 0
Day = [0,0,0]
n = 3
for i in xrange(n):
    print "This is Day:",i+1
    Total += 20
    Day[i] += Total
print Day    
>>>
This is Day: 1
This is Day: 2
This is Day: 3
[20, 40, 60]
于 2013-09-27T23:59:02.520 に答える