logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[pascal] kalkulator, jak zrealizować wybór działania?

11 Sty 2010 22:54 1839 3
REKLAMA
  • #1 7522356
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • Pomocny post
    #2 7522869
    Mari@@@n
    Poziom 19  
    Posty: 259
    Pomógł: 35
    Ocena: 25
    Sprawa jest prosta składnia if wygląda tak

    if warunek then
    instrukcja_1
    else
    instrukcja_2;

    jeżeli masz więcej instrukcji do wykonania piszesz tak

    if warunek then
    begin
    instrukcja_1;
    instrukcja_2;
    instrukcja_n;
    end;

    po prostu instrukcje mające się wykonać w "if" bierzesz w znaczniki "begin" i "end;"
    kod wygląda tak po poprawieniu
    
    program imitCalc;
    uses crt;
    var
       a:integer;
       funkcja:shortint;
       g:real;
       h:real;
    
    
    begin
    a:=1;
    repeat
    clrscr;
    writeln('Witaj w programie imitCalc 1.0!');
    writeln('Wci~nij odpowiedni przycisk, aby wybra† funkcj©:');
    writeln('1 - Dodawanie');
    writeln('2 - Odejmowanie');
    writeln('3 - Mnoľenie');
    writeln('4 - Dzielenie');
    writeln('5 - O programie');
    writeln('6 - Wyj~cie');
    writeln('Teraz moľna wybra† funkcj©');
    readln(funkcja);
    if funkcja=1 then
    begin
    writeln('Wprowad« pierwszĄ liczb©');
    readln(g);
    writeln('Wprowad« drugĄ liczb©');
    readln(h);
    writeln('Wynik wynosi ',g+h);
    readln;
    end;
    if funkcja=2 then
    begin
    writeln('Wprowad« pierwszĄ liczb©');
    readln(g);
    writeln('Wprowad« drugĄ liczb©');
    readln(h);
    writeln('Wynik wynosi ',g-h);
    readln;
    end;
    if funkcja=3 then
    begin
    writeln('Wprowad« pierwszĄ liczb©');
    readln(g);
    writeln('Wprowad« drugĄ liczb©');
    readln(h);
    writeln('Wynik wynosi ',g*h);
    readln;
    end;
    if funkcja=4 then
    begin
    writeln('Wprowad« pierwszĄ liczb©');
    readln(g);
    writeln('Wprowad« drugĄ liczb©');
    readln(h);
    writeln('Wynik wynosi ',g/h);
    readln;
    end;
    if funkcja=5 then
    begin
    writeln('imitCalc');
    readln;
    end;
    if funkcja=6 then halt
    else writeln('Poda^e~ z^Ą funkcj©');
    readln;
    until a=0;
    end.
    

    poprawione zostały tylko warunki "if" aby nie wykonywały sie jeden za drugim.
  • REKLAMA
  • #3 7522993
    Konto nie istnieje
    Konto nie istnieje  
  • #4 7524179
    urgosik
    Poziom 11  
    Posty: 47
    Pomógł: 1
    Ocena: 3
    polecił bym Ci zaprojektowanie tego programu w procedurach i w instrukcji wyboru(case of) ponieważ jest lepsza, wygodniejsza widoczność
REKLAMA