IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

18. diel - Úvod do matematických funkcií v PHP

V minulej lekcii, Fonetickej funkcie a kódovanie HTML entít v PHP , sme si ďalšie užitočné funkcie pre prácu s textovými reťazcami a prevod textového reťazca na HTML entity a naopak.

V tejto lekcii sa uvedieme do matematických funkcií v PHP a už v tejto lekcii si niektoré dôkladne vysvetlíme. Dozvieme sa tiež, ako také funkcie v PHP zapisovať, aké hodnoty alebo typ hodnôt vracia a na čo si dať pozor.

Matematické funkcie

Matematické funkcie nás sprevádza už od základnej školy, kde nám páni a pani učiteľky zbehlí v riešení matematických problémov vysvetľovali definíciu základných goniometrických funkcií. Zoznámili sme sa s novými pojmami ako sínus, kosínus, tangens, Cotangens a učili sa ich aplikovať v rôznych matematických úlohách (predsieňovej / cosinova veta atp.) Väčšinou za pomocou kalkulačky. Človek v oblasti IT ako lenivý tvor si za každú cenu chce uľahčiť prácu a miesto vyťukávanie sínusu a Cosina na kalkulačke si napíše program v PHP pre ich výpočet. Poďme si ukázať niektoré užitočné matematické funkcie v PHP.

sin()

Funkcia sin() v PHP reprezentujúci v matematike funkcii sinus nám zo zadanej hodnoty v radiánoch vráti hodnotu sínusu v dátovom typu float. Funkcia prijíma jeden parameter, ktorým je hodnota v radiánoch. Hodnotu v stupňoch na radiány môžeme previesť pomocou funkcie deg2rad() (z anglickej skratky degrees to RADIANS), kde do jej parametra zadáme hodnotu v stupňoch, ale bez znaku stupňa °. Návratovú hodnotu potom vložíme do funkcie sin(). Ukážme si jednoduchý príklad:

$radians = deg2rad(90); // převede úhel do radiánové hodnoty, která je jako parametr.
$sinus = sin($radians); // vrátí hodnotu sinu ze zadané hodnoty v radiánech
echo $sinus;

Na výstup dostaneme hodnotu sínusu 1, čo je validný hodnota pre sinus 90 °.

cos()

Funkcia cos() nám zo zadanej hodnoty v radiánoch vráti hodnotu Cosina v dátovom typu float. Funkcie rovnako ako sin() prijíma jeden parameter, ktorým je hodnota v radiánoch. Ukážme si príklad:

for ($i = 0; $i < 8; $i++) {
    $deg = rand(10, 300); // vygeneruje náhodné celé číslo od 10 do 300 (úhel)
    $rad = deg2rad($deg); // převede úhel do radiánové hodnoty, která je jako parametr.
    $output = cos($rad); // funkce, co vypočítává cosinus
    echo "cos($deg °) = $output <br />";
}

Na výstup dostaneme celkom 8 hodnôt funkcie cosinus, napríklad tieto:

Cosinus
localhost

A ako iste vieme, existujú ďalšie goniometrické funkcie, ktoré PHP podporuje. Poďme si ich ukázať.

tan()

Funkcia tan() reprezentuje v PHP funkcii tangens takú, ako ju poznáme. Do jediného parametra tejto funkcie budeme pridávať hodnoty v radiánoch, ktoré zo stupňoch dostaneme pomocou funkcie deg2rad(), ako už bolo spomenuté. Nasleduje príklad:

for ($i = 0; $i <= 5; $i++) {
    $deg = rand(10, 300); //vygeneruje náhodné celé číslo od 10 do 300 (úhel)
    $rad = deg2rad($deg); //převede úhel do radiánové hodnoty, která je jako parametr.
    $output = tan($rad);//funkce co vypočítává tangens
    echo "tan($deg °) = $output <br />";
}

Výstup takéhoto programu sú hodnoty tangens z náhodne vygenerovaných uhlov:

Tangens
localhost

cotangens()?

Funkcia Cotangens v PHP neexistuje, ak by sme aj tak chceli Cotangens spočítať, dokážeme to za pomocou matematiky a vytvorením funkcie vlastné alebo vieme, že Cotangens sa dá zapísať ako 1/tan:

$deg = rand(10, 300); // vygeneruje náhodné celé číslo od 10 do 300 (úhel)
$rad = deg2rad($deg); // převede úhel do radiánové hodnoty, která je jako parametr.
$tan = tan($rad); // funkce, co vypočítává tangens
$cotg = 1/$tan; // pomocí funkce tangens vypočítáme cotangens
echo $cotg;

Na výstup potom dostaneme hodnotu Cotangens náhodného uhla (178 ° u výstupe nižšie):

Cotangens
localhost

rand()

Keďže sme si v ukážkach základných goniometrických funkcií definovali náhodný uhol pomocou funkcie rand(), tak si ju teraz poďme vysvetliť. Funkcia rand() nám vygeneruje náhodné číslo v zadanom rozmedzí (minimální hodnota, maximální hodnota) zadanej ako parameter funkcie. Toto sú tiež jediné parametre a funkcie môže byť volaná i bez nich. Ak nezadáme žiadny parameter, tak minimálna možná hodnota náhodného čísla bude 0 a maximálnou podľa funkcie getrandmax(), ktorá vráti najväčšiu možnú celočíselnú hodnotu.

Na niektorých platformách (ako napríklad 64-bit Windows) je maximálna hodnota funkcie getrandmax() rovná 2 147 483 647 (2 31 -1), minimálna garantovaná je 32767 (to bývalo maximum na 16-bit systémoch). Maximálna hodnota sa však odvíja od použitých knižníc jazyka C, v ktorom je PHP naprogramované.

Poďme si ukázať nejaký ten príklad:

echo rand();
echo rand();
echo rand(-10, 30);

Na výstup dostaneme napríklad tieto hodnoty:

Rand()
localhost

Touto úvodnej lekcií sme sa uviedli do problematiky matematických funkcií v PHP. Mnoho ďalších takýchto funkcií si vysvetlíme už v ďalších lekciách.

V ďalšej lekcii, Inverznej goniometrické funkcie v PHP , si vysvetlíme inverzné goniometrické funkcie v PHP.


 

Predchádzajúci článok
Fonetickej funkcie a kódovanie HTML entít v PHP
Všetky články v sekcii
PHP funkcie
Preskočiť článok
(neodporúčame)
Inverznej goniometrické funkcie v PHP
Článok pre vás napísal Pavel Vaněček
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Autor se věnuje psaní článků na Itnetwork.cz
Aktivity