Çarpma ve bölme
- C kursu
- Başlangıç
- Ders 21/116
- 6 dk
Çarpma, bölme ve sıfıra bölme kontrolünü eklersin.
multiply ve divide fonksiyonları
Şimdi multiply ve divide fonksiyonlarını ekliyoruz. multiply iki sayıyı çarpar; divide ise böler. Bölme işleminde sıfıra bölme hatasını önlemek için b == 0 kontrolü yapmalıyız:
int multiply(int a, int b) {
return a * b;
}
int divide(int a, int b) {
if (b == 0) return 0;
return a / b;
}Sıfıra bölme tanımsızdır; bu yüzden kontrol eklemek programın çökmesini engeller.
Uygulama multiply ve divide ekle
Aşağıdaki koda int multiply(int a, int b) ve int divide(int a, int b) fonksiyonlarını ekle. divide içinde if (b == 0) return 0; kontrolü olsun. main içinde ikisini de çağır: printf("%d\n", multiply(5, 3)); ve printf("%d", divide(6, 3));.
Başlangıç kodu
#include <stdio.h>
int add(int a, int b) {
return a + b;
}
int subtract(int a, int b) {
return a - b;
}
int main(void) {
printf("Hesap makinesi\n");
printf("%d\n", add(5, 3));
printf("%d", subtract(5, 3));
return 0;
}Örnek çözüm
#include <stdio.h>
int add(int a, int b) {
return a + b;
}
int subtract(int a, int b) {
return a - b;
}
int multiply(int a, int b) {
return a * b;
}
int divide(int a, int b) {
if (b == 0) return 0;
return a / b;
}
int main(void) {
printf("Hesap makinesi\n");
printf("%d\n", add(5, 3));
printf("%d\n", subtract(5, 3));
printf("%d\n", multiply(5, 3));
printf("%d", divide(6, 3));
return 0;
}Beklenen çıktı
Hesap makinesi 8 2 15 2
Sıfıra bölme tehlikesi
Sıfıra bölme, programın anında çökmesine yol açar. Bu yüzden divide fonksiyonunda böleni kontrol etmek zorundayız:
if (b == 0) return 0; // güvenli dönüşSıfır yerine başka bir değer de dönebilirsin; önemli olan programın çökmemesidir. Üretim kodunda genellikle bir hata kodu veya özel bir değer tercih edilir.
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 multiply return ifadesi
int multiply(int a, int b) { return a ____ b; }
int multiply(int a, int b) { return a * b; }
Açıklama: return a * b; ile çarpma yapılır.
2 Bölme öncesi ne kontrol edilmeli?
- a > 0
- b == 0 Doğru cevap
- b > 0
- a < 0
Açıklama: b == 0 kontrolü sıfıra bölme hatasını önler.
3 Fonksiyonları eşleştir
| Kavram | Anlamı |
|---|---|
add |
Toplama |
subtract |
Çıkarma |
multiply |
Çarpma |
divide |
Bölme |