ABSTRAC DATA TYPE

 

ADT (ABSTRAC DATA TYPE)


Setelah kita mempelajari array, kita akan mempelajari abstract data type atau tipe data bentukan. Dalam pemrograman komputer kita pasti melibatkan manipulasi data dan mengorganisir dan mengolah data tersebut kita menggunakan dan memerlukan ADT.

 

Apa itu ADT ?

Abstract data type (ADT) adalah suatu tipe data bentukan yang di dalam nya berisi Kumpulan variabel yang tergabung di dalam satu tipe data yang sama. Konsep pemrograman ini memungkinkan kita untuk mendifinisikan tipe data yang lebih spesifik dan lebih kompleks  sesuai dengna kebutuhan program yang sedang kita bangun.

 

Cara mendeklarasikan ADT

Dalam mendeklarasikan adt kita menambahkan syntax struct. Kita menggunakan kata kunci tersebut untuk mendefinisikan tipe data baru yang Dimana dapat mencakup beberapa variabel yang memiliki berbagai jenis type data.


Contoh deklarasi ADT

 

  • Notasi

ADT  transaksimakanan {

Kasir ß string

            Pembeli ß string

            Tanggal ß string

            Totalpesanan ß integer

            Totalharga ß integer

            Bayar ß integer

}

 

  • Kode program

 

    struct transaksimakanan {
        
        string kasir;
        string pembeli; 
        string tanggal;
        int totalpesanan; 
        int totalharga;
        int bayar;         

    };

 

Jika kita lihat contoh di atas di dalam ADT transaksi makanan tersebut terdapat beberapa variabel yang Dimana variabel tersebut memiliki type data yang berbeda – beda yang di letak di dalam struct transaksimakanan. Jika suatu saat kita membutuhkan kita bisa menggunakan tipe data tersebut dengan memanggil membuat variabel yang bertipe kan transaksimakanan yang sudah kita deklarasikan.

 

Cara inisialisasi ADT

 

Dalam meng inisialisasi ADT kita dapat melakukannya dalam dua cara yaitu kita bisa melakukannya dengan inisialisasi secara langsung di dalam kamus atau kita bisa juga dengan cara menggunakan syntax inputan.

Sebelum kita meng insialisasi, terlebih dahulu kita membuat sebuah variabel yang bertype data bentukan (ADT) yang sudah kita buat tadi. Ketika kita ingin meng inisialisasi kita harus memanggil atribut yang berada di dalam ADT dan dengan type data yang di butuhkan.

 

  •  Inisialisasi di dalam kamus

o   Notasi

Pesan ß transaksimakanan (ADT)

Pesan.kasir à “pasha”

Pesan.pembeli à “faiz”

Pesan.tanggal à “12 “

 

o   Kode program

 transaksimakanan pesan; 
    pesan.kasir = "pasha";
    pesan.pembeli = "faiz"; 
    pesan.tanggal = "12";

Dapat kita lihat di atas jika kita ingin meng inisialisasi ADT maka kita harus membuat suatu variabel untuk menampung data tersebut. Dan dalam meng inisialisasi pertama kita harus menuliskan varibel yang bertipe bentukan lalu di ikuti dengan tanda titik ( . ) yang kemudian kita panggil atribut yang kita butuhkan yang berada di dalam tipe data bentukan tersebut.

  • Inisialisasi dengan syntax input

o   Notasi

 

Pesan ß transaksimakanan (ADT)

 

Output ß “ masukkan nama kasir “ ;

Input à pesan.kasir

Output ß “masukkan nama pembeli “ ;

Input à pesan.pembeli

Output ß “masukkan tanggal “

Input ß pesan.tanggal

 

o   Kode program

#include<iostream>
using namespace std; 

//kamus 

struct transaksimakanan {
  string kasir; 
  string pembeli;
  string tanggal;

};

transaksimakanan pesan;
 
main(){

  cout << "masukkan nama kasir : " ; 
  cin >> pesan.kasir;
  cout << "masukkan nama pembeli : ";
  cin >> pesan.pembeli;
  cout << "masukkan tanggal : "; 
  cin >> pesan.tanggal; 
}

Jika kita lihat dari kode di atas maka cara tersebut tidak ada bedanya hanya berbeda cara, jika insialisasi yang pertama itu adalah inisialisasi secara langsung ke variabel, jika cara yang kedua ini adalah cara dengan inputan ke dalam variabel.

 

Tambahan :

 

Jika kita ingin meng input data ke dalam variabel kita bisa menggunakan syntax ‘ getline ‘. Tujuan menggunakana syntax tersebut adalah jika kita menuliskan satu kalimat yang Panjang maka satu kalimat tersebut akan ter input semua / ter ambil satu kalimat tersebut. Jika kita hanya menggunakan syntax ‘ cin ’ maka yang akan di ambil dalam satu kalimat tersebut adalah hanya kata pertama sebelum kata selanjutnya.

 

Contoh tidak memakai getline :

  • Notasi

 

Output ß “ masukkan tanggal : “

Input à pesan.tanggal

Output ß pesan.tanggal

 

  • Kode program

 

#include<iostream>
using namespace std; 

//kamus 

struct transaksimakanan {
  string kasir; 
  string pembeli;
  string tanggal;

};

transaksimakanan pesan;
 
main(){

  cout << "masukkan tanggal : " ; 
  cin >> pesan.tanggal;
  cout << pesan.tanggal;
  
}

 

  •  Hasil dari program

masukkan tanggal : 12 desember 2023
12

Contoh menggunakan getline

  • Notasi

Output ß “ masukkan tanggal : “

Input à pesan.tanggal

Output ß pesan.tanggal

 

  • Kode program

#include<iostream>
#include<string> //tambahkan syntax ini agar getline dapat berjalan 
using namespace std; 

//kamus 

struct transaksimakanan {
  string kasir; 
  string pembeli;
  string tanggal;

};

transaksimakanan pesan;
 
main(){

  cout << "masukkan tanggal : " ; 
  getline(cin, pesan.tanggal);
  cout << pesan.tanggal;
  
}

  • Hasil program

masukkan tanggal : 12 desember 2023 
12 desember 2023 

Jika kita lihat dari kedua contoh di atas maka dapat kita lihat perbedaan nya, jika kita tidak menggunakan getline maka yang ter input dari satu kalimat yang kita ketikkan hanya satu kata terdepan saja yang dapat disimpan di dalam variabel tersebut. Jika kita menggunakan syntax getline maka keseluruhan dari satu kalimat tersebut dapat disimpan di dalam variabel.

 

 

Contoh program

 

  • Notasi

 

//judul : membuat ADT

//oleh   : penulis

 

 

//kamus

 

transaksimakanan  { ß ADT

 

            Kasir ß string

            Pembeli ß string

            Tanggal ß string

             

 

}

 Pesan ß transaksimakanan (ADT)

 

 

//deskripsi

 

//input data

Output ß “ masukkan nama kasir : “ ;

Input à getline, pesan.kasir

Output ß “masukkan nama pembeli : “

Input à getline, pesan.pembeli

Output ß “masukkan tanggal : “

Input à getline.tanggal

 

 

//menampilkan data yang sudah kita masukkan

Output ß “kasirnya : “ ß pesan.kasir.

Output ß “pembeli : “ ßpesan.pembeli

Output ß “tanggal transaksi : “ ß pesan.tanggal

 

 

  • Kode program

//judul : membuat ADT
//oleh   : penulis
#include<iostream>
#include<string> //tambahkan syntax ini agar getline dapat berjalan 
using namespace std; 

//kamus 

struct transaksimakanan {
  string kasir; 
  string pembeli;
  string tanggal;

};

transaksimakanan pesan;
 
main(){

  //input data 
  cout << "masukkan nama kasir : " ; 
  getline(cin, pesan.kasir);
  cout << "masukkan nama pembeli : ";
  getline(cin, pesan.pembeli);
  cout << "masukkan tanggal : ";
  getline(cin, pesan.tanggal);

  //menampilkan data yang sudah kita masukkan 
  cout << "nama kasir nya : " << pesan.kasir << endl; 
  cout << "nama pembeli : " << pesan.pembeli << endl;
  cout << "tanggal transaksi : " << pesan.tanggal << endl; 
}

  • Hasil program

 

masukkan nama kasir : rico 
masukkan nama pembeli : pasha 
masukkan tanggal : 12 desember 2023 
nama kasir nya : rico 
nama pembeli : pasha 
tanggal transaksi : 12 desember 2023 

 

Pada contoh di atas, kita mendefenisikan struktur mahasiswa yang memiliki 3 anggota yaitu kasir, pembeli, tanggal. Kemudian, kita membuat sebuah variabel pesan yang bertipe transaksimakanan (ADT) dan di variabel tersebut, kemudian variabel tersebut di gunakan untk menyimpan data transaksimakanan dan kemudian data tersebut di tampilkan.

 

 

 

 

 

 

 

 

 

 

 

Komentar

Postingan populer dari blog ini

KONDISI & SEQUENTIAL STATEMENT

PROGRAM PERTAMA