Seite 1 von 2
Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 10:09
von Doom
Code: Alles auswählen
print ("Geben Sie die erste Kathetenlänge ein:")
z = input()
print ("Geben Sie die zweite Kathetenlänge ein:")
u = input()
o = z*z + u*u
i = o ** 0.5
print ("Die Diagonale hat folgende Länge:",i)
input()
Wie man sicherlich am Code sehen kann, bin ich ein blutiger Anfänger. Dieses Programm sollte eig die Diagonale ausrechnen.
In der Schule hatten wir folgenden Code (in Mathematik):
d = a^a + b^b
d^d = Wurzel von a^a + b^b
so ich habe das mal bei meinem Programm mit zwischenschritten gemacht. Doch iwie geht das nicht. ich weiß auch nicht wieso.
Habt ihr die Lösung?
Mit freundlichen Grüßen
Doom
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 10:20
von jbs
Wenn das Python 3 ist, musst du die Eingabe in den entsprechenden Typ umwandeln.
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:09
von numerix
Und du solltest dir gleich angewöhnen, für deine Bezeichner (Variablen) aussagekräftige Namen zu verwenden.
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:42
von Doom
Ich danke euch, doch mit dem Unwandeln habe ich keine Idee was ich da machen muss mit dem Code. Ich habe gerademal 50 Seiten gelesen also mit dem Float kam dran. Ich weiß leider nicht, wie ich das machen soll =/
Mit freundlichen Grüßen
Doom
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:43
von noisefloor
Hallo,
also unter Python 2.6 kommt das richtige Ergebnis raus.
Gruß, noisefloor
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:44
von noisefloor
Hallo,
Ich danke euch, doch mit dem Unwandeln habe ich keine Idee was ich da machen muss mit dem Code.
Na, halt genau so wie jbs es schreibt.
Gruß, noisefloor
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:45
von Doom
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:46
von Doom
Aber wo muss ich das einfügen?
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:48
von alpha
dann musst du aber die letzte Zeile abändern
sehe gerade.. ist ja kein + dazwischen.. also kein Zusammenhängen von Strings.. dann brauchst wohl doch
keine Typenwandlung
Gruß
alpha
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:49
von Doom
Achso.......
Sorry wusste jetz nicht wie das gemeint war.
Wie gesagt bin halt ein blutiger Anfänger
Danke

Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:51
von Doom
Jetzt muss ich aber nochmal blöd fragen:
Was bedeutet
in den Klammern?
Und wieso jetzt das umändern? Was bedeutet daS?
Jetzt bin ich ganz verwirrt nach dem 2 mal ändern von alpha!
Erklärung bitte

Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 11:53
von alpha
Probiers aus

Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 14:07
von Py-Prog
Doom hat geschrieben:Code: Alles auswählen
print ("Geben Sie die erste Kathetenlänge ein:")
z = input()
print ("Geben Sie die zweite Kathetenlänge ein:")
u = input()
o = z*z + u*u
i = o ** 0.5
print ("Die Diagonale hat folgende Länge:",i)
input()
Wieso nicht in einer zeile?
Code: Alles auswählen
z=input(float("Geben Sie die erste Kathetenlänge ein:"))
u=input(float("Geben Sie die zweite Kathetenlänge ein:"))
o = z*z + u*u
i = o ** 0.5
print ("Die Diagonale hat folgende Länge:",i)
input()
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 14:24
von BlackJack
@Py-Prog: Das geht wohl so nicht:
Code: Alles auswählen
In [547]: float("Geben Sie die erste Kathetenlänge ein:")
---------------------------------------------------------------------------
<type 'exceptions.ValueError'> Traceback (most recent call last)
/home/bj/<ipython console> in <module>()
<type 'exceptions.ValueError'>: invalid literal for float(): Geben Sie die erste Kathetenlänge ein:
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 19:50
von noisefloor
Hallo,
@Doom: Das '>' ist das Prompt, dass in der Zeile ausgegeben wird, in der dann auf die Eingabe gewartet wird. Kannst auch einen anderen String nehmen, aber > ist halt das, was man zumindest auf vielen Linux / Unix Systemen findet -> vertraute Umgebung.
Gruß, noisefloor
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 19:55
von DasIch
Es heisst Hypothenuse nicht Diagonale, da gibt es einen wesentlichen Unterschied.
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Mittwoch 8. September 2010, 20:26
von numerix
DasIch hat geschrieben:Es heisst Hypothenuse nicht Diagonale, da gibt es einen wesentlichen Unterschied.
Dann aber wenigstens auch Hypo
tenuse ...
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Donnerstag 9. September 2010, 06:28
von noisefloor
Hallo,
@DasIch: IMHO geht es um ein Rechteck - und dann heißt es Diagonale.
Gruß, noisefloor
Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Donnerstag 9. September 2010, 08:24
von BlackJack
@noisefloor: Bei einem Rechteck heisst es aber nicht erste und zweite Kathetenlänge.

Re: Mein Programm will einfach nicht fujnktionieren
Verfasst: Donnerstag 9. September 2010, 10:51
von DasIch
noisefloor hat geschrieben:@DasIch: IMHO geht es um ein Rechteck - und dann heißt es Diagonale.

Dann würde man aber auch von Kanten sprechen.