Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#3

Re: Pascal-Rechenprogramm: Fussschleife

  Alt 31. Mai 2009, 13:13
Zitat von FreePascal:
Das habe ich bereits programmiert:
Und das funktioniert so?

da fehlen mir ein paar ENDs drin

Zitat von FreePascal:
Wäre nett, wenn mir das bitte jemand sagen könnte, wie und wohin die fusschleife da reingehört
Es kommt drauf an, was die wiederholen willst
und um diesen Teil drumrum kommt dann die Schleife.

z.B.:
Delphi-Quellcode:
program fussschleife;
uses crt;
var name:string;
         Zahl1,Zahl2,summe,diff,prod,ergebnis:longint;
         quo:real;
         auswahl:char;


begin

clrscr;

writeln('Hallo, lieber Benutzer, bitte gib deinen Vornamen ein');
readln(name);
writeln('Herzlich willkommen, lieber ',name,'!');
writeln('dieses Programm beherrscht alle 4 Grundrechnungsarten!');
repeat // <<<<<<<<<<<<<<<<
    writeln('Für Addition A drücken, für Subtrakion S drücken, für Multiplikation M '
        + 'drücken, für Division D und E für Ende drücken!');


    readln(auswahl);
    auswahl:=UPCASE(auswahl);
    IF (auswahl='A') OR (auswahl='S') OR (auswahl='M') OR (auswahl='D')
    THEN
         begin
              writeln('Bitte gib die erste Zahl ein!');
              readln(Zahl1);
              writeln('Bitte gib jezt die zweite Zahl ein!');
              readln(Zahl2);
              CASE auswahl OF
                   'A':begin
                        summe=:Zahl1+Zahl2;
                        writeln('Die sUmme beträgt ',summe,'!');
                    end; // <<<<<<<<<<<<<<<<
                    'S':begin
                        diff=:Zahl1-Zahl2;
                        writeln('Die Differenz beträgt ',diff,'!');
                    end; // <<<<<<<<<<<<<<<<
                    'M':begin
                        prod=:Zahl1*Zahl2;
                        writeln('Das Produkt beträgt ',prod,'!');
                    end; // <<<<<<<<<<<<<<<<
                    'D':begin
                        quo=:Zahl1/Zahl2;
                        writeln('Der Quotient beträgt ',quo:10:2,'!');
                    end;
              end;
    end
    ELSE
    IF auswahl<>'E'
    THEN
        writeln('Falsche Eingabe! Programmabbruch!');
    writeln('');
until (auswahl<>'A') AND (auswahl<>'S') AND (auswahl<>'M') AND (auswahl<>'D');
end.
oder
Delphi-Quellcode:
...
    end
    ELSE
    IF auswahl<>'E'
    THEN
        writeln('Falsche Eingabe!');
    writeln('');
until auswahl='E';
end.
aber ich muß sagen, daß du an deiner Einrückung nochetwas arbeiten/verbessern mußt ... so erkennt man kaum, was wo wie zusammenhängt und wo es weitergeht...

[edit] ok, das mit den [delphi]-Tags hätt ich jetzt umsonst geschrieben ... böser mkinzler das einfach so zu machen
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat