Programmeren in PHP/Rekenen

Uit Wikibooks

Ga naar: navigatie, zoek
  1. Een korte inleiding tot PHP
  2. Eigen webserver met PHP installeren
  3. Syntax
  4. Variabelen
  5. Constanten
  6. Rekenen
  7. Functies
  8. Beslissingsstructuren
  9. Gebruikersinvoer
  10. I/O in PHP
  11. Klassen in PHP 4
  12. Klassen in PHP5
  13. MySql in PHP4
  14. Reguliere Expressies

WSBN


Het komt nogal eens voor dat je berekeningen uit moet voeren in PHP. Hieronder volgt een uitleg over het uitvoeren van enkele simpele berekeningen. Moeilijkere berekeningen komen later aan bod.

Inhoud

[bewerk] Optellen

PHP-code:

<?php
//Tel 8 bij 10 op en druk het resultaat af
echo 10 + 8;
?>

[bewerk] Aftrekken

PHP-code:

<?php
/*Net als optellen gebruik je hetzelfde symbool voor aftrekken als je bij wiskunde doet
  Trek 300 van 500 af en print het resultaat
*/
echo 500 - 300;
?>

[bewerk] Vermenigvuldigen

PHP-code:

<?php
//Vermenigvuldig 2 met 23 en druk het resultaat af
echo 2 * 23;
?>

[bewerk] Delen

PHP-code:

<?php
//Deel 4 door 3
echo 4 / 3;
?>

[bewerk] Modulo

Het kan soms voorkomen dat je iets in een loop wilt laten gebeuren om de x keer, daar is de modulo-operator voor uitgevonden. De modulo van een getal met een ander getal is de rest van een (staart)deling (9%2 = 1, want 9/2 = 4 met 1 rest). Voor een modulo gebruik je de %-operator als volgt:

PHP-code:

<?php
echo 4 % 2; // is nul, vier gedeeld door twee heeft namelijk geen rest
echo 5 % 2; // dit is een, vijf gedeeld door twee is twee + een als rest
?>

[bewerk] Increment en decrement-operatoren

De operatoren ++ en -- heten de 'increment operators'. Ze verhogen (incrementeren) of verlagen (decrementeren) een getal met 1. Je kunt ze op 2 manieren toepassen. De eerste manier heet 'postfix' en die heb je hierboven gebruikt:

PHP-code:

<?php
$a = 100;
echo $a++;
?>

Dit scriptje geeft gek genoeg '100' als uitvoer. Vreemd, zou je zeggen, maar het wordt nog vreemder als je dit doet:

PHP-code:

<?php
$a = 100;
echo $a++;
echo $a;
?>

De tweede 'echo' zal nu wel '101' uitspugen! $a++ betekent niet zomaar increment, maar het betekent eigenlijk 'increment pas nadat je de waarde van $a hebt doorgegeven'. Klinkt nogal krom eigenlijk, maar het wordt wellicht duidelijker als we de 'prefix' operator erbij pakken. 'Prefix' wil zeggen dat de ++ niet achter de variabele $a staat, maar ervoor. Bij prefix wordt wel eerst increment gedaan en dan pas de waarde van $a doorgegeven:

PHP-code:

<?php
$a = 100;
echo $a++; /* 100 */
echo $a; /* 101 */
 
$a = 100;
echo ++$a; /* 101 */
echo $a; /* 101 */
?>

Als je liever geen rekening wil houden met het verschil tussen 'postfix' en 'prefix', dan kun je uiteraard gewoon je code spliten over 2 regels:

PHP-code:

<?php
$a = 100;
$a++;
echo $a; /* 101 */
?>

Dat is in sommige gevallen duidelijker. Het is sowieso in sommige gevallen fijn om niet afhankelijk te zijn van de 'voorrangsregels' voor operators.

Om te verhogen of verlagen in PHP heb je de volgende operatoren:

Operand Betekenis
++ Verhoog variabele met 1
-- Verlaag variabele met 1
+= Verhoog variabele met een bepaalde waarde, bijvoorbeeld bij $a += 5 wordt er 5 opgeteld bij $a
-= Verlaag variabele met een bepaalde waarde, bijvoorbeeld bij $b -= 2 wordt er van $b 2 afgetrokken
*= Vermenigvuldig variabele met een bepaalde waarde, dus $b *= 3, is eigenlijk $b = $b * 3
/= Deel variabele met een bepaalde waarde, dus $b /= 3, is eigenlijk $b = $b / 3

[bewerk] Machten

Rekenen met machten doe je door de functie pow() (je kan niet zeggen 5^3 omdat ^ de bitwise XOR-operator is, maar dat terzijde.)

PHP-code:

<?php
echo pow (5,3);
?>

[bewerk] Wortel

PHP heeft een functie om wortels uit te rekenen, maar daar kun je alleen vierkantswortels mee berekenen, het berekenen van een vierkantswortel, oftwel de tweedemachts wortel, gaat als volgt

PHP-code:

<?php
//dit geeft als resultaat: 7 want 7*7=49
echo sqrt (49);
?>

Nou zul je je afvragen hoe je dan wortels uitrekent met een ander grondgetal, daarvoor heb je een beetje wiskundige kennis nodig. Het is namelijk zo dat een wortel (bijna) het tegenovergestelde is van een macht, je kunt dus de wortel uitrekenen door de inverse van het exponent te nemen. Een vierkantwortel kun je dus ook zo schrijven:

PHP-code:

<?php
echo pow (5, 1/2);
?>

Zoals je ziet bereken je de inverse door 1 door het getal te delen. Om nou een getal met een hoger grondgetal te nemen, bijvoorbeeld 6 doe je dus het volgende

PHP-code:

<?php
echo pow (5, 1/6);
?>

[bewerk] Andere wiskundige functies

Een aantal veelgebruikte functies in PHP zijn round($nummer,$precisie), abs($nummer), floor($nummer) en ceil($nummer). Hieronder zie je hoe ze werken in het kort:

PHP-code:

<?php
$afgerond = round(133.756859402, 2); /* $afgerond is nu 133.76 */
$abs = abs(-1337); /* $abs is nu 1337 */
$floor = floor(2.58694); /* $floor is nu 2 */
$ceil = ceil(2.35125); /* $ceil is nu 3 */
?>

Verder zijn sin($nummer), cos($nummer), tan($nummer), exp($nummer), rad2deg($nummer), sinh($nummer), cosh($nummer), tanh($nummer), log($nummer) en nog veel meer wiskundige functies beschikbaar.


De wijzigingen aan deze pagina van voor 15 april 2007 vallen alléén onder de GFDL, en niet onder de CC-BY-SA-licentie.
U kunt de inhoud van deze pagina dan ook alleen onder de voorwaarden van de GFDL (her)gebruiken.

Niet alle bijdragers van voor 15 april 2007 hebben hun werk vrijgegeven onder de dubbellicentie GFDL&CC-BY-SA. Kijk hier voor meer informatie.
Lijst van gebruikers die hun wijzigingen niet hebben vrijgegeven onder beide licenties

Informatie afkomstig van http://nl.wikibooks.org Wikibooks NL.
Wikibooks NL is onderdeel van de wikimediafoundation.
Aspecten/acties
Persoonlijke instellingen