SKA#4 OOP Class sederhana | Python

Contoh kasus A artikel ke-4 untuk bahasa pemrograman Python

Pada artikel ke-4 Studi Kasus A, kode akan dimodifikasi dengan menyertakan class khusus yang digunakan untuk menampung nilai mata kuliah. Sebelum mempelajari artikel ini, sebaiknya anda membaca dahulu materi mengenai class dan object dalam bahasa pemrograman python.

Jika pada artikel ke-3 dicontohkan bahwa nama mahasiswa dan komponen nilainya disimpan pada dua list terpisah, maka kali ini kita akan menyimpan nama mahasiswa dan komponen nilai mata kuliah yang ia dapatkan pada sebuah objectObject ini dibuat dari class NilaiMataKuliah yang strukturnya merepresentasikan komponen nilai seorang mahasiswa.

Berikut adalah evolusi kode dimaksud

def hitung_nilai_akhir(nilai_hadir,nilai_tugas,nilai_uts,nilai_uas):
    bobot_hadir = 0.15
    bobot_tugas = 0.25
    bobot_uts = 0.3
    bobot_uas = 0.3    
    nilai_akhir = bobot_hadir * nilai_hadir + bobot_tugas * nilai_tugas + bobot_uts * nilai_uts + bobot_uas * nilai_uas
    return nilai_akhir

def nilai_ke_grade(nilai_akhir):
    grade = 'E'
    if nilai_akhir >= 85:
        grade = 'A'
    elif nilai_akhir >= 70:
        grade = 'B'
    elif nilai_akhir >= 50:
        grade = 'C'
    elif nilai_akhir >= 40:
        grade = 'D'
    return grade

class NilaiMataKuliah:
    def __init__(self, nama, mata_kuliah, nilai_hadir,nilai_tugas,nilai_uts,nilai_uas):
        self.nama = nama
        self.mata_kuliah = mata_kuliah
        self.nilai_hadir = nilai_hadir
        self.nilai_tugas = nilai_tugas
        self.nilai_uts = nilai_uts
        self.nilai_uas = nilai_uas
    
obj = NilaiMataKuliah("Agus","Pemrograman Lanjut",80,75,85,70)
nilai_akhir = hitung_nilai_akhir(obj.nilai_hadir,obj.nilai_tugas,obj.nilai_uts,obj.nilai_uas)
grade = nilai_ke_grade(nilai_akhir)
print('{} pada mata kuliah {} mendapatkan nilai akhir = {}, grade= {}'.format(obj.nama,obj.mata_kuliah,nilai_akhir,grade))
Series Navigation<< SKA#4 OOP Class sederhana | JavaSKA#5 OOP Constructor | Java >>

You may also like...

Berikan komentar