Saturday, 10 June 2017

Praktikum 2 Modul 7

Terdapat sebuah array yang memiliki hanya satu elemen yaitu 5 dan tampilkan pada indeks ke 0 dalam array, sementara alamat indeks selebihnya bernilai 0, buatlah program yang dapat mengisi alamat indeks yang lain melalui nilai elemen indeks ke 0.
(contoh penyelesaian kasus di atas pada program dibawah ini bersifat statis)

#include
#include
using namespace std;

int main()
{
int x[5], *p, k;

p = x;

x [0] = 5; //
x [1] = x[0]; // x[1] di isi dengan x[0] sehingga x[1] = 5

x[2] = *p + 2; // x[2] di isi dengan x[0] + 2 sehingga x[2] = 7

x[3] = *(p+1)-3; // x[3] di isi dengan x[1] - 3 sehingga x[3] = 2

x[4] = *(x+2); // x[4] di isi dengan x[2] sehingga x[4] = 7

cout<<"Aray setelah diisi = "<
cout<

for(k=0; k<5 k="" span=""> // pemanggilan elemen aray yang baru
{
cout<<"x["<
}
getch ();
return 0;
}

Hasil Running :




Kerangan :

Pada program diatas menggunakan pointer array bersipat statis. Pendeklarasian menggunakan tipe data integer dengan variabel x array berindeks 5 sebagai looping program menggunakanan statmen for, *p (reference pointer) sebagai penunjuk atau penyimpanan alamat memory dan variabel k yang digunakan nanti untuk perulangan for.

Pada hasil runing tidak ada inputan data hal ini dikarenakan ada sebuah penetapan nilai variabel awal pada x[0] = 5.

untuk x[1] =x[0] yang artinya x[1] bernilai variabel  5, karena penetapan awalnya adalah 5.
x[2]=*p + 2 bernilai sama dengan 7 kenapa ? karena ada sebuah pointer *p yang menunjukan nilai ini berupa data x[0] + 2

x[3]= *(p+1) – 3 sama dengan 2, masih bingung? Pada *(p+1) bisa dikatakan x[1] hal ini dikarenakan ada sebuah penunjukan data ( reference) pada pendeklarasian awal p=x atau p adalah x
x[4] = *(x +2) bisa dikatakan nilai variabel ini sama dengan nilai variabel x[2].

0 comments:

Post a Comment