Gerbang Informatika

Struktur Data pertemuan 7

♠ Posted by Unknown
Pada pertemuan minggu ke tujuh ini saya akan memposting tentang link list yang telah di ajarkan kepada saya hehehhe #include #include #include #include #include //setw() using namespace std; struct node { int data; node* next; // untuk menghubungkan dengan node lain, tipe data dibuat sama seperi aturan penggunaan pointer. }; node* head; node* tail; node* curr; node* entry; node* del; void inisialisasi() { head = NULL; tail = NULL; } void input(int dt) { entry = (node* )malloc(sizeof(node)); //alokasi memori entry->data = dt; entry->next = NULL; if(head==NULL) { head = entry; tail = head; } else { tail->next = entry; tail = entry; } } void hapus() { int simpan; if(head==NULL) { cout<<"\nlinked list kosong, penghapusan tidak bisa dilakukan"<data; cout<<"\ndata yang dihapus adalah "<next; delete del; } } void cetak() { curr = head; if(head == NULL) cout<<"\ntidak ada data dalam linked list"<data<<"->"; curr = curr->next; } cout<>pilih; switch(pilih) { case '1' : cout<<"\nMasukkan data : "; cin>>data; input(data); break; case '2' : hapus(); break; case '3' : cetak(); break; case '4' : exit(0); break; default : cout<<"\nPilih ulang"<>ulang; }while(ulang=='y' || ulang=='Y'); } int main() { inisialisasi(); menu(); return EXIT_SUCCESS; } hal untuk jenisnya, jenis-jenis link list sebagai berikut : Jenis-Jenis Link List : 1)Link List biasa merupakan link list yang memiliki konstruktor dengan di akhiri dengan NULL perhatikan gambar berikut: gambar di atas merupakan link list biasa gambar kotak besar merupakan data dari list tsb dan yang kecil merupakan akhir konstraktor yang berakhiran NULL , karna gambar di atas link list di sambung menjadi 3 dan yang terakhir NULL yang merupakan hasil akhirnya. 2. Link List Maju Mundur merupakan link list yang bisa melakukan pergantian arah ke list sebelumnya. perhatikan gambar berikut gambar di atas merupakan contoh link list maju mundur, list pada gambar di atas terdapat 3 kolom yaitu kolom 1 dan 3 merupakan konstruktor NULL dan yang di tengah merupakan nilai dari list tsb. 2 konstruktor NULL inilah yang di gunakan untuk menunjuk link maju atau mundurnya. 3. Circular Link List merupakan link list yang bisa menggunakan proses dari ke dua link list sebelumnya, bedanya adalah proses akhir bukan berakhir NULL tetapi bila sudah di akhir maka akan menuju ke list awal seperti pada gambar berikut: ini merupakan contoh circular linklist dengan menggunakan link maju mundur.

Struktur Data Pertemuan 6

♠ Posted by Unknown
Pertemuan Keenam kali ini membahas tentang Link List. Link List #include using namespace std; class Link{ public : int data; Link *next; Link *back; }; int main(int argc, char** argv) { Link *a = new Link; Link *b = new Link; Link *c = new Link; a->data = 1; a->next = b; b->data = 2; b->next = c; c->data = 3; c->next= NULL; cout<next->data; return 0; }

Pertemuan Struktur Data Minggu 5

♠ Posted by Unknown
Pertemuan Kelima kali ini membahas tentang TDA(Tipe Data Abstrak). A. Tipe Data Abstrak 1D Statis # include # define maks 5 class Array1D { friend ostream& operator<<(ostream&, const Array1D&); friend istream& operator>>(istream&, Array1D&); public : Array1D(); void cetak(); void geser_kiri(); void geser_kanan(); private : char A[maks]; }; void Array1D::cetak(){ for (int i=0; i>(istream& in, Array1D& x){ int posisi; cout << "Mengisi array pada posisi ke : "; in >> posisi; if (posisi > 0 && posisi <= maks) { cout << "Masukkan elemen array-nya : "; in >> x.A[posisi-1]; } else cout << "Anda memasukkan posisi di luar range ... "; return in; } voi d Array1D::geser_kanan(){ int n = maks; int temp = A[n-1]; f or (int i=n-1; i >= 0; i--) A[i+1] = A[i]; A [0] = temp; } void Array1D::geser_kiri(){ int n = maks; int temp = A[0]; for (int i=0; i < n; i++) A[i] = A[i+1]; A[n-1] = temp; } Main main() { Array1D x; cout << "Array masih kosong : " << x; cin >> x; cout << "Isi Array saat ini : " << x; x.geser_kiri(); cout << "Isi Array setelah digeser ke kiri : " << x; x.geser_kanan(); cout << "Isi Array setelah digeser ke kanan : " << x; return 0; } hehehe kalau ada yang salah tolong komen. . . .. .

Pertemuan Struktur Data Minggu 4

♠ Posted by Unknown
Pertemuan Keempat kali ini membahas Array. Mari kita belajar bareng ya........... 1. Array [Input & Output] #include using namespace std; class Arrq{ private: int arr[9]; int i; public: void input(int i,int b){ if (i>arr[i]; input(i+1,b); } } void output(int i,int b){ //for (int i=0;i<9;i++){ if (i using namespace std; int main(int argc, char *argv[]) { int arr[9]={1,2,3,4,5,6,7,8,9,}; int p=0; cout<<"sebelum di tukar= \n"; for(int b=0;b<3;b++){ for(int h=0;h<3;h++){ cout<

Pertemuan Minggu 3 Struktur Data

♠ Posted by Unknown
Pertemuan Ketiga kali ini membahas Jenis-Jenis Perulangan & Array. 1. 3 Jenis Perulangan C++ For Mencetak bilangan 10 sampai 1. Void cetaklah(int i, int j){ int i=10; int j=1; for(i=10;i>=j;i--){ cout<j){ cout<<"Selesai"; } While Mencetak bilangan 10 sampai 1. void cetaklah(int a, int b){ int i=a; while(i>=b){ cout<<" I = "<>A[i]; } int jumlahkan(const int A[], int n){ int total=0; for(int=0;i

Pertemuan Minggu 2 Struktur Data

♠ Posted by Unknown
Pertemuan Kedua kali ini membahas Struct & Class. 1. Main #include #include int main(){ float bil1=0,bil2=0,jumlah; cout<<"Masukan Bilangan A : "; cin>>bil1; cout<<"Masukan Bilangan B : "; cin>>bil2; jumlah =bil1+bil2; cout<<"Jumlah "<>A; cout<<"Masukan Bilangan B : "; cin>>B; jumlah =A+B; ) float jumlahkan(float bil1,float bil2){ float jumlah; jumlah=0; jumlah=bil1+bil2; return jumlah; } float tampilkan(float bil1,float bil2,jumlah){ cout<<"Jumlah "<