Algoritma dan Struktur Data Praktikum 3. Pointer

dokumen-dokumen yang mirip
Achmad Solichin.

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

pada program di atas, akan ditampilkan alamat memori dari variabel x, bukan nilai x.

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

BAB 10 POINTER 5.1 Tujuan 5.2 Pengertian Pointer Perubah dinamis pointer

MODUL. Pointer. Modul Praktikum C++ Dasar Pemrograman Komputer JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNIK

Algoritma dan Struktur Data. Pertemuan 5 Pointer

Algoritma Pemrograman & Struktur Data

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs.

Algoritma dan Struktur Data. Ramos Somya

MODUL V POINTER DAN STRING

Senarai berantai. linked list. Pertemuan keenam Struktur data st3telkom.ac.id. by : tenia wahyuningrum & Sisilia Thya Safitri

POINTER. Pemrograman Bahasa C++

A. TUJUAN PEMBELAJARAN

PENGENALAN BAHASA C DAN C++

Pendahuluan Pemrograman Mikrokontroler

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

P3 Dasar Struktur Data TIF42/SIF42

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

DISUSUN OLEH BAB XI POINTER. alamat. memori. sepenuhnya. pointer. dan Pointer. menggunakan. menyebabkan. Alamat. untuk.

Modul 1 Dasar Dasar Bahasa Pemrograman C

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

Minggu ke-10 Pointer. Pendahuluan. Objektif. Bahan Bacaan

LIST. Dewi Sartika, M.Kom

Algoritma dan Struktur Data. Pertemuan 6 Alokasi Memori Dinamis

01. Review Array, Pointer dan Struktur

SENARAI BERANTAI (LINK LIST)

8. Pointer. S. Indriani L, M.T

PRAKTIKUM 12 POINTER 2

LATIHAN SOAL (FUNGSI & PROSEDUR)

POINTER. Tim Alpro Teknik Informatika

Pointer (Penunjuk) Modul 6

Tipe Data dan Operator

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

SUB PROGRAM P E N G A N TA R P R O G R A M S T U D I. Institut Teknologi Sumatera

Pengenalan Struktur Data. Farah Zakiyah Rahmanti 2014

Pointer dan Array Dinamik. IF2121 / Algoritma dan Struktur Data Sem /2018

POINTER. Tim Alpro Teknik Informatika

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

Pendahuluan Struktur Data. Nisa ul Hafidhoh

PRAKTIKUM 11 POINTER 1

Instalasi Code::Blocks, Tipe Data, Variabel, Konstanta, Operator, Input-Output dan Flowchart

elemen Dasar Bahasa Pemrograman C

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK

ARRAY DIMENSI 1 & 2. Array dapat didefinisikan sebagai suatu himpunan hingga elemen yang terurut dan homogen.

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Identifier dan Tipe Data

REVIEW ARRAY. Institut Teknologi Sumatera

BAB VII. FUNCTION. A. Pengantar Function. #include <iostream.h> #include <conio.h> { clrscr(); // detail function

ASD. Alokasi Memori Dinamis

BAB III POINTER. Type *variabel-name

Pertemuan 7. REVIEW dan QUIS

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

By : Agus Priyanto, M.Kom ST3 Telkom Purwokerto Structure and Pointer

Pertemuan 2 ARRAY DIMENSI 1 & 2

Algoritma dan Struktur Data. Linked List

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

PEMROGRAMAN BERORIENTASI OBJEK. Tipe Data. Budhi Irawan, S.Si, M.T

P 4 Bab 3 : Dasar Pemrograman C

PRAKTIKUM 11 POINTER 1

Selection / Pemilihan PEMILIHAN

LINKED LIST. TUJUAN UMUM Memahami konsep linked list TUJUAN KHUSUS

Algoritme dan Pemrograman

Pointer. Objektif. Bahan Bacaan

OPERATOR BAHASA C. Obyektif : 4. Mengetahui macam-macam operator dalam Bahasa C. 5. Mengetahui dan dapat menggunakan format pada tiap tipe data..

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

PERTEMUAN V PEMROGRAMAN TERSTRUKTUR DENGAN VISUAL C Setiap bahasa C mempunyai satu fungsi dengan nama main (program utama).

Pointer, File Header & Makro

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-10 Pointer 1

Review : Sifat Implementasi Linear List dengan Array

Pointer (Part 1) Alamat dan Pointer. Dadang mulyana. sederhana.

Program di bawah ini untuk membaca data kemudian menampilkannya. // array dengan 10 elemen bertipe integer

PERTEMUAN 7 REVIEW (QUIZ)

MODUL 9 STRUCT (STRUKTUR)

Pert 2 Struktur Data (mengajarkomputer.wordpress.com) ARRAY DIMENSI 1 & 2

Kisi-Kisi Ujian Akhir Semester Algoritma dan Pemrograman Lanjut

Contoh Program C++ Sederhana. Script Program : #include<conio.h> #include<stdio.h> main() { cout<< Selamat Datang Di Lab H <<endl;

Data structure :Metode LINK LIST. Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta

OPERATOR, PERULANGAN DAN SELEKSI KONDISI

DIKTAT MATA KULIAH PEMROGRAMAN I BAB XI POINTER

STRUKTUR DATA Pertemuan 1 s.d 8

BAB X. Struct Dalam C++, kita dapat membuat sebuah tipe data baru. Maka penulisan variabel baru kita akan menjadi:

PERTEMUAN 3 KONSEP TIPE DATA

BAB I. LARIK (ARRAY) Array (larik) ialah penampung sejumlah data sejenis (homogen) yang menggunakan satu identifier (pengenal).

POINTER. Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN Overview. Definisi Pointer Operasi Pointer Pointer dan Argumen Fungsi

04. Single Linked List

ALGORITMA (2) Mengupas Kentang

BAB 5 PERULANGAN DAN ARRAY

STRUCT. TUJUAN UMUM Memahami tipe struct dan implementasi dalam program

STRUKTUR DATA MENGGUNAKAN C++ Windha Mega PD, S.Kom

# FOUR LOOPING. JAWABAN 1. #include <stdio.h> #include <conio.h> #define pi void main(){

P06 Pointer dan Fungsi

Pertemuan 2 ARRAY DIMENSI 1 & 2

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

Algoritma dan Struktur Data. Pointer Pada Struct

Pengenalan Array. Array Satu Dimensi

Pointer. Yuliana Setiowati

KONSEP POINTER DAN LINKED LIST

VARIABEL, TIPE DATA DAN EKSPRESI Bab 2

Transkripsi:

Pointer Tujuan : mahasiswa dapat mendefinisikan pointer mahasiswa dapat memahami operasi pada pointer mahasiswa dapat menerapkan pointer pada contoh kasus Pengertian Pointer merupakan variabel yang digunakan untuk menunjukkan suatu alamat memori komputer. Deklarasi Pointer dapat dinyatakan dalam C ++ menggunakan sintaks berikut: tipe_data *nama_pointer; Operator pointer: &nama_pointer menunjukkan alamat nama_pointer *nama_pointer menunjukkan nilai dari alamat nama_pointer Contoh 1 int a, b; a = 30; b = a - 5; int *ubah; ubah = &a; *ubah = 20; ubah = &b; *ubah = 10; cout<<"\nnilai 1 = "<< a <<" dan nilai 2 = "<< b; Jelaskan tentang sintaks yang terdapat pada Contoh 1!

Operasi pada Pointer Algoritma dan Struktur Data Pada pointer terdapat 3 jenis operator, yaitu operator penugasan, operator aritmatika, dan operator logika. a. Operator Penugasan Nilai dari suatu variabel pointer dapat disalin ke variabel pointer yang lain. Contoh 2 float nilai,*p1,*p2; nilai = 14.54; cout << "nilai = << nilai <<", alamatnya "<<&nilai; p1 = &nilai; p2 = p1; cout << "\n nilai p1 = << *p2 <<", p1 menunjuk alamat "<<p1; cout << "\n nilai p2 = << *p2 <<", p2 menunjuk alamat" <<p2; Buatlah contoh lain untuk Operator Penugasan dan jelaskan! b. Operator Aritmatika Pada pointer dapat dilakukan operasi aritmatika, yaitu operasi penambahan dan pengurangan. Namun operasi ini hanya terbatas untuk tipe data integer saja. Contoh 3 void int nilai[5], *penunjuk; clrscr(); nilai[0] = 125; nilai[1] = 345; nilai[2] = 750; nilai[3] = 800; nilai[4] = 900; 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; cout<<"\nnilai "<<*(penunjuk+3)<<" ada di alamat memori"<<penunjuk+3; cout<<"\nnilai "<<*(penunjuk+4)<<" ada di alamat memori"<<penunjuk+4; Buatlah contoh lain untuk Operator Aritmatika dan jelaskan!

c. Operator Logika Pada pointer dapat digunakan operator logika, yaitu if (pernyataan) perintah; else perintah; Contoh 4 void 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 cout<<"pa menunjuk ke memori lebih TINGGI dari pb\n"; Buatlah contoh lain untuk Operator Logika dan jelaskan! Structure of Pointer Pointer dapat diakses dengan struktur. Variabel pointer dari struktur dapat dideklarasikan sebagai berikut. *nama_pointer;

Pengaksesan Struktur Elemen dari struktur melalui pointer dapat diakses dengan dua cara: a. Merujuk pointer ke alamat lain untuk mengakses memori Deklarasi untuk mengakses anggota stuktur melalui pointer dapat dilihat pada cara berikut. *nama_pointer, nama_objek; nama_pointer = &nama_objek; atau ; *nama_pointer, nama_objek; nama_pointer = &nama_objek; atau nama_objek; *nama_pointer =&nama_objek; Elemen pointer struktur dapat diakses menggunakan: (*nama_pointer).elemen atau nama_pointer -> elemen

Contoh 5 struct orang char nama[30],alamat[30]; int umur; ; struct orang *saya, s; saya = &s; cout << "Nama : "; cin >> saya->nama; cout << "Alamat : "; cin >> saya->alamat; cout << "Umur : "; cin >> saya->umur; cout << "=================================" <<endl; cout << saya->nama <<", Kota "<< saya->alamat <<", " << saya->umur <<" tahun"; Contoh 6 struct waktu int jam; int menit; ; struct rencana struct waktu *awal; struct waktu *akhir; ; struct waktu a; struct waktu b; struct rencana kerja = &a, &b; int kerja.awal->jam = 2; kerja.awal->menit= 30; kerja.akhir->jam = 3; kerja.akhir->menit = 45; cout<<"waktu Awal : "<<endl; cout<<kerja.awal->jam<<" jam "<<kerja.awal->menit<<" menit"<<endl; cout<<"waktu Akhir : "<<endl; cout<<kerja.akhir->jam<<" jam "<<kerja.akhir->menit<<" menit"<<endl;

b. Menggunakan alokasi memori dinamis Untuk mengakses elemen struktur menggunakan pointer, memori dapat dialokasikan secara dinamis menggunakan malloc() function yang terdefinisi di bawah header stdlib.h. Deklarasi untuk menggunakan malloc() nama_pointer = (cast-type*)malloc(byte-size) Contoh 7 #include <stdio.h> #include <stdlib.h> struct name int a; float b; char c[30]; ; int struct name *ptr; int i,n; printf("masukkan n: "); scanf("%d",&n); ptr=(struct name*)malloc(n*sizeof(struct name)); /* Above statement allocates the memory for n structures with pointer ptr pointing to base address */ for(i=0;i<n;++i) printf("masukkan masing-masing string, bilangan integer dan floating :\n"); scanf("%s%d%f",&(ptr+i)->c,&(ptr+i)->a,&(ptr+i)->b); printf("\ntampilkan informasi yang telah dimasukkan:\n"); for(i=0;i<n;++i) printf("%s\t%d\t%.2f\n",(ptr+i)->c,(ptr+i)->a,(ptr+i)->b); return 0;