program do delty

0

Muszę napisać program do obliczani delty ale zupełnie nie wiem jak...pomoże ktoś?

0

A z czym masz problem (konkretnie)?

0

Najpierw musisz wybrać jakiś język programowania np. Brainfunk albo Asembler... Potem już jakoś pójdzie

0

Mam problem z tym żeby program powtarzał się a nie zamykał bo obliczeniu miejsc zerowych funkcji kwadratowej i nie wiem też jak zrobić by zamknąć go np. za pomocą wciśnięcia "T"

program miejsca_zerowe;
uses
  Crt;

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

  repeat
    write('podaj a: ');
    readln(a);

    if a=0 then
      writeln('To nie jest funkcja kwadratowa!!Wprowadz poprawne dane');
  until a<>0;

  write('Podaj b: ');
  readln(b);
  write('Podaj c: ');
  readln(c);
  delta:=sqr(b)-4*a*c;

  if delta<0 then
    writeln('Brak miejsc zerowych');

  if delta=0 then
  begin
    x1:=-b/2*a;
    writeln('Funkcja posiada jedno miejsce zerowe: ',x1:10:5);
  end;

  if delta>0 then
  begin
    x1:=(-b-sqrt(delta))/(2*a);
    x2:=(-b+sqrt(delta))/(2*a);
    writeln('Funkcja ma dwa miejsca zerowe: ',x1:10:5,' i ',x2:10:5);
  end;

  readln;
end.

Tyle napisałem już sam

dodane formatowanie kodu i znaczniki <code class="pascal"> - fp

0
if a=0 then
if delta=0 then

To jest niebezpieczne - liczb zmiennoprzecinkowych nie należy porównywać w ten sposób.

Hint odnośnie Twojego problemu: pętla repeat.

0

a jak zrobić warunek by np. poprzez wciśnięcie E program się zamykał?

0

@leniu100 zapomnij i szykuj sie na powtarzanie roku ;] Nie umiesz nawet gotowca w dobrym języku ściągnąć...

0
leniu100 napisał(a)

a jak zrobić warunek by np. poprzez wciśnięcie E program się zamykał?

Kod, który ma się powtarzać wrzuć do jakiejś pętli, np. Repeat; Zadeklaruj sobie dodatkową zmienną, do której będziesz pobierał wybraną opcję z klawiatury (np. znak); W pętli musisz mieć wszystkie instrukcje, które mają się powtarzać, czyli:

  • czyszczenie ekranu,
  • wyświetlenie menu,
  • pobranie danych do obliczeń od użytkownika,
  • wykonanie obliczeń,
  • wyświetlenie wyniku,
  • wyświetlenie pytania czy zamknąć program,
  • pobranie od użytkownika literki;
    Pętla ma zakończyć działanie, gdy zmienna pomocnicza będzie równa E (znak, który wprowadził użytkownik); Jeśli to będzie inna litera - program wraca na początek pętli i znów czyści ekran, wyświetla menu itd.; Więc pokombinuj coś sam, a dojdziesz do tego;

EDIT: @leniu100 - w jakim języku do ciężkiej ch***ry ma być ten program..? Treść zadania sugeruje, że C++/Java, tag był pascal więc ludzie podali wskazówki dla pascala, teraz nagle jest tag c++... Już bardziej namieszać się nie dało...

0
 
char znak=0;
while(znak != 't')
{
    // tutaj wykonaj całość programu
    // a następnie:
   
    cout << "czy chcesz zakonczyc dzialanie programu? [t/n]"
    znak = getch();
}

Caly swoj program umiesc w petli ktora skonczy sie po wykryciu konkretnej wartosci w okreslonej zmiennej.
Do wyczyszczenia konsoli uzyj:

https://www.google.pl/#gs_rn=16&gs_ri=psy-ab&suggest=p&cp=22&gs_id=2e&xhr=t&q=czyszczenie+konsoli+c%2B%2B&es_nrs=true&pf=p&sclient=psy-ab&oq=czyszczenie+konsoli+c%2B&gs_l=&pbx=1&bav=on.2,or.r_qf.&bvm=bv.47534661,d.bGE&fp=dc8c376784f462bf&biw=1040&bih=892

Najbardziej Mnie zastanawia, czy będziesz umiał to wykorzystać, jak mylisz języki programowania.
Ten program do obliczania Delty zrobiłem po pierwszym dniu nauki C++ =.=

1 użytkowników online, w tym zalogowanych: 0, gości: 1