Page 205 - BUKU TEKS ASK T3
P. 205
Struktur Kod Arahan 4.2
Ralat masa larian
Ralat masa larian akan timbul atau kelihatan apabila user-defined Kesilapan umum ialah
function, procedure atau atur cara sedang dilaksanakan (executed). punca utama kejadian
Ralat jenis ini akan menyebabkan pelaksanaan kod arahan ralat masa larian.
terhenti secara tiba-tiba dan mesej ralat akan dipaparkan.
4.17 Pengesanan ralat masa larian dalam function.
Contoh ini menunjukkan cara pengesanan ralat masa larian dalam user-defined function
kira_purata. Semak kod atur cara yang berikut. Penulisan sintaks adalah betul. Akan tetapi,
semasa pelaksanaan kod arahan tersebut atur cara terhenti secara tiba-tiba apabila input
pertama yang dimasukkan bukan satu angka.
Jadual 4.19 Kod atur cara dan paparan output yang diperoleh
Kod atur cara
# Function mengira purata
def kira_purata(x,y):
purata = jumlah / bilangan
return(purata) senaraiNo
# Atur cara utama
senaraiNo = []
cont = True
while cont:
try:
nom = float(input(“Masukkan nombor [X utk berhenti]: “))
senaraiNo.append(nom)
except ValueError:
cont = False
bilangan = len(senaraiNo)
jumlah = sum(senaraiNo)
print(“Purata = “,str(kira_purata(jumlah,bilangan)))
print(“Tamat.”)
Mesej ralat terpapar secara tiba-tiba semasa pelaksanaan
RESTART: C:\Documents\Tutorial Python\Ralat Masa Larian.py
Masukkan nombor [X utk berhenti]: 0
Masukkan nombor [X utk berhenti]: X
Purata = 0.0
Tamat.
>>>
RESTART: C:\Documents\Tutorial Python\Ralat Masa Larian.py
Masukkan nombor [X utk berhenti]: X
Traceback (most recent call last):
File “C:\Documents\Tutorial Python\Ralat Masa Larian.py”, line 18, in
<module>
print(“Purata = “,str(kira_purata(jumlah,bilangan)))
File “C:\Documents\Tutorial Python\Ralat Masa Larian.py”, line 3, in
kira_purata
purata = jumlah / bilangan
ZeroDivisionError: division by zero
>>>
195

