1st Infinity Calculator

Delphi & Pascal (česká wiki)
Přejít na: navigace, hledání
Kategória: Programy v Pascale
1inca.pngProgram: 1inca.pasBignum.pasMath.pasUse_bn.pas
Súbor exe: 1inca.exe

Program dokáže počítať základné matematické operácie v ľubovoľnej presnosti. Ostatné matematické operácie sú riešené Taylorovými radmi.
Poznámky
  • Pre jednoduché použitie vo vašom programe pozrite use_bn.pas
  • Program je omedzený na 250 desatinných miest (vyšší počet je možné definovať pri kompilácii)
  • Počas zdĺhavých výpočtov užívateľ vidí ako konverguje Taylorov rad
program cislo;
uses crt,math;
 
var a,b: infinity;
  znova: boolean;
 
begin
  clrscr;
  randomize;
 
{ Sinus velkeho cisla }
{
  a.init('9928497293881');
  a.ScroolBarInit(2,20,70);
  a.Sin;
 
  writeln;
  writeln('=');
  a.writeln(BN_INFINITY, BN_INFINITY);
}
 
{ Sucet dvoch cisel zadanych v programe }
{
  a.init('1234567890123456789012345678901234567890');
  b.init('999999999999999999999');
 
  a.copy_real(0.00918237/1E+32);
  b.copy_int(-1234567890);
}
 
{ Rozne matematicke operacie cisel zadanych z klavesnice }
  clrscr;
  write('Zadaj a = ');
  a.readln;
 
  write('Zadaj b = ');
  b.readln;
 
  write('Zadaj znamienko (+,-,*,/,!) = ');
  znova:=true;
  while(znova) do begin
    znova:=false;
    case (readkey) of
     '+': a.plus (b);
     '-': a.minus(b);
     '*': a.multiply(b);
     '/': a.divide(b);
     '!': a.factorial;
    else  znova:=true;
    end;
  end;
 
  writeln;
  writeln('=');
  a.writeln(BN_INFINITY,BN_INFINITY);
  readln;
end.