Assalamualaikum Wr.Wb.
Perkenalkan saya Dendy Meireza dari kelas 1 D3 Elka A akan menjelaskan apa itu 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.
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.
Langsung cara pengaplikasian
Tugas 9.4.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;
}
}
Masukkan angka secara bebas lalu hasilnya akan menjadi seperti ini
Tugas 9.4.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;
}
}
Masukkan nilai x = 4 dan y = 5 maka hasilnya adalah
Sekian dari saya. Wassalamualaikum wr.wb.
Recent Comments