SİBERSALDİRİ.COM · KONU ODAKLI DERS
Bu derste kazanacaklarınız
- Girdi alanı ile Hesap arasındaki ilişkiyi açıklamak.
- “Geçerli tür neden geçerli matematik girdisi değildir?” sorusuna gerekçeli yanıt vermek.
- Örneği değiştirip beklenen ve gözlenen davranışı karşılaştırmak.
Çalışma mantığı ve güven sınırı
std::sqrt için gerçek sayılarda negatif girdi anlamlı sonuç vermez; hesabın hata politikasını uygulama belirlemelidir. Kayan nokta hesaplarında küçük temsil farkları beklenebilir. Eşitlik ölçütünü probleme göre seçin; sabit bir toleransı her büyüklükteki probleme körlemesine uygulamayın. Birim dönüşümlerini açık yapın.
Açıklamalı örnek
Aşağıdaki parça kavramı görünür kılar. Komut veya kod içeren örnekleri üretim sisteminde değil, size ait ayrı deneme ortamında değerlendirin. Mimari şema ve politika örnekleri çalıştırılabilir program değildir.
#include <cmath>
#include <iostream>
int main() {
double area{81.0};
if (area >= 0.0) std::cout << std::sqrt(area);
}Beklenen sonuç ve yorumu
9 hesaplanır.
Karşılaştırmalı durumlar
| Durum | Beklenen yaklaşım | Neden? |
|---|---|---|
| Pozitif alan | Karekök hesapla | Tanım alanına uygundur |
| Negatif alan | Açık hata kararı | Gerçek sonuç beklenmez |
| Yakın kayan değerler | Problemin toleransı | Tam eşitlik uygun olmayabilir |
Uygulama görevi
Alanı negatif yapın. Hatanın kullanıcıya nasıl anlatılacağını ve günlüğe hangi bilginin yazılacağını tasarlayın.
- İşlemden önce beklenen sonucu ve kabul koşulunu yazın.
- Tek bir değişkeni değiştirin; gözlemi ve kullandığınız ortamı kaydedin.
- Sonucu yukarıdaki karşılaştırma tablosuyla değerlendirin. Uymayan durumda hangi varsayımın yanlış olabileceğini açıklayın.
Sık yapılan hata ve düzeltme yönü
Başarısız matematik sonucunu geçerli ölçüm olarak kaydetmeyin.
Kendinizi sınayın
Geçerli tür neden geçerli matematik girdisi değildir?
Açıklamalı yanıt: double türündeki negatif sayı, gerçek karekök işleminin kabul alanının dışında olabilir.
İlgili derslerle ilerleyin
- C++ string: Sahiplik, uzunluk ve erişim
- C++ bool: Koşulları anlamlı isimlerle modelleme
- C++ kullanıcı girdisi: Akış hatasını işleme
- C++ if/else: Ön koşulları görünür kılma
Teknik başvuru
Bu dersin anlatımı ve örnekleri akademi için yeniden hazırlanmıştır. Aşağıdaki bağlantı, kullanılan teknoloji veya güvenlik yaklaşımının ayrıntılarını doğrulamak için teknik başvurudur.
