2016-07-17 11 views
-6

だから、基本的に5つの数値の平均を計算するプログラムを作ろうとしています。私はdef関数を呼び出しましたが、何もしません。私はcmdでプロジェクトを実行し、そこに座って別の入力行を作成します。バム、計算なし、何もない。コンパイラが1つを指摘していないので、コードに問題はないようです。自由に批判的で無礼を感じてください。それはすべて私にとって良いことです。そして私は初心者なので、本当のばかげた過ちを犯したかもしれません。 :)私が呼び出したdef関数は実装していません

numberNumber1 = input("Please enter 1st number.") 
numberNumber2 = input("Please enter the 2nd number.") 
numberNumber3 = input("3rd please") 
numberNumber4 = input("4th now") 
numberNumber5 = input("5th finally") 

def mean (operation) : 
operation = (numberNumber1/5 + numberNumber2/5 + numberNumber3/5 + numberNumber4/5 + numberNumber5/5) 
final = "The mean of these 5 numbers is " + operation 
print (final) 
return ; 
+1

機能ブロックが正しくインデントされていることを確認します。 –

+2

このコードは絶対に意味をなさない。 – Idos

+1

あなたは 'mean'関数を__call__しませんでした。パラメータは必要ありませんので、 'def mean():'に変更し、ファイルの最後に 'mean()'を追加してください。 –

答えて

0

まず、インデントが間違っています。 あなたはそれを計算しているので、operationを引数として持つことは望ましくありません。引数はあなたの数値でなければなりません。あるいは、おそらく何もせず、あなたの関数の中に数値入力を入れてください(定義した後に呼び出す必要があります)。最後に、Pythonの;はありません(そして、このreturnステートメントは、問題ではありませんが、必要ありません)。

0
  1. インデントが間違っています。

  2. 実際にこの関数を呼び出すことはありません。

  3. inputは文字列を返すので、数値を浮動小数点数に変換する必要があります。

  4. operationはfloat型であるため、単に連結してfinal文字列を作成することはできません。

あなたのコードは基本的に、このように変更する必要がありますいくつかのエラーは、ここに

numberNumber1 = float(input("Please enter 1st number.")) 
numberNumber2 = float(input("Please enter the 2nd number.")) 
numberNumber3 = float(input("3rd please")) 
numberNumber4 = float(input("4th now")) 
numberNumber5 = float(input("5th finally")) 

def mean(numberNumber1, numberNumber2, numberNumber3, numberNumber4, numberNumber5): 
    operation = (numberNumber1 + numberNumber2 + numberNumber3 + 
       numberNumber4 + numberNumber5)/5 
    final = "The mean of these 5 numbers is {}".format(operation) 
    print(final) 

mean(numberNumber1, numberNumber2, numberNumber3, numberNumber4, numberNumber5) 
+0

あなたのコードは完璧に動作します!ありがとう。 –

0

あります修正です。

numberNumber1 = float(input("Please enter 1st number: ")) 
numberNumber2 = float(input("Please enter the 2nd number: ")) 
numberNumber3 = float(input("3rd please: ")) 
numberNumber4 = float(input("4th now: ")) 
numberNumber5 = float(input("5th finally: ")) 

def mean(numberNumber1 ,numberNumber2,numberNumber3,numberNumber4,numberNumber5): 
    # Parameters are not needed but in case you change variables now this won't break the function 
    mean = numberNumber1 + numberNumber2 + numberNumber3 + numberNumber4 + numberNumber5 
    mean = mean/5 
    print("The mean of these numbers is: " + str(mean)) 

mean(numberNumber1,numberNumber2,numberNumber3,numberNumber4,numberNumber5); 

エラーは以下のとおりです。

  • あなたはPythonが引き起こしそうするように言われずに文字列にint型/ floatを変換することはできません
  • 機能のために不正なインデントが
  • 関数を呼び出したことがありませんエラー
+0

うん、ちょうど実現、恐ろしい刻み目。ありがとう。関数を呼び出して操作後に文字列に変換するのを忘れてしまった。 –

関連する問題