Tugas 1 (Koleksi Data)

Perbedaan Pemrograman Terstruktur dan Pemromgraman Berbasis Objek

1. Pemrograman Terstruktur
    Memecah program dalam fungsi dan data
    Contoh :
   
  #include <iostream.h>
  void garis()  {
  for (i=0; i<49; i++) cout << ‘-‘;
  cout << endl;
  }
  void judul(){
  int i;
  cout << “\t\tDaftar Buku”<< endl;  // \t = tabulasi
  garis();
  cout <<”Judul Buku”<<”\t\tPengarang”<< endl;
  garis();
  }
  void main()  {
  judul();
  }
    
    Pemrograman Berorientasi Objek
    Menggabungkan fungsi dan data dalam kelas-kelas atau objek-objek
    Contoh :
   
  #include <iostream>
  using namespace std;
  class PersegiPanjang{
  int panjang,lebar;
  public:
  int luas(){
  return (panjang*lebar);
  }
  void set_values(int x,int y){
  panjang = x;
  lebar = y;
  }
  };
  class Segitiga{
  int alas,tinggi;
  public:
  float luas(){
  return (alas*tinggi*0.5);
  }
  void set_values(int a, int t){
  alas = a;
  tinggi = t;
  }
  };
  int main(){
  PersegiPanjang Kotak1;
  PersegiPanjang Kotak2;
  Segitiga Segitiga1;
  Segitiga Segitiga2;
  Kotak1.set_values(10,10);
  Kotak2.set_values(5,5);
  Segitiga1.set_values(7,6);
  Segitiga2.set_values(3,7);
  cout << “Luas Kotak 1 adalah ” << Kotak1.luas() << endl;
  cout << “Luas Kotak 2 adalah ” << Kotak2.luas() << endl;
  cout << “Luas Segitiga 1 adalah ” << Segitiga1.luas() << endl;
  cout << “Luas Segitiga 2 adalah ” << Segitiga2.luas() << endl;
  }
2. Pemrograman Terstruktur
    Memiliki ciri berurutan dan perulangan
    Contoh :
   
  // modul penghitung luas segitiga
  float Luas_sgt(float alas, float tinggi)
  {
  return (alas * tinggi / 2);
  }
  //main program
  void main()  {
  float A, T;
  cout <<”Data Alas       : “; cin >> A;
  cout <<”Data Tinggi    : “; cin >> T;
  cout <<”Luas segitiga : “ << Luas_sgt(A,T)<<endl;
  }

    Pemrograman Berorientasi Objek
    Memiliki ciri pengemasan, penurunan sifat
    Contoh :
   
  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)
3. Pemrograman Terstruktur
    Struktur Program rumit, karena terdiri dari fungsi-fungsi dan proses
    Contoh :
  
  #include <iostream.h>
  #include <conio.h>
  #include <stdlib.h>
  void main()
  {
  unsigned int pilihan;
  cout << "MENU PILIHAN" << endl;
  cout << "------------" << endl;
  cout << "1. hitung luas lingkaran" << endl;
  cout << "2. hitung luas persegi" << endl;
  cout << "3. hitung luas segitiga" << endl;
  cout << "4. exit" << endl;
  cout << "------------" << endl;
  while (pilihan>=0){
  cout << "pilihan anda (1/2/3/4) : ";
  cin >> pilihan;
  if (pilihan== 1) {
  cout << "-------------------------------------"<< endl;
  cout << "Menghitung Luas Lingkaran" << endl;
  float r;
  cout << "Masukan jari-jari : ";
  cin >> r;
  float Ll = 3.14*r*r;
  cout << "Luas Lingkaran : " << Ll << endl;
  cout << "-------------------------------------"<< endl;
  } else if (pilihan== 2){
  cout << "-------------------------------------"<< endl;
  cout << "Menghitung Luas Persegi" << endl;
  float p;
  cout << "Masukan Panjang : ";
  cin >> p;
  float l;
  cout << "Masukan Lebar : ";
  cin >> l;
  float Lp = p*l;
  cout << "Luas Persegi : " << Lp << endl;
  cout << "-------------------------------------"<< endl;
  } else if (pilihan== 3){
  cout << "-------------------------------------"<< endl;
  cout << "Menghitung Luas Segitiga" << endl;
  float a;
  cout << "Masukan Alas : ";
  cin >> a;
  float t;
  cout << "Masukan Tinggi : ";
  cin >> t;
  float Ls = 0.5*a*t;
  cout << "Luas Segitiga : " << Ls << endl;
  cout << "-------------------------------------"<< endl;
  } else if (pilihan==4) {
  exit(4);
  } else {
  cout << "Kode Yang Anda Masukan Salah...!!!"<< endl;
  }
  }
  getch();
  }


    Pemrograman Berorientasi Objek
    Struktur Program ringkas, karena terdiri dari class dan objek-objek
    Contoh :
  
  If Text1.Text = “” Then
  MsgBox (“Isi dulu Nama anda”)  Else  MsgBox (“Nama Saya” + Text1.Text + “Dan saya sedang belajar Visual Basic 6.0”)  End If


4. Pemrograman Terstruktur
    Kode jarang digunakan kembali
    Contoh :
  
  #include <iostream.h>
  #include <conio.h>
  #include <stdlib.h>
  void main()
  {
  unsigned int pilihan;
  float r, Ll, p, l, Lp, a, t, Ls;
  cout << "MENU UTAMA" << endl;
  cout << "------------" << endl;
  cout << "1. Menghitung luas lingkaran" << endl;
  cout << "2. Menghitung luas persegi" << endl;
  cout << "3. Menghitung luas segitiga" << endl;
  cout << "4. Keluar" << endl;
  cout << "------------" << endl;
  while (pilihan>=0){
  cout << "pilihan anda (1/2/3/4) : ";
  cin >> pilihan;
  switch(pilihan) {
  case 1:
  cout << "-------------------------------------"<< endl;
  cout << "Menghitung Luas Lingkaran" << endl;
  cout << "Masukan jari-jari : ";
  cin >> r; Ll = 3.14*r*r;
  cout << "Luas Lingkaran : " << Ll << endl;
  cout << "-------------------------------------"<< endl;
  break;
  case 2:
  cout << "-------------------------------------"<< endl;
  cout << "Menghitung Luas Persegi" << endl;
  cout << "Masukan Panjang : ";
  cin >> p;
  cout << "Masukan Lebar : ";
  cin >> l; Lp = p*l;
  cout << "Luas Persegi : " << Lp << endl;
  cout << "-------------------------------------"<< endl;
  break;
  case 3:
  cout << "-------------------------------------"<< endl;
  cout << "Menghitung Luas Segitiga" << endl;
  cout << "Masukan Alas : ";
  cin >> a;
  cout << "Masukan Tinggi : ";
  cin >> t; Ls = 0.5*a*t;
  cout << "Luas Segitiga : " << Ls << endl;
  cout << "-------------------------------------"<< endl;
  break;
  case 4:
  exit(4);
  break;
  default:
  cout << "Kode Yang Anda Masukan Salah...!!!"<< endl;
  }
  }
  getch();
  }
 
    Pemrograman Berorientasi Objek
    Kode dapat digunakan berkali-kali, class dan objek dapat digunakan berkali-kali sehingga                    menghemat memori
    Contoh :
  
  nama=[]
  gaji=[]
  emas=[]
  zakat=[]
  pertahun=[]
  perbulan=[]
  nisab=[]
  print (‘+———————————————–+’)
  print (‘| Penghitung Zakat Penghasilan |’)
  print (‘| menurut pendapatan kasar (brutto) |’)
  print (‘| |’)
  print (‘+———————————————–+’)
  data=int(input(‘Masukan banyak data : ‘))
  print(‘==========================================’)
  for i in range(data):
  a = input(‘Masukan nama : ‘)
  nama.append(a)
  b = int(input(‘Masukan harga emas saat ini: ‘))
  emas.append(b)
  c = int(input(‘Masukkan penghasilan Anda per bulan : ‘))
  gaji.append(c)
  print(”)
  for i in range(data):
  d = 12 * gaji[i]
  pertahun.append(d)
  e = 0.025 * pertahun[i]
  zakat.append(e)
  f = 85 * emas[i]
  nisab.append(f)
  g = zakat[i] / 12
  perbulan.append(g)
  for i in range(data):
  print (”)
  print(‘—————————————-‘)
  print(‘ Zakat Penghasilan (Brutto)’)
  print(‘—————————————-‘)
  print(‘Nama :’,nama[i])
  print(‘Harga 1 gram emas :’,’Rp.’,emas[i])
  print(‘Penghasilan per bulan :’,’Rp.’,gaji[i])
  print(‘Penghasilan per tahun :’,’Rp.’,pertahun[i])
  print(‘Harga nishab (85 gram emas) :’,’Rp.’,nisab[i])
  print(‘Zakat penghasilan :’,’2.5%    x’,pertahun[i],’=’,’Rp.’,zakat[i])
  if pertahun[i] >= nisab[i]:
  print(‘Keterangan : WAJIB Zakat Rp.’,zakat[i],’/tahun’)
  print(‘ atau Rp. ‘,perbulan[i],’/bulan’)
  print(”)
  if pertahun[i] <= nisab[i]:
  print(‘Keterangan : Anda belum termasuk Wajib Zakat’)

Perbedaan yang lain adalah

5. Pemrograman Terstruktur
    Efektif digunakan untuk menyelesaikan masalah kecil
    Pemrograman Berorientasi Objek
    Efektif digunakan untuk menyelesaikan masalah rumit

6. Pemrograman Terstruktur
    Mudah di awal, sulit di akhir dalam me-ngodingnya
    Pemrograman Berorientasi Objek
    Sulit di awal, karena harus membuat class namun mudah di akhir

7. Pemrograman Terstruktur
    Eksekusi lebih lambat
    Pemrograman Berorientasi Objek
    Eksekusi lebih cepat

Sumber :
https://dosenit.com/kuliah-it/pemrograman/contoh-pemrograman-terstruktur
https://dosenit.com/kuliah-it/pemrograman/contoh-pemrograman-berorientasi-objek

Komentar

Postingan populer dari blog ini

Tugas PBKK 3 Currency Converter

PBKK Tugas 2 (Menulis 'Hello World!' dan Membuat Kalkulator Sederhana)

Tugas PBKK 6 Movie Pages with Razor Pages NET Web Development