Assalamu’alaikum Warahmatullahi Wabarakatuh.

Haii sobat hidup !! Salam hidup !!

Pada kesempatan kali ini, kita akan membahas materi selanjutnya setelah materi VARIABEL DAN FUNGSI STRING. Uwaww materi apakah ituuu??

Yakk benar sekali, kita akan membahas materi tentang VARIABEL POINTER. Tapi tunggu duluu.. seperti biasa, sebelum masuk ke dalam pembahasan teori, ada tujuan yang ingin kita capai dalam belajar mengenai materi ini, sobat hidup. Apasih tujuannya?

TUJUAN dari percobaan kali ini ialah Mempelajari penggunaan variabel pointer yang dipadukan dengan variabel bertipe integer, array dan string serta penggunaan ponter dalam suatu fungsi, baik sebagai penunjuk fungsi atau sebagai argument fungsi.

Nah setelah mengetahui tujuan dari percobaan kali ini, baru deh kita masuk ke dalam pembahasan teori VARIABEL POINTER.

Suatu pointer adalah suatu variabel yang menyimpan alamat dari suatu variabel yang ditunjuk oleh pointer yang bersangkutan. Karena data  yang ditunjuk oleh pointer bervariasi, maka tipe dari pointer harus disesuaikan dengan tipe data yang ditunjuk, untuk memperkirakan ukuran data yang ditunjuk, sehingga alokasi memori terjaga dengan baik. Pointer berguna untuk mentransfer data yang memiliki kapasitas besar, melalui suatu fungsi. Pointer sangat erat kaitannya dengan array, sehingga variabel pointer dapat menggantikan fungsi dan variabel array.

Nahh sobat hidup, berakhir sudah pembahasan teori dari VARIABEL POINTER itu, sekarang agar lebih jelas dan lebih paham, kita langsung saja melakukan percobaannya. Let’s go…

  1. Membuat program untuk menyimpan bilangan pecahan acak sebanyak 12 bilangan, disimpan dalam suatu array. Mengurutkan bilangan tersebut dan menampilkan hasil sebelum dan sesudah diurutkan.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
static int a,b[16],c,d;
char e[16],*f;
menu:
printf(“\n Angka sebelum diurutkan …\n”);
for(a=1;a<13;a++)
{
printf(” Angka ke %d = “,a);
scanf(“%d”,&b[a]);
}
printf(“\n Angka setelah diurutkan …\n”);
for(a=1;a<13;a++)
{
for(d=a+1;d<13;d++)
{
if(*(b+a)>*(b+d))
{
c=*(b+d);
*(b+d)=*(b+a);
*(b+a)=c;
}
}
printf(” Angka ke %d = %d\n”,a,*(b+a));
}
printf(“\n Ketik ‘exit’ untuk keluar …\n”);
gets(e);
printf(” “);
gets(e);
f=strlwr(e);
if(strcmp(f,”exit”)==0);
else
{
system(“cls”);
goto menu;
}
}

Ketik program di atas, lalu klik Build and Run, maka akan muncul hasil seperti gambar di bawah

  • Facebook
  • Twitter
  • Google+
  • Pinterest

2. Membuat program yang menyimpan data karakter ‘X’ pada suatu array berdimensi 12×12, kemudian menampilkan menggunakan index pointer.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
static int a[12][12],b,c,*d,e,f,g;
char h[8],*i;
menu1:
g=1;
for(e=0;e<12;e++)
{
for(f=0;f<12;f++)
a[e][f]=48;
}
menu2:
system(“cls”);
d=&a;
printf(“\n\r”);
for(e=1;e<13;e++)
{
for(f=1;f<13;f++)
printf(“%2c”,*d++);
puts(“”);
}
if(g>1)
{
printf(“\n Ketik ‘lanjut’ untuk melanjutkan.”);
printf(“\n Ketik ‘ulang’ untuk mengulang dari awal.”);
printf(“\n Ketik ‘exit’ untuk keluar.\n “);
gets(h);
gets(h);
i=strlwr(h);
if(strcmp(i,”lanjut”)==0)
{
g=1;
goto menu2;
}
else if(strcmp(i,”ulang”)==0)
goto menu1;
else if(strcmp(i,”exit”)==0);
else goto menu2;
}
else
{
g++;
printf(“\n Masukkan koordinat matrix dengan jarak 1 – 12 …\n “);
scanf(“%d%d”,&b,&c);
–b;
–c;
a[b][c]=120;
goto menu2;
}
}

Klik Build and Run, maka akan muncul hasil seperti gambar di bawah.

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Nah setelah muncul hasil seperti gambar di atas, lalu kita coba memasukkan koordinat  yang kita inginkan, disini saya mencoba memakai kordinat 5 8, maka akan muncul hasil seperti berikut :

  • Facebook
  • Twitter
  • Google+
  • Pinterest

Simbol ‘X’ disitu berada pada koordinat 5 8, sesuai dengan yang kita pilih tadi. Kemudian jika ingin melanjutkan program, sobat  hidup ketik lanju. Jika ingin mengulang dari awal, sobat hidup ketik ulang. Dan jika sobat hidup ingin mengakhiri program tersebut, sobat hidup bisa ketik exit.

Wahaiii sobat hidup, selesai sudah pembahasan kita mengenai VARIABEL POINTER ini, kiranya pembahasan kali ini cukup sampai disini dulu sobat hidup. Sampai ketemu lagi di pembahasan selanjutnya… baaaaayyyy..

SALAM HIDUP!!!

Wassalamu’alaikum Wr.Wb