Ana Sayfa
Gruplar  •  Site Yönetimi  •  Özel Mesajlarınız   •  Giriş   •  Kayıt
Ana Sayfa
Ana Sayfa
Forumlar
Forumlar
Yardım
Yardım
Arama
Arama
Albüm
Albüm
Kurallar
Kurallar
Linkler
Linkler
Makaleler
Makaleler
Oyunlar
Oyunlar
Sohbet
Sohbet
Üyeler
Üyeler
İstatistikler
İstatistikler

Google


Programcılık » Java forumunda Matematik Komutları (Ders-13) konu başlığının kısa özeti; Programlar matematiğin bir dalı olan algoritmalar üzerine kuruludur. Matematiği kötü olup da iyi yazılımcı olabilen kişi yoktur. Eğer matematik üzerine daha önce fazla düşmemişseniz, belki program yap...

Bu başlığı gezen kullanıcılar:0 Kayıtlı, 0 Gizli, 0 Misafir ve 0 Bot
Kayıtlı Kullanıcılar: Yok



 
Yeni Başlık GönderCevap Gönder Digg it Stumble it Submit to Del.icio.us Diigo it Prefound it Reddit it Facebook it Blink it Slashdot it Linkagogo it 
Önceki başlık Arkadaşına GönderYazdırÖzel Mesajlarınız Sonraki başlık
Yazar Mesaj
UnreaL
Fast Friend
Fast Friend



Kayıt: 24 Aralık 2005
Mesajlar: 203
Tema: Parthenos (27533)

Yaş: 23

turkey.gif

Cinsiyet:Erkek Kova Fare

Puan: 309
Mesaj Tarih: 22 Temmuz 2006, 15:52   Mesaj konusu: Matematik Komutları (Ders-13)
Alıntıyla Cevap Ver


Programlar matematiğin bir dalı olan algoritmalar üzerine kuruludur. Matematiği kötü olup da iyi yazılımcı olabilen kişi yoktur. Eğer matematik üzerine daha önce fazla düşmemişseniz, belki program yaparken matematiği sevebilir ve içinizde kalmış gizli bir yeteneğinizi keşfedebilirsiniz.

Ondalık Sayıları Tam Sayılara Çevirme Şekilleri

JavaScript'te bir sürü matematik komutu var ve bu kodların başına math. ön komutu konur. Hemen başlasak iyi olur. İlk kodumuz ondalık sayıları en yakın tam sayıya yuvarlamaya yarayan round() komutu. Uygulamada kullanım şeklini görüyoruz:

<html>
<head>
<title>Yuvarlama</title>
</head>
<body>

<script language="JavaScript">
var i = 6.232, j= 43.534, k=17.4999999
document.write(i + " sayısını yuvarlarsak: " + Math.round(i) + "<br>")
document.write(j + " sayısını yuvarlarsak: " + Math.round(j) + "<br>")
document.write(k + " sayısını yuvarlarsak: " + Math.round(k) + "<br>")
</script>

</body>
</html>


Benzer bir kod olan ceil()'e (Türkçesi: tavan) bakalım. Bu komutla ondalık sayılar en yakında ve daha büyük olan tamsayıya eşitlenir; tamsayılar için değişen birşey olmaz. round kodunda ise ondalık sayı kendisinden düşük tamsayılara da eşitlenebiliyordu, aradaki fark bu.

<html>
<head>
<title>Tamamlama</title>
</head>
<body>

<script language="JavaScript">
var i = 6.232, j= 43.534, k=17.4999999
document.write(i + " sayısını tamamlarsak: " + Math.ceil(i) + "<br>")
document.write(j + " sayısını tamamlarsak: " + Math.ceil(j) + "<br>")
document.write(k + " sayısını tamamlarsak: " + Math.ceil(k) + "<br>")
</script>

</body>
</html>


Yukarıdaki iki uygulamayı karşılaştırırsanız round() ile ceil() komutları arasındaki farkı görürsünüz. Şimdi bu iki koda benzeyen diğer koda geçiyorum: floor() (Türkçesi: taban). Ondalık sayıyı en yakındaki ve daha küçük olan tamsayıya çevirir. Yani bu kodu kullanarak ondalık sayının ondalıklı kısmını atıyoruz.

<html>
<head>
<title>Ondalık kısmı atma</title>
</head>
<body>

<script language="JavaScript">
var i = 6.232, j= 43.534, k=17.4999999
document.write(i + " sayısının ondalık kısmını atarsak: " + Math.floor(i) + "<br>")
document.write(j + " sayısının ondalık kısmını atarsak: " + Math.floor(j) + "<br>")
document.write(k + " sayısının ondalık kısmını atarsak: " + Math.floor(k) + "<br>")
</script>

</body>
</html>


Maksimum ve Minimum Değerleri Bulma

Şimdi istatistiksel kodlara geçelim. İki sayıdan büyük olanını belirlemek için max() matematik kodundan yararlanırız. Hadi yararlanalım:

<html>
<head>
<title>Büyüğü seç</title>
</head>
<body>

<script language="JavaScript">
document.write(Math.max(46, 95))
</script>

</body>
</html>


max() kodunun karşıtı min() kodudur, iki sayı arasından büyük olanı belirler.

<html>
<head>
<title>Küçüğü seç</title>
</head>
<body>

<script language="JavaScript">
document.write(Math.min(46, 95))
</script>

</body>
</html>


Karekök Alma

Bir sayının karekökünü almak istersek sqrt() matematik kökünden yararlanabiliriz.

<html>
<head>
<title>Karekök</title>
</head>
<body>

<script language="JavaScript">
var i = 6.232, j= 43.534, k=17.4999999
document.write(i + " sayısının karekökü: " + Math.sqrt(i) + "<br>")
document.write(j + " sayısının karekökü: " + Math.sqrt(j) + "<br>")
document.write(k + " sayısının karekökü: " + Math.sqrt(k) + "<br>")
</script>

</body>
</html>


Biraz bu uygulama üzerinde duralım. Uygulama sonucunda sayıların karekökleri noktadan sonra 15 rakamlı halde veriliyor. Mesela biz noktadan sonra sadece iki sayı olmasını istiyoruz. Nasıl yaparız? Bunun için ayrı bir koda ihtiyacımız yok, basit bir mantıkla hallederiz. Önce sayıları 100'le çarparız (üçlü ondalık isteseydik 1000'le çarpardık) sonra bu sayıları yuvarlar ve yine 100'e bölerdik. İşte sonuç:

<html>
<head>
<title>İki Ondalıklı Karekök</title>
</head>
<body>

<script language="JavaScript">
var i = 6.232, j= 43.534, k=17.4999999
var a, b, c
document.write(i + " sayısının karekökü: " + Math.sqrt(i) + "<br>")
document.write(j + " sayısının karekökü: " + Math.sqrt(j) + "<br>")
document.write(k + " sayısının karekökü: " + Math.sqrt(k) + "<br><br>")
a = Math.round(Math.sqrt(i) * 100) / 100
b = Math.round(Math.sqrt(j) * 100) / 100
c = Math.round(Math.sqrt(k) * 100) / 100
document.write(i + " sayısının iki ondalıklı karekökü: " + a + "<br>")
document.write(j + " sayısının iki ondalıklı karekökü: " + b + "<br>")
document.write(k + " sayısının iki ondalıklı karekökü: " + c + "<br>")
</script>

</body>
</html>


Uygulamamızın sonucunda ikiondalıklı 2.50 ve 6.60 sayıları, tek ondalıklı 2.5 ve 6.6 halinde görünürler. (İstersek koşul deyimleriyle bunu da engelleriz ama uğraşmayalım şimdi.)

Mutlak Değer Alma

Sayıların mutlak değerini elde etmek için abs() kodunu kullanırız. Kullanalım:

<html>
<head>
<title>Mutlak Değer</title>
</head>
<body>

<script language="JavaScript">
var i = -6.232, j= 43.534, k=-17.4999999
document.write(i + " sayısının mutlak değeri: " + Math.abs(i) + "<br>")
document.write(j + " sayısının mutlak değeri: " + Math.abs(j) + "<br>")
document.write(k + " sayısının mutlak değeri: " + Math.abs(k) + "<br>")
</script>

</body>
</html>


Trigonometrik İşlemler

Aşağıda trigonometrik işlemler yapan matematik kodlarını listeledim. Sayfa uzamasın diye örnek çözmüyorum, aynı şekilde Math. uzantılı kullanılırlar.

cos() : Sayının kosinüsünü gösterir. (radyal değerler kullanın) Math.cos(3.141592653589793)

sin() : Sayının sinüsünü gösterir. Math.sin(3.141592653589793/2)

tan() : Sayının tanjantını gösterir. Math.tan(3.141592653589793/4)

acos() : Sayının arkkosinüsünü gösterir. (radyal değerler verir.) Math.acos(0.5)

asin() : Sayının arksinüsünü gösterir. Math.asin(0.25)

atan() : Sayının arktanjantını gösterir. Math.atan(1)

Değişkenlere Rasgele Sayı Değeri Atama

Şimdi çok geniş alanlarda kullanılabilen bir kod öğreneceğiz: random(). Bu kod rasgele bir sayı verir. Aşağıdaki uygulamaya bakalım.

<html>
<head>
<title>Rasgele Sayı</title>
<script language="JavaScript">
function rasgele()
{
var i = Math.random()
sayfa = window.open("","yeni_sayfa", "toolbar=0,location=0,directories=0, status=0, menubar=0,scrollbars=0,resizable=1, copyhistory=0,width=280, height=300, left=200, screenX=200, top=100, screenY=100")
sayfa.document.write(i + "<br>")
}
</script>
</head>
<body>

<form>
<input type="button" value="Rasgele Sayı" onclick="rasgele()">
</form>

</body>
</html>


Uygulamamızdaki düğmeye 40 defa falan basın ve sonuç penceresindeki rasgele sayıları inceleyin. Şöyleyebileceklerimiz: Bu sayıların hepsi ondalık tabanda bulunuyor. İki basamaklı rasgele tamsayılar elde etmek istersek ne yaparız? Cevap: Sayıyı 100 ile çarpar ve yuvarlarız:

<html>
<head>
<title>Rasgele İki Basamaklı Sayılar</title>
<script language="JavaScript">
function rasgele()
{
var i = Math.random()
sayfa = window.open("","yeni_sayfa", "toolbar=0,location=0,directories=0, status=0, menubar=0,scrollbars=0,resizable=1, copyhistory=0,width=280, height=300, left=200, screenX=200, top=100, screenY=100")
sayfa.document.write(Math.round(i * 100) + "<br>")
}
</script>
</head>
<body>

<form>
<input type="button" value="Rasgele Sayı" onclick="rasgele()">
</form>

</body>
</html>


Düğmeye defalarca basarsanız, uygulamanızın doğru olup, olmadığı hakkında fikir edinebilirsiniz.



Volkan Derinbay'a tşkler.

 Oylanmadı UnreaL offlineKişisel Galeri - UnreaLKullanıcı profilini görÖzel mesaj gönder
Mesajları göster:      
Yeni Başlık GönderCevap Gönder
Önceki başlık Arkadaşına GönderYazdırÖzel Mesajlarınız Sonraki başlık


Bu başlığı gezen kullanıcılar:0 Kayıtlı, 0 Gizli, 0 Misafir ve 0 Bot
Kayıtlı Kullanıcılar: Yok

Bu forumda yeni konular açamazsınız
Bu forumdaki mesajlara cevap veremezsiniz
Bu forumdaki mesajlarınızı değiştiremezsiniz
Bu forumdaki mesajlarınızı silemezsiniz
Bu forumdaki anketlerde oy kullanamazsınız
Bu foruma eklenti dosyaları gönderemezsiniz
Bu forumdaki dosyaları indiremezsiniz
Bu forumda eklenti önizlemelerini/linklerini görebilirsiniz
Etiketler: abs, acos, alanlarda, algoritmalar, alma, almak, ama,

Benzer Başlıklar
Başlık Yazar Forumlar Cevaplar Son Gönderilen
Yeni mesaj yok Dos Komutları pilotlike PC Yardım 1 28 Şubat 2006, 15:22 Son Mesajları Gör
Affedilmeyen
Yeni mesaj yok Pencere Komutları (Ders-9) UnreaL Java 0 22 Temmuz 2006, 15:49 Son Mesajları Gör
UnreaL
Yeni mesaj yok Metin Komutları (Ders-10) UnreaL Java 0 22 Temmuz 2006, 15:50 Son Mesajları Gör
UnreaL
Yeni mesaj yok Zaman Komutları (Ders-12) UnreaL Java 0 22 Temmuz 2006, 15:52 Son Mesajları Gör
UnreaL
Yeni mesaj yok Gözatıcı Komutları (Ders-18) UnreaL Java 0 22 Temmuz 2006, 15:57 Son Mesajları Gör
UnreaL





Bu Siteye Ait Çerezleri Sil

© 2003, 2049 Türkiye Forum :: Powered by phpBB © 2001, 2005 phpBB Group :: FI Theme
Tüm saatler GMT +2 Saat :: :: Forum Arşivleri
Hata: sayfa oluşturma = 3.05294 saniye, sql sorguları = 39
Türkiye Forum başlık özet akışları

  

CBACK CrackerTracker tarafından korunuyor
22214 Girişim engellendi.


AdslDigiturk
eXTReMe Tracker
Forum Haritası: 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, 86, 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