2017-10-25 11 views
0

ユーザーが数値の平均値を出力するPythonプログラムを書く必要があります。これは以下のコードで成功しました。しかし、コードでは、ユーザーが入力したグループ番号と文字数も出力する必要があります。これが私が立ち往生している部分です。たとえば、出力は次のようになります。ユーザーのグループの平均を出力するPythonプログラムを書く

グループ1には平均4.98の5つの数字があります。

グループ2は平均97.81827365

グループ3は、平均5983.19283

私もループや番兵と私はそれを終了するかどうかはわかりませんしながら、使用する必要があります13番号を持っていることを27個の数字を持っています。どんなアドバイスや支援も大変ありがとうございます。ありがとう。

data = [] 
sum = 0 
numberOfSentinels = 0 
while numberOfSentinels < 2: 
    number = int(input("Enter a data value or -1 twice to quit: ")) 
    if number != -1: 
     data.append(number) 
     sum += number 
     numberOfSentinels = 0 
    else: 
     if numberOfSentinels == 1: 
      break 
     else: 
      numberOfSentinels = 1 
      print(data, "The average is ", sum/len(data)) 
      data = [] 
      sum = 0 

答えて

0
data = [] 
numberOfSentinels = 0 
group = 1 
while numberOfSentinels < 2: 
    number = int(input("Enter a data value or -1 twice to quit: ")) 
    if number != -1: 
     data.append(number) 
    else: 
     numberOfSentinels += 1 
     if numberOfSentinels == 2: 
      length = len(data) 
      avg = sum(data)/length 
      print("Group %d has %d numbers that average %s" % (group,length, str(avg))) 
      group += 1 
      data = [] 
      break 
+0

おかげで、今のプログラムは入っ-1倍した後、一つのグループの平均を計算し、それを停止します。複数のグループを実行できる必要があります。それは難しい部分です。 –

+0

あなたはプログラム全体から抜け出したいと思っています。それが何であるか教えてくれれば、プログラムを微調整して期待どおりに動作させることができます。 –

+0

ユーザが-1を2回入力すると、プログラムは終了する必要があります。 -1が私たちのセンチネル値です。それ以外の場合は、プログラムを続行する必要があります。 –

関連する問題