Wo ist der Fehler? :-( |
01.05.2013, 11:01 | Auf diesen Beitrag antworten » | |||||
Markus | Wo ist der Fehler? :-( Meine Frage: Hi! Ich soll ein Programm schreiben welches die Nullstelle(n) von für vom Nutzer eingegebene angibt, falls existent. Hier mein Quellcode: Meine Ideen: Zum einen versteh ich nicht, warum Code::Blocks in Zeile 22 eine ';' vor 'printf' erwartet... Zum anderen, wenn ich z.B. , eingebe, kommt in der Konsole ein abstruses Ergebnis... Hat jemand von euch Zeit mir zu helfen? |
|||||
|
||||||
01.05.2013, 11:03 | Auf diesen Beitrag antworten » | |||||
Markus | RE: Wo ist der Fehler? :-( Edit: Es geht um Programmiersprache C |
|||||
01.05.2013, 11:22 | Auf diesen Beitrag antworten » | |||||
eulerscheZahl | Du hast folgende Fehler: Zeile 21: else if Zeile 6: du verwendest a und b zum Berechnen von Dis, ohne a und b vorher eingelesen zu haben Zeile 19: " in printf an der falschen Stelle, führt bei mir zur Ausgabe Einzige Nullstelle bei 0.0000000 , -a/(2.) |
|||||
01.05.2013, 11:32 | Auf diesen Beitrag antworten » | |||||
Markus | Tausend Dank! Es klappt denke ich Eigentlich komisch: In unserem Skript steht, wenn man so eine Fallunterscheidung in 2 Fälle hat macht man: if(...) ...; else(...) ...; Und wenn es n Fälle sind soll man das machen: if(...) ...; (n-2) mal else if(...) ...; else(...) ...; Also wenn es mehr als 2 Fälle sind immer zunächst "if" und dann den Rest nur "else if"? |
|||||
Anzeige | ||||||
|
||||||
01.05.2013, 11:46 | Auf diesen Beitrag antworten » | |||||
eulerscheZahl | Aber dann muss die Bedingung bei else ganz weg:
Wenn du alles mit else if machst, kann es je nach Wahl der Bedingungen sein, dass gar nichts ausgeführt wird. |
|||||
01.05.2013, 12:23 | Auf diesen Beitrag antworten » | |||||
Markus | Achso danke. Hmm. Wenn ich das hier sehe:
Bedeutet dann "else if" soviel wie "und wenn" / "und falls"? Warum darf ich nach else dann keine Bedingung schreiben? Weiß der Compiler etwa automatisch, was der andere Fall ist? Kann er sich das zusammenreimen? Wie mache ich es dann, wenn ich 3 Fälle zu unterscheiden haben (von denen ein Fall z.B. 2 Bedingungen hat)? Gruß |
|||||
01.05.2013, 12:32 | Auf diesen Beitrag antworten » | |||||
eulerscheZahl | else heißt soviel wie "sonst", das heißt, wenn das if nicht erfüllt ist, springt das Programm direkt zum else. else if heißt "sonst wenn", hier braucht man dann wieder eine Bedingung (wenn was erfüllt ist). 1 Fall mit zwei Bedingungen: du kannst die Bedingungen zu einer verbinden: bed1 && bed2 //&& heißt und, das heißt beide Bedingungen müssen erfüllt sein bed1 || bed2 //|| heißt oder, es reicht, wenn eine Bedingung erfüllt ist Bsp.:
|
|||||
01.05.2013, 12:36 | Auf diesen Beitrag antworten » | |||||
Markus | Wow. Eine Antwort, die ich auf Anhieb verstehe zusammen mit einem anschaulichen und viel sagenden Beispiel. Vielen Dank dafür! Gruß! |
|
Verwandte Themen
Die Beliebtesten » |
|
Die Größten » |
Die Neuesten » |
|