28 lines
635 B
Plaintext
28 lines
635 B
Plaintext
def hitung_jam_kerja(jam_masuk, jam_keluar):
|
|
total_jam = jam_keluar - jam_masuk
|
|
|
|
if total_jam <= 8:
|
|
return total_jam
|
|
else:
|
|
jam_normal = 8
|
|
jam_lembur = total_jam - 8
|
|
|
|
if jam_lembur == 1:
|
|
nilai_lembur = 1
|
|
elif jam_lembur == 2:
|
|
nilai_lembur = 1 + 2
|
|
else:
|
|
nilai_lembur = 1 + 2 + (jam_lembur - 2) * 3
|
|
|
|
return jam_normal + nilai_lembur
|
|
|
|
# Contoh penggunaan:
|
|
data_soal = [
|
|
(7, 10),
|
|
(10, 20),
|
|
(1, 10)
|
|
]
|
|
|
|
for i, (masuk, keluar) in enumerate(data_soal, 1):
|
|
hasil = hitung_jam_kerja(masuk, keluar)
|
|
print(f"h#{i}: {hasil}") |