Google Fan Webmaster Forum - Tekil Mesaj gösterimi - Php Dersi 03: Matematik & Matematiksel İşlemler
Tekil Mesaj gösterimi
  1  
Alt 19-07-2007, 23:35:30
EJDER EJDER isimli üyemiz çevrimdışıdır. (Offline)
 
Standart Php Dersi 03: Matematik & Matematiksel İşlemler

Matematikten, özellikle matematikten birçok öğrenci hoşlanmaz. Bunlardan biri de benim. Ama programlama öğreneceksek ve ticaret ile uğraşacaksak matematiği sevmemiz gerekmekte. Aslında hayatımızda hiç yeri yokmuş gibi gözüken birçok matematik işlemi zamanla hayatımızın göbeğine yerleşmektedir.
PHP'de matematik işlemleri yapmak oldukça basit bir şekile getirilmiş. Önceki konularda değişkenleri öğrenmiştik, şimdi bu değişkenlere atama yaparak matematiksel işlemlerde kullanacağız böylece değişkenleri de biraz daha iyi anlamış olacağız.
En basit matematik kodumuzu aşağıdaki şekilde yazabiliriz
PHP- Kodu:
<?
echo(4+5);
?>
Ekrana 4 + 5 'in sonucunu hesaplayarak yazacaktır, yani ekranda 9 sayısını görürüz bu kodu yazdığımız zaman. Temel matematiksel işlemlerini hepsini bu şekilde kullanabiliriz. Temel matematiksel işlemlemlerinden kastım toplama, çıkarma, bölme, çarpma ve mod almadır. Dört işlemi anladıkta mod alma neydi diyenler çıkabilir. Mod alma bir sayının bir sayıdan kalan sayıyı bulma işlemine denir.
Örneğin :
10 / 3 = 3 (Kalan 1)
Bunu PHP'de Şu şekilde buluyoruz:
PHP- Kodu:
<?
echo(10%3);    // Ekrana 1 yazaar
?>
Tamam da bu ne işimize yarayacak, öğrenmeye gerek yok gibi gelmesin. 4 işlemden son en çok kullanacağımız matematiksel işlem bu olacak. Örneğin her 3 arama sonucundan sonra reklam göstermek istersek bunu kullanacağız.
Dört işlem fonksiyonları için basit bir örnek daha yapalım:
PHP- Kodu:
<?
echo("4 + 2 = ".(4+2)."<br>"); // Ekrana 4 + 2 = 6 yazıp, <br>'den dolayı alt satıra geçer
echo("4 - 2 = ".(4-2)."<br>"); // Ekrana 4 - 2 = 2 yazıp, <br>'den dolayı alt satıra geçer
echo("4 * 2 = ".(4*2)."<br>"); // Ekrana 4 * 2 = 8 yazıp, <br>'den dolayı alt satıra geçer
echo("6 / 2 = ".(6/2)."<br>"); // Ekrana 6 / 2 = 3 yazıp, <br>'den dolayı alt satıra geçer
echo("5 % 2 = ".(2)."<br>"); // Ekrana 5 % 2 = 1 yazıp, <br>'den dolayı alt satıra geçer
?>
Sonuç aşağıdaki gibi olur
Alıntı:
4 + 2 = 6
4 - 2 = 2
4 * 2 = 8
6 / 2 = 3
5 % 2 = 1
Matematiksel işlemleri kullanırken () arasında kullanmamın sebebi yazı ile birlikte kullanırken bunun bir matematiksel işlem olduğunu PHP'nin anlayabilmesi. Bu işlemleri birbiri içinde kullanarak daha karışık 4 işlemlerde yapabiliriz.
Örnek :
(((4+2) * 10 ) / 2 ) -3
Bu matematiksel işlemin sonucu 27'dir. Matematikte öncelikle parantez içerisindeki işlemler yapılır, sonra sırasıyla çarpma, bölme, toplama, çıkarma işlemleri yapılır.
4+2 = 6
6 * 10 = 60
60 / 2 = 30
30 - 3 = 27
şeklinde PHP bu basit problemi çözecektir.
Bu işlemin PHP kodu
PHP- Kodu:
<?
echo((((4+2) * 10 ) / ) -3);  // Ekrana 27 yazar
?>
Bu işlemleri değişkenler üzerinden yapmamız kullanımımızı daha da kolaylaştıracaktır.
Örnek :
PHP- Kodu:
<?
$alacaklarimiz 
182;
$borclarimiz 87;
$elimizde_kalan $alacaklarimiz $borclarimiz;
echo(
"Alacaklarımız : $alacaklarimiz<br>Borçlarımız : $borclarimiz<br>Elimizde kalan Para : $elimizde_kalan");
?>
PHP Kodumuzun Ekran çıktısı
Alıntı:
Alacaklarımız : 182
Borçlarımız : 87
Elimizde kalan Para : 95
Değişken kullanmamızın nedenleri önceki derslerimizde kafada soru işaretleri bırakmıştı. Şimdi değişkenleri kullanarak karmaşık bir formülde değerleri yerine yerleştireceğiz.
PHP- Kodu:
<?
// Dairenin Alanını ve Çevresini Buluyoruz.
define("PI","3.14"); 
$r 3// yarı çap
$alan PI * ($r $r); // Pi r² Formülünden
$cevre PI $r;  // 2 Pi r Formülünden
echo("$r yarı çaplı dairemizin alanı $alan, yarıçapı $cevre 'dir<br>");
$r 7// yarı çap
$alan PI * ($r $r); // Pi r² Formülünden
$cevre PI $r;  // 2 Pi r Formülünden
echo("$r yarı çaplı dairemizin alanı $alan, yarıçapı $cevre 'dir<br>");
$r 9// yarı çap
$alan PI * ($r $r); // Pi r² Formülünden
$cevre PI $r;  // 2 Pi r Formülünden
echo("$r yarı çaplı dairemizin alanı $alan, yarıçapı $cevre 'dir<br>");
?>
Ekran çıktısı :
Alıntı:
3 yarı çaplı dairemizin alanı 28.26, yarıçapı 18.84 'dir
7 yarı çaplı dairemizin alanı 153.86, yarıçapı 43.96 'dir
9 yarı çaplı dairemizin alanı 254.34, yarıçapı 56.52 'dir
Temel fonksiyonlar ile daha fazla kafa karıştırmadan diğer matematiksel fonksiyonlara geçelim. Üst alma, karekök, sinus gibi matematiksel işlemler için fonksiyonlar tanımlanmıştır. Hazırda bulunan bu fonksiyonları kullanacağız.
Örneğin biraz önce r² işlemini hesaplayabilmek için $r * $r kullanmıştık, bunun yerine pow() fonksiyonunu kullanabilirdik.
Örnek :
PHP- Kodu:
<?
$sayi 
5;
$karesi pow($sayi,2);
echo(
"$sayi sayımızın karesi $karesi dir");
?>
Ekran Çıktısı :
Alıntı:
5 sayımızın karesi 25 dir
İşlemleri yaparken ondalıklı sayılı sonuçlar elde edebiliriz, bunları bazen daha yuvarlak gözükmesini isteyebiliriz.
Örnek :
PHP- Kodu:
<? 
echo("10 / 3 = ".floor(10/3));    // Aşağıdaki sayıya yuvarlar 
echo("<br>");            // Alt satıra geç
echo("10 / 3 = ".ceil(10/3));        // Yukarıdaki sayıya yuvarlar 
echo("<br>");            // Alt satıra geç
echo("10 / 3 = ".round(10/3));    // 5'den küçükleri aşağıya,büyükleri yukarıya yuvarlar 
echo("<br>");            // Alt satıra geç
echo("10 / 3 = ".round((10/3),2));    // Virgülden sonra kaç haneye göre yuvarlama yapacağını belirler 
?>
Ekran Çıktısı :
Alıntı:
10 / 3 = 3
10 / 3 = 4
10 / 3 = 3
10 / 3 = 3.33
Sık kullanacağımız bir diğer fonksiyon grubu ise en küçük ve en büyük sayıyı bulma fonksiyonlarıdır. min() en küçük sayıyı bulur, max() ise en büyük sayıyı bulur.
Örnek :
PHP- Kodu:
<?
$sayi 
= array(33,12,49,93,71,473,3);  // array() fonksiyonu ileride Diziler konusunda anlatılacaktır.
$en_buyuk max($sayi);
$en_kucuk min($sayi);
echo(
"En büyük sayımız : $en_buyuk <br>");
echo(
"En küçük sayımız : $en_kucuk <br>");
?>
Ekran Çıktısı :
Alıntı:
En büyük sayımız : 473
En küçük sayımız : 3
Son olarak karekök bulmak için fonksiyonumuz hakkında bir örnek yapalım.
PHP- Kodu:
<? 
echo(sqrt(81));  // 81'in karekökü olan 9'u ekrana basacaktır.
?>
Diğer matematiksel fonksiyonları da aşağıda yazıyorum, daha fazla matematik işlemi için onları da inceleyebilirsiniz.
abs
acos
acosh
asin
asinh
atan2
atan
atanh
base_convert
bindec
cos
cosh
decbin
dechex
decoct
deg2rad
exp
expm1
fmod
getrandmax
hexdec
hypot
is_finite
is_infinite
is_nan
lcg_value
log10
log1p
log
mt_getrandmax
mt_rand
mt_srand
octdec
pi
rad2deg
rand
sin
sinh
sqrt
srand
tan
tanh
__________________
@hasanyasar- HasanYasar.com-imza.com

Konu EJDER tarafından (21-07-2007 Saat 01:14:18 ) değiştirilmiştir..
Alıntı ile Cevapla


1 kişi bu mesajınızı değerlendirdi 1 kişi faydalı buldu
Sponsored Links
 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256