Rabu, 04 September 2019

Tugas 1-PBO-Koleksi Kode

Pemrograman Terstruktur
Memecah program dalam fungsi dan data
Memiliki ciri Sequence (berurutan), Selection (pemilihan) dan Repetition (perulangan)  
Struktur program rumit karena berupa urutan proses dan fungsi-fungsi 
Re-use kode program kurang
Efektif digunakan untuk menyelesaikan masalah kecil dan tidak cocok untuk menyelesaikkan masalah yang rumit, karena nantinya akan kesulitan menemukan solusi permasalahan ketika terjadi error
Mudah diawal, namun kompleks diproses selanjutnya
Eksekusi lebih lambat karena setiap perintah dikerjakan berurutan


























Pemrograman Berorientasi Objek
Menggabungkan fungsi dan data dalam kelas – kelas atau objek - objek
Memiliki ciri Encapsulation (pengemasan), Inheritance (penurunan sifat) dan Polymorphism (perbedaan bentuk dan perilaku)
Struktur program ringkas, cukup dengan membuat Objek dan class lalu bekerja berdasarkan object dan class tersebut.
Kode program sangat re-usable. object dan class dapat digunakan berkali-kali, sehingga dapat menghemat space memori.
Efektif digunakan untuk menyelesaikan masalah besar, karena OOP terdiri dari class-class yang memisahkan setiap kode program menjadi kelompok - kelompok kecil, sesuai dengan fungsinya
Sulit diawal (karena harus membuat class) namun selanjutnya akan terasa mudah dan cepat
Eksekusi lebih cepat karena dieksekusi bersamaan, program hanya mengatur Objek, properties dan method-nya saja


































Contoh Kode program:

     a.    Pemrograman terstruktur
#include <stdio.h>

int main ()
{
    int HH1, MM1, SS1, HH2, MM2, SS2;
    scanf("%d:%d:%d", &HH1, &MM1, &SS1);
    scanf("%d:%d:%d", &HH2, &MM2, &SS2);
    HH1 = HH1 + HH2;
    MM1 = MM1 + MM2;
    SS1 = SS1 + SS2;
    if (HH1 > 24) HH1 -= 24;
    if (MM1 > 60) {
        HH1++;
        MM1 -= 60;
    }
    if (SS1 > 60){
        MM1++;
        SS1 -= 60;
    }
    if (HH1 < 10) printf("0%d:", HH1);
    else printf("%d:", HH1);
    if (MM1 < 10) printf("0%d:", MM1);
    else printf("%d:", MM1);
    if (SS1 < 10) printf("0%d\n", SS1);
    else printf("%d\n", SS1);
    return 0;
}

b.   Pemrograman berbasis objek


class Karyawan:
jumlah_karyawan = 0

def __init__(self, nama, gaji):
self.nama = nama
self.gaji = gaji
Karyawan.jumlah_karyawan += 1

def tampilkan_jumlah(self):
print("Total karyawan:", Karyawan.jumlah_karyawan)

def tampilkan_profil(self):
print("Nama :", self.nama)
print("Gaji :", self.gaji) print()

# Membuat objek pertama dari kelas Karyawan
karyawan1 = Karyawan("Sarah", 1000000)
# Membuat objek kedua dari kelas Karyawan
karyawan2 = Karyawan("Budi", 2000000)

karyawan1.tampilkan_profil()
karyawan2.tampilkan_profil()
print("Total karyawan :", Karyawan.jumlah_karyawan)





Tidak ada komentar:

Posting Komentar