Php Dersi 03: Matematik & Matematiksel İşlemler - Sayfa 2 - Google Fan Webmaster Forum
Google Fan Webmaster Forum  

Geri git   Google Fan Webmaster Forum > R10 Webmaster Kütüphanesi > Articles > Dersler
Kayıt ol Articles Sosyal Gruplar Forumları Okundu Kabul Et

Cevapla
 
LinkBack Article Tools
  #1  
Alt
EJDER - ait Kullanıcı Resmi (Avatar)
EJDER EJDER isimli üyemiz çevrimdışıdır. (Offline)
Üyelik tarihi: 29-06-2005
Bulunduğu yer: istanbul,Konya
Yaş: 31
Feedback Score: 13 Olumlu
Standart Php Dersi 03: Matematik & Matematiksel İşlemler
yazan EJDER 19-07-2007, 23:35:30

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
Görüntüleme 24015 Comments 26
Sponsored Links
Total Comments 26

Comments

  11  
Alt 20-07-2007, 13:24:42
Üyeliği durduruldu
 
Standart

echo '<form><htmletiketleri>';

bu şekilde yapabilirsin
Alıntı ile Cevapla


Sponsored Links
  12  
Alt 20-07-2007, 19:15:46
 
Standart

Alıntı:
oktay Nickli Üyeden Alıntı Mesajı göster
Sorumu yanlış anladınız herhalde php değişkenler ile nasıl yapabilirim dememiştim.
PHP komutlarının arasında form nasıl yapabilirim demiştim
ilgin için teşekkürler
Pardon Yanlış Anlamışım, Oturan Boğa nın dediği Gibi
echo'<form>......</form>'; Şeklinde Yada
print("<form>.......</form>"); Şeklinde Yapabilirsin, İkinci Seçenekte Html de Kullanacağın " işaretlerinin önüne \ yazmalısın mesela <img src=\"resim.jpg\"> Şeklinde Olmalı.


Oturan boğa


echo("4 + 2 = ".(4+2)."<br>");

Bu Kod Önce Yazı Olarak Ekrana 4 + 2 = Yazıyor, Sonrada 4 ile 2 yi toplayarak Ekrana Tekrar 6 Yazıyor. tırnak içinde olanlar Metin olarak yazılır, işlem yapması için tırnaklardan sonra nokta işaretleriyle ayırmış ve 4+2 işlemini yaptırmış, sonrada metin olarak <br> yazmış ki oda html de bi alt satıra geçmek olduğundan bi alt satıra geçiyor.
Alıntı ile Cevapla


  13  
Alt 20-07-2007, 23:21:04
 
Standart

Alıntı:
Oturan Boğa Nickli Üyeden Alıntı Mesajı göster
abi kafama takılan bir yer yukarısı nasıl oldu biraz daha açıklayabilir misin





bir de abi burada round fonksiyonunu tam anlayamadım...

şimdiden teşekkürler...
Oturan Boğa anladığım kadarı ile yardımcı olmaya çalışayım. round fonksiyonu bildiğimiz yuvarlama işlemini yapıyor. Göze aldığı tek kriter şu sonuçta çıkan sayının hangi sayıya (alttaki veya yukarıdaki) daha yakınsa ona yuvarlıyor. Örnek verecek olursak

sonuç şayet 3,56 ise 4 yuvarlıyor.
sonuç şayet 3,46 ise 3 yuvarlıyor.

Kaba mantık olarak

x ,51 ve yukarıdeğerde ise üst sayıya yuvarlar
x ,49 ve küçük değerde ise alt sayıya yuvarlar.

Diğer soruda neyi anlamadığını tam olarak anlamadım. Daha açık olursan belki yardımcı olabilirim.

Not : Yanlışım varsa lütfen düzeltin.

Ejder ağabey haddim olmayarak küçük bir karışıklık var sanki kodlarda. Floor ve ceil kodlarının yer değiştirmesi gerekmiyor mu?

Kod:
<?  
echo("10 / 3 = ".floor(10/3));    // Yukarıdaki sayıya yuvarla  
echo("<br>");            // Alt satıra geç 
echo("10 / 3 = ".ceil(10/3));        // Aşağı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  
?>

Konu mirturk tarafından (20-07-2007 Saat 23:29:08 ) değiştirilmiştir..
Alıntı ile Cevapla


  14  
Alt 21-07-2007, 01:26:40
 
Standart

Oktay ve Oturan Boğa'nın soruları yanıtlanmış. Bu konunun bu şekilde yardımlaşarak gitmesi daha güzel olmuş.

mirturk: teşekkürler, yanlışlığı düzelttim. Dersi yazarken çok kontrol etme şansım olmuyor. Ufak tefek hatalar oluyor genelde.. Düzelttiğin için teşekkürler.
__________________
@hasanyasar- HasanYasar.com-imza.com
Alıntı ile Cevapla


  15  
Alt 21-07-2007, 03:20:10
 
Standart

Oturan Boğa: Kod: echo("4 + 2 = ".(4+2)."<br>");

Ekran Görüntüsü: 4 + 2 = 6

aynı renkli yerlerin ekran görüntüsü. umarım anlamışsındır arkadaşım. baya toplama işlemi olmuş yani


Ejder: abi sagolasın yine süpersin. kitaba başladım ben de. ikisi beraber süper pekiştirici oluyor. o konuya geldigimizde mi sorayım şimdi mi sorayım aklıma takılan şeyler var
__________________
Satılık PHP ve MySQL Kitabı
Alıntı ile Cevapla


  16  
Alt 21-07-2007, 03:32:22
 
Standart

Alıntı:
AlperenSonad Nickli Üyeden Alıntı Mesajı göster
Oturan Boğa: Kod: echo("4 + 2 = ".(4+2)."<br>");
Ekran Görüntüsü: 4 + 2 = 6
aynı renkli yerlerin ekran görüntüsü. umarım anlamışsındır arkadaşım. baya toplama işlemi olmuş yani
Ejder: abi sagolasın yine süpersin. kitaba başladım ben de. ikisi beraber süper pekiştirici oluyor. o konuya geldigimizde mi sorayım şimdi mi sorayım aklıma takılan şeyler var
Başka bir başlık altında sor istersen, hangi konu olduğunu bilemediğim için bir şey diyemiyorum. Hem o konuya gelince senin soruna da dikkat ederek anlatırım.
__________________
@hasanyasar- HasanYasar.com-imza.com
Alıntı ile Cevapla


  17  
Alt 28-07-2007, 01:07:37
 
Standart

Gerçekten emek vererek hazırlanmış dersler.Teşekkürler.4.ne zaman.
Alıntı ile Cevapla


  18  
Alt 28-07-2007, 16:51:33
 
Standart

Alıntı:
By_uLKeN Nickli Üyeden Alıntı Mesajı göster
Gerçekten emek vererek hazırlanmış dersler.Teşekkürler.4.ne zaman.
rica ederim. 2-3 için içinde inşallah.. yarısını hazırladım
__________________
@hasanyasar- HasanYasar.com-imza.com
Alıntı ile Cevapla


  19  
Alt 09-09-2007, 00:56:24
 
Standart

Bilgiler için teşekkürler C'ye çok benziyormuş.
__________________
Ah nihayet! AŞK kapımı araladı...
Alıntı ile Cevapla


  20  
Alt 09-09-2007, 03:50:59
 
Standart

Alıntı:
yeni Nickli Üyeden Alıntı Mesajı göster
Bilgiler için teşekkürler C'ye çok benziyormuş.
evet yazım olarak C'ye benzer, son versiyonu ile birlikte C++'ı da andırır. Ama C ve C++'a göre oldukça basit bir dildir PHP
__________________
@hasanyasar- HasanYasar.com-imza.com
Alıntı ile Cevapla


Cevapla


Bookmarks
tesxc
Article Tools

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Açık



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 04:24:24.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.

“İnsanların en hayırlısı, insanlara faydalı olandır”. H.Ş

Hosting by Radore Hosting

İçerik sağlayacı paylaşım sitelerinden biri olan R10.net WebMaster Forum Adresimizde 5651 Sayılı Kanun’un 8. Maddesine ve T.C.K’nın 125. Maddesine göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur. R10.net hakkında yapılacak tüm hukuksal Şikayetler adresi ile iletişime geçilmesi halinde ilgili kanunlar ve yönetmelikler çerçevesinde en geç 1 (Bir) Hafta içerisinde R10.net yönetimi olarak tarafımızdan gereken işlemler yapılacak ve Avukatlarımız size dönüş yapacaktır.
ARGUS_OK