Here is a simple number digit counter function, I used it to check if a number is a palindrome or not, Plus a Distance function, slope formula, sum from one to an integer, sum of odd numbers from one to specified number, and last but not least the sum of the squares of the values of the sine of x, and the cosine of y.
<?php
function digit_count($num){
for($i=0;pow(10,$i)<=$num;$i++){
if(pow(10,$i+1)>$num){
$num_digits = $i+1;
}
}
return $num_digits;
}
function distance($x_1,$y_1,$x_2,$y_2){
return sqrt(pow($x_1-$x_2,2)+pow($y_1-$y_2,2));
}
function slope($x_1,$y_1,$x_2,$y_2){
return ($y_2-$y_1)/($x_2-$x_1);
}
// example sum(20)=210=1+2+3+...+20
function sum($x){
return ($x)($x+1)/2;
}
// example odd(15)=225=1+3+5+7+9+...+15
function odd($x){
if(($x%2) == 0){
$x-=1;
}
$y=($x+1)/2;
return pow($y,2); //Same as $y*$y;
}
function ($x,$y){
if($x=90-$y){
echo "(Sine of $x)^2 + (Cosine of $y)^2=1";
$value = 1;
}else{
$value = pow(sin($x),2)+pow(cos($y),2);
}
return $value;
}
?>
Mathematical Functions
- Introduzione
- Installazione/Configurazione
- Costanti predefinite
- Math Funzioni
- abs — Valore assoluto
- acos — Arco coseno
- acosh — Inverso del coseno iperbolico
- asin — Arco seno
- asinh — Inverso del seno iperbolico
- atan2 — Arco tangente di due variabili
- atan — Arco tangente
- atanh — Inverso della tangente iperbolica
- base_convert — Converte un numero fra basi arbitrarie
- bindec — Da binario a decimale
- ceil — arrotonda le frazioni all'intero superiore
- cos — Coseno
- cosh — Coseno iperbolico
- decbin — Da decimale a binario
- dechex — Da decimale a esadecimale
- decoct — Da decimale a ottale
- deg2rad — Converte il numero dato in gradi nell'equivalente espresso in radianti
- exp — Calcola l'esponente di e (la base logaritmica naturale o di Nepero)
- expm1 — Restituisce exp(numero) - 1, computato in maniera tale da essere accurato anche se il valore del numero è vicino a zero
- floor — Arrotonda le frazioni all'intero inferiore
- fmod — Returns the floating point remainder (modulo) of the division of the arguments
- getrandmax — Mostra il più grande numero casuale disponibile
- hexdec — Da esadecimale a decimale
- hypot — Restituisce sqrt(num1*num1 + num2*num2)
- is_finite — Verifica se un numero dato è un numero finito
- is_infinite — Verifica se un dato valore è infinito
- is_nan — Verifica se un dato valore non sia un numero
- lcg_value — Generatore combinato lineare congruenziale
- log10 — Logaritmo base-10
- log1p — Restituisce log(1 + numero), computato in maniera tale da essere accurato anche se il valore del numero è vicino a zero
- log — Logaritmo naturale
- max — Trova il valore massimo
- min — Trova il valore minimo
- mt_getrandmax — Mostra il più grande valore casuale disponibile
- mt_rand — Genera un valore casuale migliore
- mt_srand — Inizializza un generatore di numeri casuali migliore
- octdec — Da ottale a decimale
- pi — Restituisce il valore di pi
- pow — Espressione esponenziale
- rad2deg — Converte un numero in radianti nell'equivalente numero in gradi
- rand — Genera un valore casuale
- round — Arrotonda un numero non intero
- sin — Seno
- sinh — Seno iperbolico
- sqrt — Radice quadrata
- srand — inizializza il generatore di numeri casuali
- tan — Tangente
- tanh — Tangente iperbolica
Math
Anonymous:
22-Dec-2008 11:20
22-Dec-2008 11:20
Sanjay Ichalkaranje
11-Oct-2008 01:34
11-Oct-2008 01:34
This is the only function I searched that I did not find anywhere on the Internet. This function calculates standard normal cumulative distribution for a particular value. This is NORMSDIST(x) in MS-Excel or OpenOffice.org Calc program.
<?
function normalDist($zScore) {
$p = floatval(0.2316419);
$b1 = floatval(0.319381530);
$b2 = floatval(-0.356563782);
$b3 = floatval(1.781477937);
$b4 = floatval(-1.821255978);
$b5 = floatval(1.330274429);
$t = 1/(1 + ($p * floatval($zScore)));
$zx = (1/(sqrt(2 * pi())) * (exp(0 - pow($zScore, 2)/2)));
$px = 1 - floatval($zx) * (($b1 * $t) + ($b2 * pow($t, 2)) + ($b3 * pow($t, 3)) + ($b4 * pow($t, 4)) + ($b5 * pow($t,5)));
return $px;
}
?>
