Aritmatik işlemler
Aritmetik İşlem İşaretleri ve Öncelik Sıralaması
JavaScript'te yer alan aritmetik işlemleri kısaca sıralayalım:
+ Toplama işlemini yapar.
sayi = 10 + 5 (Not: sayi=15 olur)
- Çıkartma işlemini yapar.
sayi= 10 - 5 (Not: sayi=5 olur)
* Çarpma işlemini yapar.
sayi = 10 * 3 (Not: sayi=30 olur)
/ Bölme işlemi yapar.
sayi= 10 / 3 (Not: sayi=3.3333333333333335 olur)
% Tamsayılı bölme işlemi yapar ve kalanı verir.
sayi=10 % 3 (Not: sayi=1 olur)
Bu işlemlerde çarpma, bölme ve kalanlı bölme işlemlerinin toplama ve çıkarma işlemine göre önceliği vardır. Bir işlemde eğer hiç parantez yoksa, soldan sağa doğru sırasıyla çarpma ve bölme işlemleri yapılır. Bu prensip her bilgisayar dilinde ve hesap makinelerinde de geçerlidir. Aşağıdaki örneklere bakalım.
sayi = 5 * 6 - 10 / 5
Bu işlemde çarpma önceliği - işaretine göre daha fazla olan * ve / işlemleri yapılır. (* ve / işlemlerinin önceliği aynıdır.) Bu durumda sayi = 30 - 2 = 28 olur.
sayi = 5 * 6 / 10 * 2 + 4 * 3
Bu işlemde önceliği aynı olan çarpma ve bölme işlemleri birarada yer alıyor. Bu durumda işlemler sırayla yapılır. Önce 5 ile 6 çarpılır, çıkan sonuç 10'a bölünür ve çıkan sonuç 2 ile çarpılır. Ve sayi = 6 + 12 = 18 sonucuna ulaşılır.
sayi = ((5 * 6) / (10 * 2) + 4) * 3
Bu işlemde parantezler söz konusu. Ve her zaman parantezlerin önceliği vardır. İlk önce iki iç parantez içindeki işlemleri, sonra büyük parantez içindeki işlemleri yaparız. Böylece sayi = (30 / 20 + 4) * 3 = (5.5 + 4) * 3 = 9.5 * 3 = 28.5 sonucunu elde ederiz.
Değişken Değerini Taşıdığı Değere Göre Değiştirme
Bazen değişkenlerin değerini, kendisiyle işlem yaparak değiştirebiliriz. Örneğin:
var sayi = 5
sayi = sayi + 1
Bu durumda sayi = 5 + 1 = 6 olur.
var sayi = 4
sayi = sayi - 1
Bu durumda sayi = 4 - 1 = 3 olur.
var sayi = 6
sayi = sayi * 5
Bu durumda sayi = 6 * 5 = 30 olur.
var sayi = 10
sayi = sayi / 2
Bu durumda sayi = 10 / 2 = 5 olur.
var sayi = 10
sayi = sayi % 4
Bu durumda sayi = 10 % 4 = 2 olur.
Bu işlemleri şu işaretlerle de yapabiliriz: "+=", "-=", "*=", "/=" ve "%=". Aşağıdaki işlemler birbiriyle aynı sonucu verir.
sayi += 5 eşittir sayi = sayi + 5
sayi -= 4 eşittir sayi = sayi - 4
sayi *= 6 eşittir sayi = sayi * 6
sayi /= 2 eşittir sayi = sayi / 5
sayi %= 4 eşittir sayi = sayi % 4
Bu aritmetik işlemler C ve Java'da da aynı şekilde kullanılmaktadır. Bu işaretlerin yanında, özelleşmiş iki işaret daha vardır: ++, --.
sayi++ eşittir sayi = sayi + 1
sayi-- eşittir sayi = sayi - 1
Aritmetik işlemlerle ilgili bir uygulama yapalım. (Çıkan sonuca bakmadan önce tahmin etmeye çalışın.)
<html>
<head>
<title>JavaScript Uygulaması</title>
</head>
<body>
<html>
<head>
<title>JavaScript Uygulaması</title>
</head>
<body>
<script language="JavaScript">
var en1=5, boy1=10, dortgen1
var en2, boy2, dorgen2
dortgen1= en1 * boy1
boy1++
en1++
boy2 = boy1
en2 = en1
dortgen2= en2 * boy2
document.write("Eni 5, boyu 10 cm olan bir dörtgenin alanı = " + dortgen1 +" cm<sup>2</sup> 'dir.<br>")
document.write("Eni ve boyu 1'er cm artırılırsa dörtgenin alanı = " + dortgen2 +" cm<sup>2</sup> oluyor.")
</script>
</body>
</html>
İşlem önceliğini daha iyi anlatan bir başka uygulama yapalım. Aşağıdaki değerleri tahmin etmeye çalışın
<html>
<head>
<title>JavaScript Uygulaması</title>
</head>
<body>
<script language="JavaScript">
var gelir=25000, maliyet=12000
var vergiorani=0.15, amortismanorani=0.10
var amortisman, vergi
vergi = (gelir - maliyet) * (1 - amortismanorani) * vergiorani
amortisman = (gelir - maliyet) * amortismanorani
document.write("Şirketimizin yıllık vergisi = " + vergi +" TL'dir.<br>")
document.write("Şirketimizin yıllık amortismanı = " + amortisman + "TL'dir.")
</script>
</body>
</html>