Program na informatykę - problem z pętlami.

Program na informatykę - problem z pętlami.
M2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

Mam problem. Musze napisać program w Pascalu na informatykę. Od tego zależy jaką będę miał ocenę na koniec roku. Postanowiłem że napisze program do obliczania miejsc zerowych funkcji kwadratowej. Mam już tyle:

Kopiuj
var
a,b,c,delta,x1,x2:real;

begin
   writeln('Podaj wspolczynniki funkcji ax^2+bx+c');
   write('a: ');
   readln(a);
   write('b: ');
   readln(b);
   write('c: ');
   readln©;

   delta := b*b - 4*a*c;

   if delta < 0 then
     writeln('delta mniejsza od 0. Brak pierwiastkow')
   else
     if delta = 0 then
     begin
       x1 := -b/(2*a);
       writeln('delta rowna 0. Pierwiastek ', x1:0:4);
     end
     else
     begin
       x1 := (-b - sqrt(delta))/(2*a);
       x2 := (-b + sqrt(delta))/(2*a);
       writeln('delta rowna ', delta:0:4);
       writeln('pierwistki:');
       writeln('x1=', x1:0:4);
       writeln('x2=', x2:0:4);
     end;

   readln;
end.

Musze to jeszcze zapętlić ale nie wiem jak. Chciałbym żeby po obliczeniu miejsc zerowych program się nie zamykał ale znowu prosił o podanie a,b,c i obliczał miejsca zerowe. Chciałbym jeszcze by zamykał się np. przez wciśnięcie klawisza "E". Czy to da się zrobić. Jeśli tak to proszę o szybką pomoc i jeśli to możliwe edytowanie kodu który już napisałem....

madmike
  • Rejestracja: dni
  • Ostatnio: dni
0

Déjà vu? http://4programmers.net/Forum/Newbie/218288-program_do_delty?p=955835#id955835 (tam też początkowo był z quote)...

M2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

Ale tam chyba mu się coś pomyliło bo dał C++ a to jest Pascal. Ja miałem tylko z tego jedna lekcje i kazał nam program zrobić i tyle to mam sam bo matmę jakoś ogarniam ale nie wiem jak zrobić pętle. Próbowałem ale cały czas jakiś error mam...

AN
  • Rejestracja: dni
  • Ostatnio: dni
0

Nie wiesz, jak się robi pętlę w Pascalu, czy masz problem z kompilatorem, który pokazuje błędy mimo prawidłowej składniowo pętli?

http://4programmers.net/Delphi/Sk%C5%82adnia_j%C4%99zyka/P%C4%99tle

olesio
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Szczecin
  • Postów: 4191
0

Poczytaj: http://4programmers.net/Delphi/Składnia_języka/Pętle - a temat przenoszę do Newbie, bo dotyczy z tego co widzę absolutnych podstaw języka. Na przyszłośc tam umieszczaj takie pytania. I skoro była tylko jedna lekcja Pascala, to może uczysz się zaocznie i trzeba poświęcić czas na nauczenie się podstaw języka. Chociaż sam się uczyłem w studium, gdzie ważniejsze było dla właścicieli płacenie czesnego na czas niż dobre przekazanie nam wiedzy. Jednak mimo to, nie uwierzę nikomu w głupie bajki w stylu "Nam nauczyciel nic nie tłumaczył, a tutaj nagle mam zadanie do zrobienia, pomocy!" :/

M2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

Ok. poczytałem to ale nie mam pojęcia gdzie w kodzie pętlę wstawić...

M2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 4
0

No niestety nie działa. Nie mam pojęcia dlaczego. Może ktoś ułożyć jakąś zależność bo nie wiem jak to zrobić....debil ze mnie jakiś chyba

RI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 9
2
Kopiuj
program lab;
uses crt,dos;

var
a,b,c,delta,x1,x2:real;

begin
repeat
   writeln('Podaj wspolczynniki funkcji ax^2+bx+c');
   write('a: ');
   readln(a);
   write('b: ');
   readln(b);
   write('c: ');
   readln(c);

   delta := b*b - 4*a*c;

   if delta < 0 then
     writeln('delta mniejsza od 0. Brak pierwiastkow')
   else
     if delta = 0 then
     begin
       x1 := -b/(2*a);
       writeln('delta rowna 0. Pierwiastek ', x1:0:4);
     end
     else
     begin
       x1 := (-b - sqrt(delta))/(2*a);
       x2 := (-b + sqrt(delta))/(2*a);
       writeln('delta rowna ', delta:0:4);
       writeln('pierwistki:');
       writeln('x1=', x1:0:4);
       writeln('x2=', x2:0:4);
     end;
   until ReadKey='e';
end .

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.