Skocz do zawartości

problem z Pascalem


Rekomendowane odpowiedzi

witam :)

napisałam program do szkoły na informatyke w Free Pascalu, tylko że jest pewien problem bo program nie działa. Program nazywa sie Heron i powinien obliczać pole trójkąta, tylko że jak już wpisze 3 boki to nic więcej się nie dzieje i już nie mam żadnego pomysłu co zrobić żeby zadziałał. Dlatego proszę o pomoc. Oto ten program:

 

program Heron;

var

s,p,x,y,z:real;

begin

writeln('podaj pierwszy bok');

readln(x);

writeln('podaj drugi bok');

readln(y);

writeln('podaj trzeci bok');

readln(z);

p:=(x+y+z)/2;

if ((p-x)<=0) and ((p-y)<=0) and ((p-z)<=0) then

begin

s:=sqrt(p*(p-x)*(p-y)*(p-z));

writeln('pole trojkata=',s);

end;

readln();

end.

Edytowane przez Paula
Odnośnik do komentarza
Udostępnij na innych stronach

Jeżeli wpisujesz 3 boki, naciskasz enter i porogram zamisat wypisać wynik zamyka się odrazu?

 

Tak! Są 2 wyjścia:

Po wykonaniu napisaniu kodu naciskasz w menu "Run" to po zakonczeniu działania programu naciśnij "Alt+ F5". Poleceni wywołuje stan ekranu po wykonaniu programu (czy coś takiego). Tam powinienes zobaczyc twój wynik.

Albo wpisz w ostatnia linijke przed end. "readln;" wtedy program powykonaniu wszystkiego co wczesniej mu kazałeś zatrzyma sie i poczeka na nacisnięcie entera poczym zakończy program. Pozwoli ci to zobaczyć wynik.

 

Spróbój obydwu metod :szczerbaty:

 

Nie!

Nie mam pojecia, po wywaleniu się programu powinieneś zobaczyć w kompilatorze jego przyczyne.

Powodzenia!

 

P.S. aph ma racje masz błąd w kodzie, niestety trzeba zapetlić programik bardziej

Jeżeli masz z tym probrem moge ci przesłać gotowy kod.

Edytowane przez Kurak
Odnośnik do komentarza
Udostępnij na innych stronach

program Heron;

var

s,p,x,y,z:real;

begin

writeln('podaj pierwszy bok');

readln(x);

writeln('podaj drugi bok');

readln(y);

writeln('podaj trzeci bok');

readln(z);

p:=(x+y+z)/2;

if ((p-x)>=0) and ((p-y)>=0) and ((p-z)>=0) then

begin

s:=sqrt(p*(p-x)*(p-y)*(p-z));

writeln('pole trojkata=',s);

end;

readln();

end.

 

PS. Jak jest np p-x wieksze od 0 to nie wejdzie do begin, a powinno :), zmien w if'ie < na >

Edytowane przez fomalhaut
Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.