Skocz do zawartości

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

ifanovich

Pascal

Polecane posty

Witam serdecznie. Zaczynam dopiero z Pascalem, jestem na pierwszym roku informatyki i próbuję troszkę kombinować i wymijać szkolny program. Otóż chciałem zrobić prosty program, w którym można wybrać opcję czy chcemy dodać, odjąc czy też podzielić liczby. Nie wiedziałem na jakiej podstawie to zrobić, pokominowałem i takie coś ułożyłem, ale za każdym razem wyskakuje error dotyczący ostatniego "end.". Proszę nie bądźcie źle nastawieni, ale po prostu chce się czegoś dowiedzieć i poznać swój błąd! :)

program prosty_kalkulator;
uses CRT;
var
d1,d2,o1,o2,m1,m2,dz1,dz2,dzialanie,q:real;
PROCEDURE wybor;
begin
clrscr;
REPEAT
writeln('Witam w moim kalkulatorze, możesz wykonać w nim dowolne działanie.');
delay(500);
writeln;
writeln('1 - dodawanie');
delay(250);
writeln('2 - odejmowanie');
delay(250);
writeln('3 - mnożenie');
delay(250);
writeln('4 - dzielenie');
delay(250);
writeln;
writeln('Które wybierasz?');
readln(dzialanie);
if (dzialanie<1) or (dzialanie>4) then
   begin
   writeln('Zła liczba, wpisz ponownie!');
   delay(2000);
   clrscr;
   end;
UNTIL (dzialanie>=1) and (dzialanie<=4);
if dzialanie=1 then

                          begin
                          writeln;
                          writeln('Wpisz 2 dowolne liczby, które chcesz dodać');
                          readln(d1,d2);
                          writeln(d1:10:0,' +', d2:10:0, ' = ',d1+d2:10:1);
                          writeln;
                          writeln('Chciałbyś jeszcze raz coś obliczyć? Jeśli tak, wciśnij 1, wyjście - 0');
                          readln(q);
                          if q=1 then wybor;
                          if q=0 then halt;
                          end
                          ELSE

if dzialanie=2 then
                          begin
                          writeln;
                          writeln('Wpisz 2 dowolne liczby, które chcesz odjąć od siebie');
                          readln(o1,o2);
                          writeln(o1:10:0,' -  ', o2:10:0, '  =  ',o1-o2:10:1);
                          writeln;
                          writeln('Chciałbyś jeszcze raz coś obliczyć? Jeśli tak, wciśnij 1, wyjście - 0');
                          readln(q);
                          if q=1 then wybor;
                          if q=0 then halt;
                          end
                          ELSE
if dzialanie=3 then
                          begin
                          writeln;
                          writeln('Wpisz 2 dowolne liczby, które chcesz pomnożyć');
                          readln(m1,m2);
                          writeln(m1:10:0,' * ', m2:10:0, '  =  ',m1*m2:10:1);
                          writeln;
                          writeln('Chciałbyś jeszcze raz coś obliczyć? Jeśli tak, wciśnij 1, wyjście - 0');
                          readln(q);
                          if q=1 then wybor;
                          if q=0 then halt;
                          end
                          ELSE
if dzialanie=4 then
                          begin
                          writeln;
                          writeln('Wpisz 2 dowolne liczby, które chcesz podzielić');
                          readln(dz1,dz2);
                          writeln(dz1:10:0,' / ', dz2:10:0, '  =  ',dz1/dz2:10:1);
                          writeln;
                          writeln('Chciałbyś jeszcze raz coś obliczyć? Jeśli tak, wciśnij 1, wyjście - 0');
                          readln(q);
                          if q=1 then wybor;
                          if q=0 then halt;
                          end;
readln;
end.

Link do komentarza
Udostępnij na innych stronach

Chodzi o to, ze zdefiniowałeś samą procedurę wybor, a nie napisałeś głównej części programu, tzn. tego co ten program ma robić po uruchomieniu (bo skąd ma wiedzieć, że chcesz wybor?).

Zamień końcowe end. na end;, a poniżej dopisz:

begin
wybor;
end.

Link do komentarza
Udostępnij na innych stronach



  • Kto przegląda   0 użytkowników

    • Brak zalogowanych użytkowników przeglądających tę stronę.
×
×
  • Utwórz nowe...