panic220 - So 04.12.11 05:32
Titel: IF Abfrage?
Ich habe Probleme mit einer If abfrage es soll abgefragt werden über if was man bei eine geometrichen figur ausrechnen will oberfläche oder volumen und dann soll es berechnet werden mein Problem ist, das die Zeilen von oben nach unten abklappert werden und die if Auswahl nicht in kraft tritt jedes mal rechnet er if auswahl2 = 1 then und dann =2
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45:
| program Project1;
{$APPTYPE CONSOLE}
var auswahl1,wert1, wert2, ergebnis :integer; CONST PI=3;
begin
Writeln ('Test'); readln (auswahl1);
begin if auswahl2 = 1 then writeln ('Sie haben sich fuer die Oberflaeche entschieden '); writeln ('Bitte geben sie die folgenden geometrichen Variablen an '); write ('Radius (r): '); readln (wert1); write ('Koerperhoehe (h): '); readln (wert2);
ergebnis := (wert1*wert1*PI)*(2*wert1*PI)*wert2; writeln ('Die Oberflaeche des Zylinders betraegt: ',ergebnis);
if auswahl2 = 2 then writeln ('Sie haben sich fuer das Volumen entschieden '); writeln ('Bitte geben sie die folgenden geometrichen Variablen an '); write ('Radius (r): '); readln (wert1); write ('Koerperhoehe (h): '); readln (wert2);
ergebnis := (wert1*wert1*PI)* wert2; writeln ('Das Volumen des Zylinders betraegt: ',ergebnis);
end;
readln; end. |
Was mache ich Falsch?!
Moderiert von
Martok: Delphi-Tags hinzugefügtModeriert von
Martok: Topic aus Sonstiges (Delphi) verschoben am So 04.12.2011 um 05:55
Tilo - So 04.12.11 06:17
Einen schönen 2. Advent panic220,
Du hast vergessen Begin und end zu nutzen. Ohne diese beiden Schlüsselwörter wird nur die erste Zeile nach dem then ausgeführt.
Als zweites fällt auf, dass Du eine Eingabe in "auswahl1" speicherst aber "auswahl2" abfragst. Dies muss angepasst werden.
Da Auswahl1 aus readln() kommt nehme ich an, dass es eine Textvariable ist.
Diese muss noch in auswahl2 übertragen werden.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48:
| program Project1;
{$APPTYPE CONSOLE}
var auswahl1,wert1, wert2, ergebnis :integer; CONST PI=3;
begin
Writeln ('Test'); readln (auswahl1);
begin auswahl2:=strtoint(auswahl1) if auswahl2 = 1 then begin writeln ('Sie haben sich fuer die Oberflaeche entschieden '); writeln ('Bitte geben sie die folgenden geometrichen Variablen an '); write ('Radius (r): '); readln (wert1); write ('Koerperhoehe (h): '); readln (wert2);
ergebnis := (wert1*wert1*PI)*(2*wert1*PI)*wert2; writeln ('Die Oberflaeche des Zylinders betraegt: ',ergebnis); end;
if auswahl2 = 2 then begin writeln ('Sie haben sich fuer das Volumen entschieden '); writeln ('Bitte geben sie die folgenden geometrichen Variablen an '); write ('Radius (r): '); readln (wert1); write ('Koerperhoehe (h): '); readln (wert2);
ergebnis := (wert1*wert1*PI)* wert2; writeln ('Das Volumen des Zylinders betraegt: ',ergebnis); end;
end;
readln; end. |
MFG Tilo