2017-04-01 3 views
-1

Dieser Code wurde über Atom ausgeführt.Warum kann ich es nicht sofort eingeben und ausgeben?

Warum kann ich es nicht einmal eingeben und dann ausgeben?

Sobald die gewünschte Temperatur eingegeben ist, sollte die umgerechnete Temperatur ausgegeben werden.

Bedingungen: Drei Funktionen halten, ist eine Hauptfunktion Mit drei Funktionen

def main(): 
    print("This program converts Celsius into fahrenheit.") 
    print("============================") 
    # ===Modify codes below================= 
    celsius_value = input_celsius_value() 
    fahrenheit_value = convert_celsius_fahrenheit(celsius_value) 
    print_fahrenheit_value(celsius_value, fahrenheit_value) 
    print("===========================") 
    print("Program has ended.") 

def input_celsius_value(): 
    celsius_value = float(input("Enter desired temperature to convert.: ")) 
    return celsius_value 

def convert_celsius_fahrenheit(fahrenheit_value): 
    celsius_value = float(input()) 
    fahrenheit_value = ((9/5) * float(celsius_value)) + 32 
    return fahrenheit_value 

def print_fahrenheit_value(celsius_value, fahrenheit_value): 
    celsius_value = input_celsius_value() 
    fahrenheit_value = convert_celsius_fahrenheit(fahrenheit_value) 
    print("Centigrade temperature :", celsius_value) 
    print("fahrenheit temperature :", fahrenheit_value) 
    return print_fahrenheit_value 

if __name__ == '__main__': 
    main() 

Antwort

0

In Ihrem convert_celsius_fahrenheit Methode Sie Benutzereingabe für celsius Wert wieder einnehmen, die nicht, wie Sie bereits die Benutzereingabe in input_celsius_value Verfahren genommen haben erforderlich ist und gespeichert haben der angegebene Wert in celsius_value Variable in main Methode dabei celsius_value = input_celsius_value() tun.

Ähnlich in Ihrer print_fahrenheit_value Methode rufen Sie input_celsius_value Methode und convert_celsius_fahrenheit, die wieder eine Benutzereingabe für Celsius-Wert nehmen.

Also in allem, nehmen Sie Benutzereingaben viermal und machen Celsius nach Fahrenheit Umwandlung zweimal.

Darüber hinaus sollte Ihre convert_celsius_fahrenheit Methode Celsius-Wert als Argument nehmen.

Ihre convert_celsius_fahrenheit und print_fahrenheit_value Methoden, um etwas ändern wie folgt aus:

def convert_celsius_fahrenheit(celsius_value): 
    return 9/5 * celsius_value + 32 

def print_fahrenheit_value(celsius_value, fahrenheit_value): 
    print("Centigrade temperature :", celsius_value) 
    print("fahrenheit temperature :", fahrenheit_value) 
+0

Danke, dass Sie mir eine Lösung geben. Ich fühle mich jetzt viel besser. –

0

In Ihrer print_fahrenheit_values Funktion ausführen können, haben Sie die beiden anderen Funktionen ein zweites Mal aufgerufen. Sobald eine Variable returned ist, müssen Sie die Funktion nicht erneut aufrufen.

Dies ist, was der Code sein sollte:

def print_fahrenheit_value(celsius_value, fahrenheit_value): 
    # you have the variables already ^^^^^^^^^^^ 

    print("Centigrade temperature :", celsius_value) 

    print("fahrenheit temperature :", fahrenheit_value) 

    return print_fahrenheit_value 
+0

Es resolved.Thank Sie gewesen! –

+0

Kein Problem, froh, ich könnte helfen :) –

+1

@HoldenNowell, wenn es gelöst wurde, bitte markieren Sie die richtige Antwort mit dem Kontrollkästchen auf der linken Seite. –

Verwandte Themen