Algoritma dan Struktur Data
Pelajari yaa, kalian bisa
P1 - ABSTRACT DATA TYPE
DefinisiSebuah model untuk beberapa kelas data stuktur yang memiliki perilakuContoh:
- Komputer terdiri dari data (yang disimpan) dan operasi (yang dilakukan dari data itu)
- Kelas --> Stukrur ADT
- template dari sebuah objek
- Satu template dapat digunakan untuk banyak objek
- Objek -> Pemakaian ADT di program utama
- Data (attribute) --> variabel menempel pada objek
- Operasi (method) --> fungsi menempel pada objek
Method yang bertugas untuk memberi nilai awal pada data dalam objek
Studi Kasus kode Python
- Setiap Mahasiswa memiliki nilai KAT
- Setiap Mahasiswa dapat diinstruksikan untuk menampilkan semua nilai, menghitung nilai NA, dan nilai mutu
- Tanpa Konstruktor
## Definisi Kelas ##
# Definisi Atribut
class Mahasigma:
## Definisi Method
# Kamus Lokal
def tampilkan(self):
print("kat :", self.kat, "uts :", self.uts, "uas :", self.uas)
return
## Definisi Method
# Kamus Lokal
def hitungNilaiAkhir(self):
return(self.kat*4+self.uts*3+self.uas*3/10)
## Definisi Method
# Kamus Lokal
def tampilkanNilaiMutu(self):
na = self.hitungNilaiAkhir()
if(na >= 80):
print("A")
elif(na >= 70):
print("B")
elif(na >= 60):
print("C"):
elif(na >= 50):
print("D")
else:
print("E")
return
## Program Utama ##
# Kamus Lokal
def main():
m = Mahasigma() # buat mahasigma baru
m.kat = int(input())
m.uts = int(input())
m.uas = int(input())
m.tampilkan()
print(m.hitungNilaiAkhir())
m.tampilkanNilaiMutu()
return
if __name__ == '__main__':
main()
# Definisikan kelas 'Pegawai'
class Pegawai:
# Metode konstruktor untuk menginisialisasi atribut-atribut pegawai
def __init__(self, nama, jabatan, gaji):
self.nama = nama
self.jabatan = jabatan
self.gaji = gaji
# Metode untuk menampilkan informasi pegawai
def info_pegawai(self):
return f"Nama: {self.nama}, Jabatan: {self.jabatan}, Gaji: ${self.gaji}"
# Membuat beberapa objek pegawai
pegawai1 = Pegawai("John Doe", "Manajer Proyek", 60000)
pegawai2 = Pegawai("Jane Smith", "Pengembang Perangkat Lunak", 50000)
pegawai3 = Pegawai("Bob Johnson", "Desainer UI/UX", 55000)
# Menampilkan informasi pegawai-pegawai
print("Informasi Pegawai:")
print(pegawai1.info_pegawai())
print(pegawai2.info_pegawai())
print(pegawai3.info_pegawai())