Algoritma :
Deklarasi
data : integer
*berikut : pointer
Deklarasi
read(data)
node*baru
baru=new node
baru->data=5
baru->berikut=NULL
write (baru->data)
//untuk menyisipkan data selanjutnya
programnya :
#include <iostream.h>
#include <conio.h>
class node{
public:
int data;
node*berikut;
};
void main()
{
//langkah 1
node*baru;
baru=new node;
baru->data=5;
baru->berikut=NULL;
cout << "isi data node baru adalah "<<baru->data<<endl;
//langkah 2
node*lain;
lain=new node;
lain->data=6;
lain->berikut=NULL;
cout << "isi data node lain adalah "<<lain->data<<endl;
//langkah 3
baru->berikut=lain;
cout << "isi node lain dicetak dari node baru adalah ";
cout << baru->berikut->data<<endl;
//langkah 4
node*kepala=baru;
cout << "mencetak node pertama dari pointer kepala ";
cout << kepala->data<<endl;
cout << "mencetak node kedua dari pointer kepala : ";
cout << kepala->berikut->data<<endl;
//lagkah 5: jalankan pointer
cout << "menggunakan perulangan untuk mencetak setiap data pada rantai\n";
node*jalan=kepala;
int i=1;
while(jalan!=NULL)
{
cout << "data ke"<<i<<">"<<jalan->data<<endl;
i++;
jalan=jalan->berikut;
}
//langkah 6: bukti bahwa pointer kepala tidak kehilangan data
cout << "mencetak node pertama dari pointer kepala : ";
cout << kepala->data<<endl;
cout << "mencetak node kedua dari pointer kepala : ";
cout << kepala->berikut->data<<endl;
}
Dengan menggunakan pointer Dengan menggunakan pointer, variabel dapat dibuat atau dihapus selama eksekusi program, variabel (objek) secara dinamis.
implementasi dari pointer dalam program ini kita menyisipkan data baru di depan, belakang atau di tengah. .
Tidak ada komentar:
Posting Komentar