POINTER (VAR.PENUNJUK)

Slides:



Advertisements
Presentasi serupa
POINTER.
Advertisements

PERTEMUAN IV POINTER Pointer adalah suatu variabel penunjuk yang menunjuk pada suatu alamat memori komputer Pointer merupakan.
PERTEMUAN VIII POINTER
ARRAY ??.
Pointer Konsep Pemrograman.
Pointer.
POINTER
ARRAY OF STRUCT Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Pemrograman Dasar Pointers.
Pointer Dr. Lily Wulandari.
POINTER (VAR.PENUNJUK)
P O I N T E R. Merupakan sebuah variabel yang berisi alamat dari variabel lain. Suatu pointer dimaksudkan untu menunjukan ke suatu alamat memori sehingga.
STRUCT OF ARRAY Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
POINTER.
Teknik Pemrog. Terstruktur 2
Tenia Wahyuningrum pointers Tenia Wahyuningrum
Pointer (Part 1).
Array dan Pointer 6 Nopember Definisi Array Array adalah sebuah variabel yang menyimpan sekumpulan data yang memiliki tipe sama Setiap data menempati.
Pointer BY HARIFUDDIN.
Bab2 ARRAY (LARIK).
Pertemuan 12 Array (Larik) & struct Erna Sri Hartatik
Linked List & POINTER Pertemuan POINTER
STRUKTUR.
8. Pointer S. Indriani L, M.T 8. Pointer.
STRUKTUR DATA MENGGUNAKAN C++ Windha Mega PD, S.Kom
Pertemuan 21 POINTER Bag.1 Dasar Pemrograman Renni Angreni, S.Kom.
ARRAY (Array Dimensi Satu) Pertemuan 15 Dasar Pemrograman
Elemen dasar Pertemuan 3.
ARRAY (Array Dua Dimensi) Pertemuan 16 Dasar Pemrograman
ARRAY (LARIK)
POINTER
S T R U K T U R.
STRUKTUR DATA Pengenalan C++
TYPE DATA ,VARIABEL &KONSTANTA Dalam C++
POINTER 6.3 & 7.3 NESTED LOOP.
Variabel ARRAY.
STRUKTUR DATA array.
ARRAY.
PERNYATAAN DASAR DALAM C++.
Struktur Data (Data Structure) – IS 2313
Pointer Variabel pointer sering disebut sebagai variabel yang menunjuk obyek lain, karena variabel pointer atau pointer adalah variabel yang berisi alamat.
POINTER (VAR.PENUNJUK)
Pointer Pertemuan 10 Bahasa C.
Pointer FARID WAJDI YUSUF.
P O I N T E R.
Pointer Oleh : Sri Supatmi,S.Kom.
Pertemuan 2 ARRAY DIMENSI 1 & 2.
STRUCT OF ARRAY.
Program komputer Sebuah program komputer yang ditulis dengan bahasa apapun dapat dipandang sebagai sebuah himpunan operasi yang dikerjakan pada data-data.
STRUCT OF ARRAY Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Operator dan Operasi Input Output pada C++ Pertemuan 11
Tenia Wahyuningrum pointers Tenia Wahyuningrum
Algoritma dan Struktur Data
~ PERTEMUAN 4 KONSEP TIPE DATA ~
Algoritma dan Struktur Data
Algoritma dan Struktur Data
Algoritma dan Struktur Data
Pointer Oleh : Sri Supatmi,S.Kom.
STRUKTUR DATA Array atau Larik.
ARRAY (LARIK)
STRUCTURE Struktur (Structure = struct) merupakan suatu struktur data yang terdiri dari satu atau lebih variabel yang bertipe data.
Algoritma dan Struktur Data
PEMROGRAMAN TERSTRUKTUR
Array.
BAHASA PEMROGRAMAN II DEDED RAMAD KAMDA, S. KOM.
ARRAY (LARIK)
array Array merupakan tipe data yang menampung
Pertemuan 3 Input/output Statement Assignment Statement
POINTER
Transcript presentasi:

POINTER (VAR.PENUNJUK) Pengertian Merupakan var. yg berisi alamat memori dari objek (variabel) lain. Operator pointer (ada 2): 1. Operator & 2. Operator *

OPERATOR POINTER Operator & menghasilkan alamat dari operand-nya. menghasilkan nilai yg berada pada sebuah alamat

Deklarasi Pointer  Tipedata *nama_pointer; Tipedata mendefinisikan tipe dari objek yg ditunjuk oleh pointer. Contoh:  int *Px;  char *sh;

Contoh program1 #include <stdio.h> #include <conio.h> #include <iostream.h> void main() { int x, y; // x dan y bertipe int int *px; // px pointer yang menunjuk objek clrscr(); x = 87;

px = &x; // px berisi alamat dari x y = *px; // y berisi nilai yang ditunjuk px cout<<"Alamat x = "<< &x; cout<<"\nIsi px = "<< px; cout<<"\nIsi x = "<< x; cout<<"\nNilai yang ditunjuk oleh px = "<< *px; cout<<"\nNilai y = "<< y; getch( ); }

OPERASI POINTER 1. Operasi penugasan Nilai dari suatu variabel pointer dapat disalin ke variabel pointer yang lain. contoh: y = 35; x1= &y; x2= x1;

Contoh Program 2 #include <iostream.h> #include <conio.h> void main() { float *x1, *x2, y; y = 13.45; x1 = &y; /* Alamat dari y disalin ke variabel x1 */ x2 = x1; /* Isi variabel x1 disalin ke variabel x2 */ cout<<"Nilai variabel y = "<<y<<" ada di alamat "<<x1; cout<<"\nNilai variabel y = "<<y<<" ada di alamat "<<x2; getch(); }

OPERASI POINTER 2. Operasi aritmatika Suatu variabel pointer hanya dapat dilakukan operasi aritmatika dengan nilai integer saja. Operasi yang biasa dilakukan adalah operasi penambahan dan pengurangan. Operasi penambahan dengan suatu nilai menunjukkan lokasi data berikutnya (index selanjutnya) dalam memori. Begitu juga operasi pengurangan.

Contoh Program3 #include <iostream.h> #include <conio.h> void main(){ int nilai[3], *penunjuk; clrscr(); nilai[0] = 125; nilai[1] = 345; nilai[2] = 750; penunjuk = &nilai[0]; cout<<"Nilai "<<*penunjuk<<" ada di alamat memori "<<penunjuk; cout<<"\nNilai "<<*(penunjuk+1)<<" ada di alamat memori"<<penunjuk+1; cout<<"\nNilai "<<*(penunjuk+2)<<" ada di alamat memori"<<penunjuk+2; getch(); }

Contoh Program4 3. Operasi Logika #include <iostream.h> #include <conio.h> void main() { int *pa, *pb, a = 100, b = 10; clrscr(); pa = &a; pb = &b; if (*pa < *pb) {cout<<"pa menunjuk ke memori lebih RENDAH dari pb\n";} else if(*pa == *pb) {cout<<"pa menunjuk ke memori yang SAMA dengan pb\n";} else if(*pa > *pb) {cout<<"pa menunjuk ke memori lebih TINGGI dari pb\n";} getch(); }

ARRAY DAN POINTER // more pointers #include <iostream.h> #include <conio.h> int main () { char array[5]; char * p; p = array; *p = 'a'; p++; *p = 'b'; p = &array[2]; *p = 'c'; p = array + 3; *p = 'd'; p = array; *(p+4) = 'e'; for (int n=0; n<5; n++) cout << array[n] << ", "; getch(); }

POINTER DGN ARRAY #include <iostream.h> #include <conio.h> void main(){ int tgl_lahir[] = { 13,9,1982 }; int *ptgl; ptgl = tgl_lahir; /* ptgl berisi alamat array */ cout<<"Diakses dengan pointer\n"; cout<<"Tanggal = "<< *ptgl; cout<<"\nBulan = "<< *(ptgl + 1); cout<<"\nTahun = "<< *(ptgl + 2); cout<<"\nDiakses dengan array biasa\n"; cout<<"Tanggal = "<< tgl_lahir[0]; cout<<"\nBulan = "<< tgl_lahir[1]; cout<<"\nTahun = "<< tgl_lahir[2]; getch();}

PEMBERIAN NILAI ARRAY DGN POINTER //Contoh Program7 #include <iostream.h> #include <conio.h> void main(){ int x[5], *p, k; clrscr(); p = x; 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 */ x[4]=*(p+2)-1; for(k=0; k<5; k++) cout<<"\nx["<<k<<"] = "<< x[k]; getch(); }

Contoh struct dengan pointer #include <iostream.h> #include <conio.h> struct orang { char nama[30],alamat[30]; short umur; }; main(){ struct orang *saya ; int i,n; cout<<"Jumlah data : ";cin>>n;

for(i=1;i<=n;i++) { cout<<"Nama : ";cin>>saya->nama; cout<<"Umur : ";cin>>saya->umur; cout<<endl; } { cout<<"Data ke ["<<i<<"] "<<"bernama " <<saya->nama<<" dan berumur " <<saya->umur<<" tahun"; cout<<endl; } getch(); }

Latihan 1 buat inputan scr dinamis // more pointers #include <iostream.h> #include <conio.h> int main () { char array[5]; char * p; p = array; *p = 'a'; p++; *p = 'b'; p = &array[2]; *p = 'c'; p = array + 3; *p = 'd'; p = array; *(p+4) = 'e'; for (int n=0; n<5; n++) cout << array[n] << ", "; getch();

Jawaban // more pointers #include <iostream.h> #include <conio.h> int main () { char array[5]; char * p; p = array; for (int i=0;i<=4;i++) { cout<<"\nInput array["<<i<<"]=";cin>>*p; p++; } for (int n=0; n<5; n++) cout << array[n] << ", "; getch();}

Latihan 2 berikan keterangan dan outputnya #include <iostream> #include <conio> const int ARRAY = 5; int main () { int Numbers [ARRAY] = {0, 100, 200, 300, 400}; const int *pInt = Numbers; for (int nIndex = 0; nIndex < ARRAY; ++ nIndex) cout << "Element [" << nIndex << "] = " << *(pInt + nIndex) << endl; getch();}

Contoh array pointer #include <iostream> #include <conio> const int array = 5; int main () { int A [array]; const int *pInt = A; for(int i=0;i<array;i++) {cout<<"Input array : ";cin>>A[i];} for (int n=0; n<array; n++) { cout << "Element [" << n << "] = " <<*(pInt) << endl; pInt++;} getch(); }