Birleştirme
- C kursu
- Başlangıç
- Ders 23/116
- 6 dk
Tüm parçaları birleştirerek çalışan bir hesap makinesi yazarsın.
Birleştirme
Son adımda menüye multiply ve divide seçeneklerini ekleyeceğiz. Böylece hesap makinesi dört işlemi de destekleyen tam bir uygulama olacak:
case 1: toplamacase 2: çıkarmacase 3: çarpmacase 4: bölme
Mevcut case 1 ve case 2 dallarını koruyarak case 3 ve case 4'ü ekleyeceğiz.
Uygulama case 3 ve case 4 ekle
Aşağıdaki menüye case 3: printf("%d\n", multiply(5, 3)); break; ve case 4: printf("%d\n", divide(6, 3)); break; dallarını ekle. Böylece hesap makinesi dört işlemi de destekler.
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 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");
int choice = 1;
while (choice != 0) {
switch (choice) {
case 1: printf("%d\n", add(5, 3)); break;
case 2: printf("%d\n", subtract(5, 3)); break;
default: break;
}
choice = 0;
}
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");
int choice = 1;
while (choice != 0) {
switch (choice) {
case 1: printf("%d\n", add(5, 3)); break;
case 2: printf("%d\n", subtract(5, 3)); break;
case 3: printf("%d\n", multiply(5, 3)); break;
case 4: printf("%d\n", divide(6, 3)); break;
default: break;
}
choice = 0;
}
return 0;
}Beklenen çıktı
Hesap makinesi 8
Proje tamamlandı
Tebrikler! Beş derslik projenin sonuna geldin. Tam bir hesap makinesi uygulaması yazdın:
- Dört fonksiyon:
add,subtract,multiply,divide - Sıfıra bölme kontrolü
whiledöngüsü veswitchile menü
Sonraki adımlarda gerçek kullanıcı girdisi için scanf, hata yönetimi ve daha çok işlem ekleyebilirsin. C ile yaptıkların bundan sonra hep bu temellerin üzerine kurulacak.
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 case etiketi
switch (choice) {
____ printf("%d", add(5, 3)); break;
}
switch (choice) {
case 1: printf("%d", add(5, 3)); break;
}
Açıklama: case 1: etiketi choice 1 olduğunda yürütülür.
2 Menüde switch neden kullanılır?
- Çoklu dal seçimi için Doğru cevap
- Döngü için
- Hesaplama için
- Çıktı için
Açıklama: switch bir değere göre çoklu dal seçimi yapar; menü için idealdir.
3 Tüm kavramları eşleştir
| Kavram | Anlamı |
|---|---|
add |
Toplama |
subtract |
Çıkarma |
multiply |
Çarpma |
divide |
Bölme |