0Pricing
Java Academy · Ders

Math Sınıfının Temelleri

Math.abs, Math.pow, Math.sqrt, Math.random ve sık kullanılan diğer Math yöntemlerini kullanın.

Math Sınıfının Temelleri, CoddyKit'te ücretsiz bir Java Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Java Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Java Academy kursu toplamda 4 dersten oluşur.

Math Sınıfı

java.lang.Math sınıfı, yaygın matematik işlemleri için statik yardımcı yöntemler sağlar. Her zaman kullanılabilir; içe aktarma gerekmez.

Mutlak Değer ve İşaret

Math.abs() mutlak değeri (negatif olmayan değeri) döndürür. Math.signum(), işarete bağlı olarak -1.0, 0.0 veya 1.0 döndürür.

System.out.println(Math.abs(-42));      // 42
System.out.println(Math.abs(3.14));     // 3.14
System.out.println(Math.signum(-5.0));  // -1.0
System.out.println(Math.signum(0.0));   //  0.0
System.out.println(Math.signum(7.0));   //  1.0

Üs, Kare Kök ve Küp Kök

Üs alma işlemleri için Math.pow(base, exp), karekök için Math.sqrt() ve küpkök için Math.cbrt() kullanın.

System.out.println(Math.pow(2, 10));  // 1024.0
System.out.println(Math.sqrt(144));   // 12.0
System.out.println(Math.cbrt(27));    // 3.0

// Hypotenuse of a right triangle (a=3, b=4)
double hyp = Math.sqrt(Math.pow(3, 2) + Math.pow(4, 2));
System.out.println(hyp); // 5.0

Minimum, Maksimum ve Sınırlandırma

Math.min() ve Math.max(), iki değerden küçük veya büyük olanı döndürür. Bir değeri belirli bir aralıkta tutan bir sınırlandırma işlemi uygulamak için bunları birleştirin.

int a = 10, b = 20;
System.out.println(Math.min(a, b)); // 10
System.out.println(Math.max(a, b)); // 20

// Clamp value between 0 and 100
int clamp(int value, int min, int max) {
    return Math.max(min, Math.min(value, max));
}
System.out.println(clamp(150, 0, 100)); // 100
System.out.println(clamp(-5,  0, 100)); // 0
System.out.println(clamp(75,  0, 100)); // 75

Aşağı Yuvarlama, Yukarı Yuvarlama ve Yuvarlama

Math.floor() aşağı yuvarlar, Math.ceil() yukarı yuvarlar ve Math.round() en yakın tamsayıya yuvarlar (yarım değerlerde yukarı).

double price = 9.3;
System.out.println(Math.floor(price));  // 9.0
System.out.println(Math.ceil(price));   // 10.0
System.out.println(Math.round(price));  // 9

double shipping = 3.5;
System.out.println(Math.round(shipping)); // 4 (half-up)

// Round to 2 decimal places
double tax = 7.5678;
double rounded = Math.round(tax * 100.0) / 100.0;
System.out.println(rounded); // 7.57

Logaritmalar ve Üstel Fonksiyonlar

Math.log() doğal logaritmayı (taban e), Math.log10() 10 tabanındaki logaritmayı ve Math.exp() e^x değerini hesaplar.

System.out.println(Math.log(Math.E));   // 1.0
System.out.println(Math.log10(1000));   // 3.0
System.out.println(Math.exp(1));        // 2.718281828...

// Change of base: log2(8)
double log2 = Math.log(8) / Math.log(2);
System.out.println(log2); // 3.0

// Compound interest: P * e^(r*t)
double principal = 1000, rate = 0.05, years = 10;
double amount = principal * Math.exp(rate * years);
System.out.printf("Amount: %.2f%n", amount); // 1648.72

Trigonometrik Yöntemler

Math, açıları radyan cinsinden kabul eden trigonometrik işlevler sağlar. Dereceleri radyana dönüştürmek için Math.toRadians() kullanın.

double angle = Math.toRadians(45);
System.out.printf("sin(45): %.4f%n", Math.sin(angle)); // 0.7071
System.out.printf("cos(45): %.4f%n", Math.cos(angle)); // 0.7071
System.out.printf("tan(45): %.4f%n", Math.tan(angle)); // 1.0000

// Distance between two GPS coordinates (simplified)
double lat1 = Math.toRadians(40.7128);
double lat2 = Math.toRadians(34.0522);
double deltaLat = lat2 - lat1;
System.out.printf("Delta lat (rad): %.4f%n", deltaLat);

Rastgele Sayılar

Math.random(), [0.0, 1.0) aralığında bir double döndürür. Bir aralıktaki tamsayıları elde etmek için bu değeri çarpıp dönüştürün. Daha iyi rastgelelik için java.util.Random kullanmayı tercih edin.

// Random double [0.0, 1.0)
double rand = Math.random();

// Random int [min, max] inclusive
int min = 1, max = 6;
int dice = (int) (Math.random() * (max - min + 1)) + min;
System.out.println("Dice roll: " + dice); // 1–6

// Prefer java.util.Random for more features
import java.util.Random;
Random rng = new Random();
int secureRoll = rng.nextInt(6) + 1; // cleaner API
System.out.println("Secure roll: " + secureRoll);

Sabitler: PI ve E

Math.PI ve Math.E, π ve Euler sayısı e için kullanılan double sabitleridir. Bunları geometrik ve finansal hesaplamalarda kullanın.

System.out.println(Math.PI); // 3.141592653589793
System.out.println(Math.E);  // 2.718281828459045

// Circle area and circumference
double radius = 7.0;
double area = Math.PI * Math.pow(radius, 2);
double circumference = 2 * Math.PI * radius;

System.out.printf("Area: %.2f%n", area);           // 153.94
System.out.printf("Circumference: %.2f%n", circumference); // 43.98

Math.floorDiv ve Math.floorMod

Math.floorDiv() ve Math.floorMod(), negatif sayıları tutarlı biçimde işler. Negatif sayılarda şaşırtıcı sonuçlar verebilen / ve % operatörlerinin aksine.

// Regular % can be negative with negative dividend
System.out.println(-7 % 3);           // -1 (may surprise you)
System.out.println(Math.floorMod(-7, 3)); // 2  (always non-negative)

// Floor division rounds toward negative infinity
System.out.println(-7 / 3);              // -2 (truncates toward zero)
System.out.println(Math.floorDiv(-7, 3)); // -3 (floors down)

// Use floorMod for cyclic calculations like days of week
int day = Math.floorMod(-1, 7); // Sunday (6), not -1
System.out.println(day); // 6

Uygulama: Mesafe ve Fizik

Bir fizik probleminde Math yöntemlerini uygulama: trigonometri ve karekök kullanarak merminin menzilini hesaplama.

// Projectile range: R = v^2 * sin(2*angle) / g
double velocity = 50.0;   // m/s
double angleDeg = 45.0;   // degrees
double g = 9.81;          // m/s^2

double angleRad = Math.toRadians(angleDeg);
double range = Math.pow(velocity, 2) * Math.sin(2 * angleRad) / g;

System.out.printf("Projectile range: %.1f m%n", range); // 254.8 m

Hızlı Kontrol

Math.floorMod(-7, 3) ifadesinin çıktısı nedir?

Özet: Math Sınıfı

Temel çıkarımlar:

  • Temel karşılaştırmalar için Math.abs, Math.min ve Math.max
  • Üsler ve kökler için Math.pow, Math.sqrt ve Math.cbrt
  • Yuvarlama için Math.floor, Math.ceil ve Math.round
  • Logaritmalar ve üstel fonksiyonlar için Math.log, Math.log10 ve Math.exp
  • Math.sin, Math.cos ve Math.tan radyan kullanır; Math.toRadians ile dönüştürün
  • Math.floorMod, döngüsel aritmetikte negatif sayıları düzgün biçimde işler
  • Math.PI ve Math.E yerleşik sabitlerdir

Sıkça Sorulan Sorular

“Math Sınıfının Temelleri” dersi ücretsiz mi?

Evet — “Math Sınıfının Temelleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Java Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Java Academy kursu toplamda 4 dersten oluşur.

“Math Sınıfının Temelleri” dersinde ne öğreneceğim?

Math.abs, Math.pow, Math.sqrt, Math.random ve sık kullanılan diğer Math yöntemlerini kullanın. Java Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Java Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Java Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.

“Math Sınıfının Temelleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Java Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Java Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Math Sınıfının Temelleri
  2. Tamsayı Aritmetiği ve Taşma
  3. Finansal Hesaplamalar için BigDecimal
  4. NumberFormat ve printf
← Java Academy Sayfasına Dön