Anglická verze
logolink

< Zpět na seznam lekcí

Vzorce a matematické funkce

AlgortimyObsah lekce:

  • Matematické funkce druhá odmocnina, mocnina
  • Desetinná čísla a datový typ real
  • Výpis desetinných čísel
  • Ludolfovo číslo

Matematické funkce odmocnina, mocnina

Aby naše programy mohly řešit složitější matematické vzorce, pak je potřeba, aby uměly další matematické funkce jako mocnina či odmocnina. Ukážeme si funkce mocnina a odmocnina v programovacím prostředí Borland Delphi 7.

Poznámka: Abychom mohli následující funkce v programu použít, tak je třeba do sekce uses našeho programu přidat knihovnu math. Knihovna je soubor, který obsahuje další naprogramované funkce (například matematické), které, po vložení tohoto souboru, umí náš program použít (kdybychom do hlavičky programu potřebnou knihovnu nevložili, pak by náš program funkce z této knihovny neznal a hlásil by chybu).

Doplnění knihovny math do sekce uses v Borland Delphi
 Program Matematika;
 uses SysUtils, Math;
...

Mocnina

Pro výpočet funkce mocnina je v Delphi k dispozici funkce Power (což je anglický termín pro mocninu). V nápovědě pro Delphi zjistíte toto:

Informace o funkci Power v Borland Delphi
Function Power(Base, Exponent: Extended): Extended;
xy = exp(y * ln(x))
Raise Base to any power, Base > 0

Definice funkce říká, že se volá (použije v programu) příkazem Power, který má dva parametry:

  • base neboli základ
  • exponent neboli exponent

Chceme-li tedy, aby náš program spočítal a vypsal například výraz a5, pak v programu napíšeme writeln(power(a,5));

Druhá odmocnina

Pro výpočet funkce odmocnina je v Delphi k dispozici funkce sqrt (což je zkratka pro anglický termín square root - odmocnina). V nápovědě pro Delphi zjistíte toto:

Informace o funkci Sqrt v Borland Delphi
Function Sqrt(X: Extended): Extended;
square root: sqrt(x) = x0.5

Desetinná čísla a datový typ real

Jak funkce mocnina, tak odmocnina již ke své funkčnosti potřebují obor reálných čísel. Je tedy nutné výsledky výpočtů vkládat do proměnných, které jsou datového typu real (nebo extended) - datový typ real je určen právě pro ukládání desetinných čísel.

Datový typ real a funkce Power v Borland Delphi
 Program Mocnina_cisla;
 var a,b,e:real;
 begin
  writeln('Zadejte prosim zaklad mocniny:');
  readln(a);
  writeln('Zadejte prosim exponent mocniny:');
  readln(e);
  b:=power(a,e);
  writeln('Vyraz ',a,'^',e,'=',b);
  readln;
 end.

Podíváme-li se na zobrazený výsledek výpočtu, pak můžeme vidět například toto: 2,780734536237E0002. Co to znamená? Jedná se o takzvaný vědecký zápis reálného čísla. Písmeno E s číslem 0002 v zápisu znamená 100002=102. Výsledek tedy je 2,780734536237 krát 102. Takovýto výsledek je sice správný, ale pro běžného uživatele špatně čitelný. Náš program proto takto upravíme:

Datový typ real a funkce Power v Borland Delphi
 Program Mocnina_cisla;
 var a,b,e:real;
 begin
  writeln('Zadejte prosim zaklad mocniny:');
  readln(a);
  writeln('Zadejte prosim exponent mocniny:');
  readln(e);
  b:=power(a,e);
  writeln('Vyraz ',a,'^',e,'=',b:5:7);
  readln;
 end.

Co se v programu změnilo? Ve výpisu proměnné b ma obrazovku jsme za proměnnou přidali dvě čísla oddělená dvojtečkou. První z nich říká, že číslo b bude vypsáno na minimálně 5 míst (znaků na řádku) - to pro nás není nyní příliš podstatné. Důležitá však je druhá hodnota, která říká, že číslo bude vypsáno na 7 desetinných míst. Obecně můžeme volit libovolná čísla a tím omezovat výpis počtu desetinných míst. Předchozí vypsané číslo z tohoto programu už by mělo vypadat takto: 278,0734536.

Ludolfovo číslo

V matematických vzorcích se také často setkáme s Ludolfovým číslem. V delphi lze použít konstantu pi, která obsahuje požadovanou hodnotu nebo místo ní zapsat například přímo číslo 3,14159 (podle toho, jakou potřebujeme přesnost).

Domácí úkol

Napište program pro výpočet objemu koule a válce. Potřebné vzorce nalezněte na Internetu. Uživatel zadá hodnoty proměnných.

Domácí úkol

Napište program pro výpočet vzorce ax+by. Uživatel zadá hodnoty proměnných.

Další čtení

Odkazy

Otázky

  1. Jak se jmenuje funkce v delphi pro výpočet mocniny?
  2. Jak se jmenuje funkce v delphi pro výpočet druhé odmocniny?
  3. Jak se jmenuje funkce v delphi pro výpočet odmocniny?
  4. K čemu slouží datový typ real?
  5. Co znamená zápis 5,4567546736E0000?
  6. Jak lze srozumitelně vypsat reálné číslo na obrazovku?
webdesign, xhtml, css, php - Mgr. Michal Mikláš