Pointer
Pada kesempatan kali ini saya membuat 6 program printer yang berbeda, untuk mengetahui bagaimana program pointer itu berjalan
1.
#include <iostream>
#include <conio.h>
using namespace std;
main()
{
static char nama[] = "TIM PEMOGRAMAN";
char *ptr=nama;
int x=1;
while(*ptr)
{
if(x<=9)
cout<<"karakter ke-0"<<x<<" : "<<*ptr++;
else
cout<<"karakter ke-"<<x<<" : "<<*ptr++;
cout<<endl;
x++;
}
getch();
}
a. Pertama kita buat sebuah variable nama dengan char, lalu didalamnya kita masukkan karakter “Tim Pemrograman”. Lalu setelahnya kita buat variable lagi
dengan char dan *ptr=nama, sehingga karakter-karakter tadi akan masuk kedalam isi dari alamat ptr. Lalu kita buat variable x dengan nilai sama dengan satu.
b. Lalu kita gunakan kodefungsi while, yang dilakukan apabila ada isi dari alamat ptr tadi, lalu didalamnya kita menggunakan kodefungsi if, apabila x kurang dari sama dengan 9 maka yang tercetak adalah seperti yang ada diatas dengan ada angka 0, dan selain itu maka tidak aka nada 0 -nya dengan penambahannya yaitu x++
2.
#include <iostream>
using namespace std;
main()
{
int bill=19, bil2=80;
int *pbil=&bill;;
cout<<"--------------------------------------"<<endl;
cout<<" PROGRAM UNTUK MENUNJUKKAN ISI POINTER"<<endl;
cout<<"--------------------------------------"<<endl;
cout<<"Nilai dari bill : "<<bill<<endl;
cout<<"Alamat dari bill : "<<&bill<<endl;
cout<<"Nilai dari bil2 : "<<bil2<<endl;
cout<<"Alamat dari nilai bil2: "<<&bil2<<endl;
cout<<endl;
cout<<"Nilai yang disimpan pbil : "<<pbil<<endl;
cout<<"Alamat dari pbil : "<<&pbil<<endl;
cout<<"Nilai yang ditunjukkan pbil : "<<*pbil<<endl;
cout<<endl;
pbil=&bil2;
cout<<"Nilai yang disimpan pbil : "<<pbil<<endl;
cout<<"Alamat dari pbil : "<<&pbil<<endl;
cout<<"Nilai yang ditunjukkan pbil : "<<*pbil<<endl;
cout<<endl;
}
a. Pertama kita buat variable yang kita isi dengan angka 19 dan 80, lalu kita buat variable *pbil = &bil1. Lalu kita buat output yang dibutuhkan dengan input variable yang sesuai dengan outputnya
b. Lalu ditengah kita masukkan pbil = &bil2 sehingga nilai pbil sama dengan alamat bil2, lalu kita buat output yang dibutuhkan dengan input yang sesuai.
3.
#include <iostream>
using namespace std;
main()
{
float *x1, *x2, y;
y=20.18;
x1=&y;
x2=x1;
cout<<"nilai variabel y : "<<y<<endl;
cout<<"nilai yang ditunjuk x1 : "<<*x1<<endl;
cout<<"nilai yang ditunjuk x2 : "<<*x2<<endl;
}
a. Pertama kita buat variable yang dibutuhkan, lalu kita masukkan nilai y adalah 20.18
b. Selanjutnya kita buat x1 adalah alamat y, dan x2 sama dengan x1, lalu kita buat output yang dibutuhkan dan kita panggil disana.
4.
#include <iostream>
using namespace std;
main()
{
int bilangan [3], *pointer;
bilangan[0] = 1;
bilangan[1] = 2;
bilangan[2] = 3;
pointer = &bilangan[0];
cout<<"nilai "<<*pointer<<"ada di alamat memori "<<pointer<<endl;
cout<<"nilai "<<*(pointer+1)<<"ada di alamat memori "<<pointer+1<<endl;
cout<<"nilai "<<*(pointer+2)<<"ada di alamat memori "<<pointer+2<<endl;
}
a. Pertama kita buat variable array yaitu bilangan dengan isinya 3, dan variable *pointer untuk menampung alamat pointer
b. Setelah itu kita isi di setiap variable array tadi dengan angka disini saya menggunakan angka 1 sampai 3
c. Lalu kita buat persamaan yaitu variable pointer sama dengan alamat dari bilangan [0]
d. Setelah itu kita buat output yang dibutuhkan dengan input yang menyesuaikan pertama dengan angka 0 lalu selanjutnya semakin menambah
5.
#include <iostream>
#include <conio.h>
using namespace std;
main()
{
int a, b;
int *pa, *pb;
cout<<"Masukkan nilai a : "; cin>>a;
cout<<"Masukkan nilai b : "; cin>>b;
cout<<endl;
pa=&a;
pb=&b;
cout<<"*pa : "<<pa<<endl;
cout<<"*pb : "<<pb<<endl<<endl;
if (pa<pb)
cout<<"pa menunjuk ke memori lebih rendah dari pb"<<endl;
if(pa==pb)
cout<<"pa menunjuk ke memori sama dengan dari pb"<<endl;
if(pa>pb)
cout<<"pa menunjuk ke memori lebih tinggi dari pb"<<endl;
getch();
a. Pertama kita buat variable a dan b juga variable *pa dan *pb sebagai alamat. Lalu kita buat output yang dibutuhkan dengan inputnya nilai yang dimasukkan kita larikan ke variable a dan b
b. Setelah itu kita buat persamaan bahwa pa sama dengan alamat dari a dan pb sama dengan alamat dari b
c. Setelah itu kita gunakan kodefungsi if, dengan masing-masing mempunyai outputnya masing-masing
6.
#include <iostream>
#include <conio.h>
using namespace std;
main()
{
int array[5], *p;
p=array;
*p=5;
array[1]=array[0];
array[2]=*p+9;
array[3]=*(p+1)*3;
array[4]=*(array+2);
for (int x=0; x<5; x++)
{
cout<<"array["<<x<<"] : "<<array[x]<<endl;
}
getch ();
}
a. Pertama kita buat variable array dengan isi 5, dan *p sebagai alamat dari p nantinya.
b. Lalu kita buat p = array, selanjutnya kita masukkan isi p adalah 5
c. Array 1 sama dengan array 0, array 2 adalah isi p ditambah 9, array 3 adalah isi array 1 dikalikan dengan 5, array 4 adalah sama dengan array 2
d. Lalu kita gunakan fungsi perulangan untuk menampilkan nilai-nilai yang telah kita masukkan tadi
Selamat Mencoba!!
Tidak ada komentar:
Posting Komentar