Çarpma ve bölme
Çarpma, bölme ve sıfıra bölme kontrolünü eklersin.
Dört işlem metotları
İskelet sınıfı yazdığına göre şimdi metotları gerçek aritmetik işlemlerle doldurabiliriz. C# dilinde dört temel operatör şunlardır:
+toplama-çıkarma*çarpma/bölme
Her metot, iki parametreyi operatörle birleştirip sonucu döndürür. Örneğin return a + b; toplama metodunun gövdesidir. Divide metodunda ek bir sıfır kontrolü yapacağız.
Sıfıra bölme koruması
Divide metodunda bölenin sıfır olup olmadığını kontrol etmeliyiz. Çünkü sıfıra bölme matematiksel olarak tanımsızdır ve programın çökmesine yol açabilir.
C# bu durumu DivideByZeroException istisnasıyla bildirir. Metot içinde if (b == 0) throw new DivideByZeroException(...); yazarak hatayı açıkça fırlatırız. İlerleyen derste bu istisnayı try/catch ile yakalayacağız.
Uygulama Dört metodu aritmetikle doldur
Dört metodu gerçek aritmetikle doldur. Add a + b, Subtract a - b, Multiply a * b döndürsün. Divide metodunda önce b == 0 kontrolü yap; sıfırsa throw new DivideByZeroException("Sıfıra bölme") fırlat, değilse a / b döndür.
Örnek çözümü göster
Her metoda uygun operatörle return yaz; Divide içine if (b == 0) throw new DivideByZeroException(...); ekle.
Örnek çözüm:
using System;
class Calculator
{
public double Add(double a, double b) { return a + b; }
public double Subtract(double a, double b) { return a - b; }
public double Multiply(double a, double b) { return a * b; }
public double Divide(double a, double b)
{
// Bölen sıfır mı kontrol et
if (b == 0) throw new DivideByZeroException("Sıfıra bölme");
return a / b;
}
}
class Program
{
static void Main()
{
string input = "25";
double number = double.Parse(input);
var calc = new Calculator();
Console.WriteLine(calc.Add(number, 4));
}
}
Kendini test et
-
Çarpma operatörünü yaz
public double Multiply(double a, double b) { return a ____ b; }Cevabı göster
public double Multiply(double a, double b) { return a * b; } -
Bölme işleminde bölen 0 olursa ne yapmalıyız?
- Sonsuz değer dönmek
- DivideByZeroException fırlatmak
- Sonucu 0 yapmak
- Programı çökertmek
Cevabı göster
DivideByZeroException fırlatmak — Doğru; sıfıra bölme hatası açıkça fırlatılmalıdır.
-
Metodu ifadeyle eşleştir
- Add
- a + b
- Subtract
- a - b
- Multiply
- a * b
- Divide
- a / b