Anonymní profil Jan Češík – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Jan Češík – Programujte.comAnonymní profil Jan Češík – Programujte.com

 

Příspěvky odeslané z IP adresy 78.80.111.–

Jan Češík
Pascal › Pád cyklu, exited with exitc…
27. 6. 2012   #159577

#2 KIIV
diky, uz jsem to poupravil a pocita uz perfektne..

Jan Češík
Pascal › Pád cyklu, exited with exitc…
27. 6. 2012   #159574

Zravim, trvorim program pro vypocet urciteho integralu x^2. Do programu vstupuji meze integrace, pocet podintervalu na ktere se ma zadany interval rozdelit (N) a presnost. Pokud zadam presnost 0,00001, cyklus, ktery upravuje pocet podintervalu (N:=2*N) spadne a vyhodi mi to hlasku exited with exitcode = 201. Slysel jsem neco o preteceni aritmetiky, neni mozne, ze N se timto cyklem prehoupne pres urcitou hranici? Testovanim jsem dosel k zaveru, ze program pada pokud je vysledne N = 32768 a vyssi. Dekuji za pomoc

Program integrace;
  uses crt;

  var a,b,delkaintervalu,h,yhorni,ydolni,sumahorni,sumadolni,integral,chyba,P:real;
      i,N,c:integer;

  procedure numint(N:integer);

  begin

  delkaintervalu:=b-a;
  h:=delkaintervalu/N;
  sumahorni:=0;
  sumadolni:=0;

  for i:=1 to N do begin

                    yhorni:=(a+h*i)*(a+h*i);
                    sumahorni:=sumahorni+h*yhorni;

                     end;

  for i:=0 to N-1 do begin

                      ydolni:=(a+h*i)*(a+h*i);
                      sumadolni:=sumadolni+h*ydolni;

                     end;

  integral:=(sumahorni+sumadolni)/2;
  chyba:=abs(sumahorni-sumadolni);

  end;

  begin

  ClrScr;

  write('Integrace od: ');readln (a);
  write('Integrace do: ');readln (b);
  write('Pocet podintervalu: ');readln (N);
  write('Pozadovana presnost: ');readln (P);

  numint(N);

     if

  chyba>P

   then

   begin

    write('Prilis velka chyba, zvysuji pocet podintervalu.');

   readln();

   repeat
    N:=N*2;

    numint(N);
    until chyba<P;

    write('Numericka hodnota integralu: ');writeln(integral:7:5);
    write('Chyba vypoctu integralu: '); writeln(chyba:7:5);

   end

   else

    begin

    write('Numericka hodnota integralu: ');writeln(integral:7:5);
    write('Chyba vypoctu integralu: '); writeln(chyba:7:5);

    end;

  readln();

  end.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý