Program Mengisi Indeks Array - Pointer C/C++
Studi Kasus Praktikum 7.2 (Struktur Data - Modul 7)
Terdapat sebuah array yang memiliki hanya satu elemen yaitu 5 dan tempatkan pada indeks ke 0 dalam array, sementara alamat indeks selebihnya bernilai 0. Buatlah program yang dapat mengisi indeks yang lain melalui nilai elemen indeks ke 0 (contoh penyelesaian kasus diatas pada program dibawah ini adalah statis).#include <iostream> #include <conio.h> using namespace std; int main() { int x[5], *p, k; p = x; x[0] = 5; //x[0] diisi dengan 5 sehingga x[0] = 5 x[1] = x[0]; //x[1] diisi dengan x[0] sehingga x[1] = 5 x[2] = *p + 2; //x[2] diisi dengan x[0] + 2 sehingga x[2] = 7 x[3] = *(p + 1) - 3; //x[3] diisi dengan x[1] - 3 sehingga x[3] = 2 x[4] = *(x + 2); //x[4] diisi dengan x[2] sehingga x[4] = 7 cout << "Array setelah diisi = " << endl; cout << endl; for (k = 0; k < 5; k++) { cout << "x [" << k << "] = " << x[k] << endl; } getch(); return 0; }
Hasil running
Program ini terdapat 3 variabel yaitu p = x yaitu 5, variabel k digunakan untuk perulangan, variabel array x, dan terdapat fungsi pointer. Array tersebut memiliki 5 elemen, akan tetapi didalam elemen tersebut belum terdapat nilai. Untuk memasukan nilai pada elemen array akan menggunakan fungsi pointer. Pada elemen pertama x[0] angka diisi dengan nilai 5 dengan penulisan x[0] = 5. Untuk elemen kedua diisi dengan elemen yang pertama yaitu nilai 5 dengan persamaan nilai x[1] = x[0]. Untuk elemen ke tiga x[1] akan dilakukan fungsi pointer dengan penulisan *p + 2, yang artinya menunjukkan nilai di p yaitu 5 dan ditambah 2 hasilnya 7. Untuk elemen ke empat x[3] dilakukan fungsi pointer *(p + 1) - 3 yang artinya *(p + 1) menunjukan indeks ke 1 yaitu x[5] dengan nilai 5 kemudian dikurangi 3 hasilnya 3. Dan untuk elemen ke lima x[4] akan diisi nilai dengan penulisan pointer *(x + 2) yang artinya menunjukan indeks ke dua x[2] hasilnya adalah 7. Pada penujukan indeks didalam kurung nilai awal variabel adalah 0
0 Response to "Program Mengisi Indeks Array - Pointer C/C++"
Post a Comment