Otóż dopiero się uczę pisać w pascalu ; ) Z góry przepraszam jeśli zaśmiecam forum, lecz wolę wiedzieć dlaczego tak jest, a nie inaczej.
Otóż chodzi o to:
Aplikacja oblicza pole 3 figur, które zaprogramowałem.
Podaję ID figury, wprowadzam dane i wyświetla się wynik, aczkolwiek podany wynik nie ignoruje "kropki" oraz wygląda to tak: 1.50000000+E00 (powinno wyjść w wyniku TYLKO 15.)
A więc, po co te zera i "E" i dlaczego kropka "nie przesuwa" się ?
Czy mogę jakoś zmodyfikować kod, aby było, tak jak być powinno ? : ))
program Figury;
var
figura: integer;
z1,z2,z3,pole: real;
BEGIN
writeln('Podaj rodzaj figury');
writeln('1 kwadrat, 2 - trojkat, 3 - trapez');
read(figura);
case figura of
1: begin
writeln('Podaj bok kwadratu');
read(z1);
pole :=z1 * z1;
writeln('Pole kwadratu wonosi: ',pole)
end;
2: begin
writeln('Podaj podstawe i wysokosc');
read(z1,z2);
pole := (z1 * z2)/2;
writeln('Pole trojkata wynosi: ', pole)
end;
3: begin
writeln('Podaj podstawy i wysokosc trapezu');
read(z1,z2,z3);
pole := ((z1 + z2)/2) / z3;
writeln('Pole trapezu wynosi: ', pole)
end;
else
writeln('Blad danych')
end;
readln;
readln;
END.
PS: Uczę się z książki Nauka Programowania Dla Początkujących Turbo Pascal (Anna Struzińska-Walczak & Krzysztof
Walczak).