Podczas pisania programu w turbo pascalu wyskakuje mi jeden błąd który uniemożliwia skompilować programu i nie wiem gdzie ten błąd występuje w kodzie, oto kod programu:
program kalkulator;
var
x,y,z :char;
begin
writeln('Podaj pierwsza liczbe');
readln(x);
writeln('Podaj kolejną liczbe');
readln(y);
begin
writeln('Wpisz 1 aby dodac liczby 2 aby odjac liczby 3 aby pomnozyc liczby 4 aby podzielic liczby');
readln(z);
case z of
'1': writeln('Wynik dodawania to ',x+y)
'2': writeln('wynik odejmowania to ',x-y)
'3': writeln('Wynik mnożenia to ',x*y)
'4': writeln('Wynik dzielenia to ',x/y)
else writeln('Nie ma takiego polecenia')
end;
readln;
end.
mógłby ktoś znaleźć błąd który uniemożliwia skompilowanie programu?

1

Odpowiedzi

Najlepsza Odpowiedź!
2010-03-03T19:01:27+01:00
Poprawiony kod:
program kalkulator;
var
y,x :integer;
z: char;
begin
writeln('Podaj pierwsza liczbe');
readln(x);
writeln('Podaj kolejną liczbe');
readln(y);
begin
writeln('Wpisz 1 aby dodac liczby 2 aby odjac liczby 3 aby pomnozyc liczby 4 aby podzielic liczby');
readln(z);
case z of
'1': writeln('Wynik dodawania to ',x+y);
'2': writeln('wynik odejmowania to ',x-y);
'3': writeln('Wynik mnożenia to ',x*y);
'4': writeln('Wynik dzielenia to ',x/y);
else writeln('Nie ma takiego polecenia');
end;
end;
readln;
end.

Co do błędów to tak, nie możesz robić działań na zmiennych typu char (x,y) poprawiłem je na integer (zmienna liczbowa), dalej, pod koniec kodu brakowało jednego end; - dopisałem. No i brakowało jeszcze ; (średników) na końcach linijek przy procedurze case. To chyba na tyle, poprawiony kod się kompiluje, sprawdziłem :)