Kitaplar / Yöntem ile Programlamaya Giriş / Bölüm 10 — Hatalarla başa çıkmak
Bölüm 10 — Hatalarla başa çıkmak
Programlar beklenmedik durumlarla karşılaşır: sıfıra bölme, olmayan bir dosya, hatalı girdi. Yöntem bu durumlarda bir hata fırlatır. Hatayı dene … yakala … sonunda … bitir ile yakalayıp programı durdurmadan yönetebilirsiniz.
Yöntem
program HataYönetimi
değişken
sayılar: liste
i, bölen: tamsayı
fonksiyon Bölüştür(toplam, kişi: tamsayı): tamsayı
başla
eğer kişi <= 0 ise
fırlat Hata('Kişi sayısı pozitif olmalı', 'GeçersizGirdi')
dön toplam böl kişi
bitir
başla
sayılar := [10, 20, 30]
dene
yaz(sayılar[5], 1)
yakala (h)
yaz('Yakalandı: ' + h.mesaj, 1)
bitir
[3, 0, -2] içindeki her bölen için
başla
dene
yaz('100 / ' + bölen + ' kişi = ' + Bölüştür(100, bölen), 1)
yakala (h)
yaz(h.tür + ': ' + h.mesaj, 1)
sonunda
yaz(' (hesap denendi)', 1)
bitir
bitir
İddia(Uzunluk(sayılar) = 3, 'Liste 3 elemanlı olmalı')
yaz('İddia doğrulandı.', 1)
bitir.Çıktı
Yakalandı: Liste dizini sınır dışı: 5 (uzunluk 3)
100 / 3 kişi = 33
(hesap denendi)
GeçersizGirdi: Kişi sayısı pozitif olmalı
(hesap denendi)
GeçersizGirdi: Kişi sayısı pozitif olmalı
(hesap denendi)
İddia doğrulandı.| Yapı | Görevi |
|---|---|
dene … |
Hata çıkabilecek kodu çevreler |
yakala (h) … |
Hata olursa çalışır. h.mesaj, h.tür, h.satır bilgileri vardır. (h) isteğe bağlıdır. |
sonunda … |
Hata olsa da olmasa da her zaman çalışır; dosya kapatma gibi temizlik işleri için |
fırlat Hata(mesaj, tür) |
Kendi hatanızı fırlatır |
İddia(koşul, mesaj) |
Koşul yanlışsa hata fırlatır; testler için idealdir |
Yakalanmayan bir hata programı durdurur ve hangi dosyanın hangi satırında olduğunu yazar. Bu mesajları okumayı alışkanlık haline getirmenizi öneririz: mesajlar, hatanın ne olduğunu ve nerede olduğunu genellikle tam olarak söyler.