Minggu, 03 Juli 2011

Program C++ Pointer

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