Assalamualaikum wr.wb.

 

haloo teman teman redaksiana, kali ini saya Tito Victor Rysona dari kelas D3 TEKNIK ELEKTRONIKA B , lama tak jumpa nih, udah enggak sabar menunggumaterinya ya , yuk lah langsung cuss.

 

 

Apa itu ponter ????

    pointer adalah suatu variable yang menyimpan alamat dari suatu variable yang ditunjuk oleh pointer yang bersangkutan. Karena data yang ditunjuk oleh pointer bervariasi, makan 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 mempunyai kapasitas besar, melalui suatu fungsi. Pointer sangat erat kaitannya dengan array, sehingga variable pointer dapat menggantikan fungsi dari variable array.

Operator pointer

Dalam penggunaan pointer di bahasa C digunakan dua operator yaitu operator asterisk (*) dan operator ampersand (&). Operator asterisk digunakan untuk mendapatkan nilai dari variabel pointer. Jadi alamat yang didapat oleh variabel pointer dapat merujuk nilai dari variabel alamat. Operator ampersand digunakan untuk mendapatkan alamat memori dari variabel yang dituju.
Mari kita langsung cuuss coba ngerjain soal 
  1. Buatlah program untuk menyimpan bilangan pecahan acak sebanyak 12 bilangan, yang disimpan dalam suatu array. Urutkan bilangan-bilangan tersebut dan tampilkan sebelum dan sesudah diurutkan menggunakan index array dan pointer.

pertama tama buat terlebih dahulu algoritmanya

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main()
{
static int a,b[16],c,d;
char e[16],*f;
menu:
printf(“\n Bilangan sebelum diurutkan …\n”);
for(a=1;a<13;a++)
{
printf(” Angka ke %d = “,a);
scanf(“%d”,&b[a]);
}
printf(“\n Bilangan 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;
}
}

berikut adalah hasil dari algoritma diatas

2. Buatlah program yang menyimpan data karakter ‘X’ pada suatu array berdimensi 12 x 12, kemudian tampilkan menggunakan index                 pointer

pertama tama buat terlebih dahulu algoritmanya

#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;
}
}

berikut adalah hasil dari algoritma diatas

 

Nah… cukup sekian pembahasan kali ini

Semoga bermanfaat dan mohon maaf jika ada salah kata

Wassalamu’alaikum Wr.Wb