Page 24 - Bilgisayar Bilimi Kur 1| 2. Bölüm
P. 24

Yorumlayıcı, söz dizimi hatalarını programı çalıştırmaya başlamadan önce algılar ve bu nedenle söz
            dizimi hatalarını içeren bir programın herhangi bir parçasını çalıştırmaz.

            3.7.1. Çalışma Zamanı Hataları

               Doğru yazılmış bir Python programının hâlâ sorunları olabilir. Bazı dil hataları programın yürütül-
            mesi durumuna bağlıdır. Yorumlayıcı bir istisna yaratır. Çalışma zamanı istisnaları yorumcunun çeviri
            aşamasından sonra ve programın yürütme aşamasında ortaya çıkmaktadır.
               Yorumlayıcı aşağıdaki gibi söz dizimsel olarak doğru bir ifade için bir istisna verebilir.

                  x = y + 2 d
               Eğer y değişkeni henüz atanmamışsa;
                  (NameError: name "y" is not defined) hatası mesajını verir.

               Kullanıcıyı 32 (pay) ve 0 (payda) olarak yazdığınızda
                  Zero Division Error: division by zero
               veya harf dizinini bölmeye kalktığınız takdirde

                  unsupported operand type(s) for /: "str" and "int" uyarısı alabilirsiniz.

            3.7.2. Mantık Hataları

               Bölünen/bölen ifadesi yerine bölen/bölünen olarak değiştirdiğinizde etkilerini düşünün. Program
            çalışır ve kullanıcı bölünene sıfır değeri girmedikçe, yorumlayıcı hata raporu vermeyecektir. Ancak he-
            saplanan cevap genel olarak doğru değildir. Program sadece bölünen ile bölen eşit olduğu zaman doğru
            cevap yazdıracaktır. Program bir hata içermektedir. Fakat yorumlayıcı sorunu algılayamaz. Bu tür bir
            hata, bir mantık hatası olarak bilinir. Yorumlayıcı, mantık hatalarının konumu için herhangi bir fikir
            sağlamakta güçsüzdür. Mantık hataları, bu nedenle, bulma ve onarmakta en zor olma eğilimindedir.
            Yorumlayıcı mantık hatalarına yönelik hiçbir yardımda bulunmaz.


            3.8. Aritmetik Örnekler
               Örnek: Sıcaklığı Fahrenheit derecesinden Celcius derecesine dönüştürmek istediğinizi varsayalım. 

                  >>> # Sıcaklık değerini okumak için
                  >>> dereceF = float (input ("Sıcaklığını F derece olarak girin:"))

                  >>> # Dönüşümü gerçekleştirin
                  >>> dereceC = 9/5 * (dereceF - 32)
                  >>> # Sonucu bildir
                  >>> print (dereceF, "derece F =", dereceC, "C derece")
                  Sıcaklığını F derece olarak girin: 212
                  212 ° F = 100.0 ° C
               Örnek: Kullanıcının girdiği saniyeleri, saat, dakika ve saniye olarak parçalara ayıran programda tam
            sayı bölme ve modül kullanır.

                  >>> saniye = int (input ("saniye sayısını girin:"))
                  >>> saat = saniye // 3600 # 3600 saniye = 1 saat


        130
   19   20   21   22   23   24   25   26   27   28   29