Struct & Pointer. Agung Sasongko, M.Kom

dokumen-dokumen yang mirip
PEMROGRAMAN BERORIENTASI OBJEK. Tipe Data. Budhi Irawan, S.Si, M.T

Pengenalan Array. Array Satu Dimensi

Array Dimensi Satu. Pendahuluan. Slamet Kurniawan, S.Kom

DIKTAT MATA KULIAH PEMROGRAMAN I BAB IX STRUCT. tipe_data_1 variabel_1 ; tipe_data_2 variabel_2 ; tipe_data_n variabel_n ;

MENGENAL POINTER. Mengetahui Alamat variabel. Output :

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

Pertemuan 2 ARRAY DIMENSI 1 & 2

Konsep Dasar Pemrograman Dan Pengenalan C++

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera

CLASS. Bentuk Umum : class nama_class { Data elemen_class ; ... Public : Data elemen_class ; Data elemen_class ; } nama_object; BENTUK

P3 Dasar Struktur Data TIF42/SIF42

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

Array (Larik) Modul 7

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

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

PERTEMUAN 3 KONSEP TIPE DATA

Identifier dan Tipe Data

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

Pengenalan C++ Oleh : Dewi Sartika

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

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

Komentar, Identifier, Konstanta dan Variabel

REVIEW ARRAY. Institut Teknologi Sumatera

MI, KA-D3, SIA, SIB. ADI, S.Kom.

PEMROGRAMAN BERORIENTASI OBJEK

Algoritma dan Struktur Data Praktikum 3. Pointer

Algoritma Pemrograman & Struktur Data

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

PENGENALAN BAHASA C DAN C++

Algoritma dan Struktur Data. Pertemuan 5 Pointer

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

PEMROGRAMAN BERORIENTASI OBJEK. Operator. Budhi Irawan, S.Si, M.T

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

DISUSUN OLEH BAB IX. Structt. //untuk. long. int nip; char. nama[31]; char } HAL 1

mengatur jumlah digit pecahan yang diinginkan mengatur atau mengontrol sejumlah tanda format, misalkan rata kiri, kanan, huruf capital dll.

MODUL ALGORITMA DAN PEMROGRAMAN. STMIK AMIKOM Yogyakarta. Rajif Agung Yunmar, S.Kom., M.Cs.

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen

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

VARIABEL & TIPE DATA PEMROGRAMAN C++

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

MODUL 1 PENGENALAN PROGRAM C++ DAN PERNYATAAN MASUKAN-KELUARAN

SCRIPT PERTEMUAN 23. #include<conio.h> #include<stdio.h> #include<iostream.h> #include<iomanip.h>

FUNGSI II. Variabel Statis. Sifat variabel statis: Sintaks: static tipe_data nama_variabel; Contoh: static int angka;

Struktur Bahasa C dan C++

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

MODUL PRAKTIKUM STRUKTUR DATA

PERTEMUAN KE 11. Linked List. Apa Itu Linked List?

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

LAPORAN RESMI. TIPE DATA ABSTRAK (TYPEDEF dan STRUCT)

Pointer, File Header & Makro

PRAKTIKUM I STRUKTUR DATA. a. List program di bawah ini untuk dijalankan di Turbo C++ atau Borland C++ #include <iostream.h>

LAPORAN PRAKTIKUM V. Oleh:

01. Review Array, Pointer dan Struktur

ARRAY / LARIK. Oleh : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork

Keg. Pembelajaran 3 : Operator dalam Bahasa C++

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

STRUKUR KENDALI : PERCABANGAN

SENARAI BERANTAI (LINK LIST)

Implementasi Queue menggunakan Array. Imam Fahrur Rozi

PEMROGRAMAN TERSTRUKTUR OLEH : IR. H. SIRAIT, MT

Algoritma dan Struktur Data. Pointer Pada Struct

12/29/2011 ILKOM IPB 1. Algoritme dan Pemrograman. Review Latihan Slide 10. Review Latihan Slide 10

KU-1072 Pengenalan Teknologi Informasi - B. Materi: Array. Fakultas Ilmu dan Teknologi Kebumian

Pertemuan 18. Function (Fungsi) Script Program :

Pertemuan 2 ARRAY DIMENSI 1 & 2

Kisi-Kisi Ujian Tengah Semester Algoritma dan Pemrograman Lanjut

Pert. 5. Operai Penyeleksian Kondisi

elemen Dasar Bahasa Pemrograman C

Pointer dan Referensi

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

VI. FUNGSI. Fungsi Main ( ) Fungsi a ( ) Fungsi b ( ) Fungsi c ( ) Fungsi c1 ( ) Fungsi c2 ( ) Fungsi c3 ( ) Bentuk umumnya :

BAB 6 FUNGSI TUJUAN PRAKTIKUM

Program struktur StrukturMhs.cpp #include <iostream.h> #include <conio.h> #include <string.h> struct Mhs { int nim; char nama[35]; char alamat[25]; };

BAB XII. CLASS. #include <iostream.h> #include <conio.h> #include <string.h> struct mahasiswa { char nim[8]; char nama[20]; int umur; };

PRAKTIKUM 1 ALGORITMA & PEMROGRAMAN. 1. Mengenal C/C++

a. Array berdimensi satu o Setiap elemen array dapat diakses melalui indeks. o Indeks array (subscript) secara default dimulai dari 0.

Part 2 - Algoritma & Pemrograman Konsep dasar Pemrograman

MODUL MATA KULIAH PEMROGRAMAN KOMPUTER

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

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

Sedangkan bentuk umum pendefinisian fungsi adalah : Tipe_fungsi nama_fungsi(parameter_fungsi) { statement statement... }

Identifier Tipe Data Yoannita, S.Kom.

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

VARIABEL, TIPE DATA DAN EKSPRESI Bab 2

Pada prinsipnya operasi yang dilakukan pada file terdiri dari 3 tahapan : 1. Membuka file 2. Melakukan pemrosesan pada file 3.

SINGLE LINKED LIST (NON CIRCULAR)

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

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++

Spesifikasi: Ukuran: 14x21 cm Tebal: 225 hlm Harga: Rp Terbit pertama: Februari 2005 Sinopsis singkat:

POINTER. Pemrograman Bahasa C++

Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu :

Pernyataan FOR Pernyataan WHILE Pernyataan REPEAT. Dewi Sartika,M.Kom

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

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

STRUCT. TUJUAN UMUM Memahami tipe struct dan implementasi dalam program

Array 1 A. TUJUAN PEMBELAJARAN

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

Latihan C++ Class, Class Array, Struct, Struc Array. Latihan Class Biasa

8.1 FUNGSI, DEKLARASI DAN DEFINISI NYA

Kurikulum Qt. Chapter 4 Function. Fungsi

Transkripsi:

Algoritma dan Pemrograman 1 C++ Struct & Pointer Agung Sasongko, M.Kom

Pengertian struct / struktur struct adalah statement yang berguna untuk mengkelompokkan sejumlah data dengan tipe yang berlainan.

Bentuk Umum Pendeklarasian Struktur sebagai berikut: struct nama_struktur tipe_data var_anggota_struktur;... ;

Contoh Deklarasi Struktur struct Mahasiswa char nim[9]; char nama[20]; int thnmasuk; ;

Contoh Penggunaan Struktur Nama_struktur Contoh: Mahasiswa nama_variabel; mhs; Cara Akses Anggota Struktur: Nama_variabel.nama_anggota Contoh: strcpy( mhs.nim, 18111234 ); mhs.thnmasuk = 2011; cin>>mhs.nim; cout<<mhs.nama;

Kasus 1 Buatlah sebuah struktur untuk bentuk data sebagai berikut: NIM Nama Gender Alamat char (9) char(30) char(1) char(255)

Jawab Kasus 1 Bentuk struktur yaitu: NIM Nama Gender Alamat char (9) char(30) char(1) char(255) struct data_mhs char nim[9]; char nama[30]; char gender; char alamat[255] ;

Kasus 2 Buatlah struktur sebagai berikut: Nama_matakuliah Nilai tugas Nilai_uts Nilai_uas char(20) float float float

Jawab Kasus 2 Bentuk struktur nya yaitu: Nama_matakuliah Nilai tugas Nilai_uts Nilai_uas char(20) float float float struct nilai_mk char nm_mk[20]; float nilai_tugas; float nilai_uts; float nilai_uas; ;

Kasus 3 Buatlah struktur kombinasi seperti berikut: NIM Nama Gender Alamat nilai char (9) char(30) char(1) char(255) nilai_mk nilai_mk Nama_matakuliah Nilai tugas Nilai_uts Nilai_uas char(20) float float float Struktur nilai_mk dependensi dengan struktur mahasiswa.

Jawab Kasus 3 struct nilai_mk char nm_mk[20]; float nilai_tugas; float nilai_uts; float nilai_uas; ; struct mhs char nim[9]; char nama[30]; char gender; char alamat[255]; nilai_mk nilai; ;

Contoh Kasus Buatlah Struct bernama Mahasiswa dengan anggota elemen: Nim Nama Thnmasuk Struct yang dibuat digunakan di program utama dengan ketentuan NIM telah diisikan melalui koding berisikan nim anda masing2 Bagian Nama meminta user untuk mengisikannya Tahun Masuk ditentukan melalui koding bernilai 2012 Tampilkan output dengan hasil: Mahasiswa NIM. bernama. masuk tahun.

#include <iostream> #include <conio> struct Mahasiswa char nim[9]; char nama[20]; int thnmasuk; ; main() Mahasiswa mhs; strcpy( mhs.nim, "18111234"); cout<<"nim Mahasiswa : "<<mhs.nim<<endl; cout<<"masukkan Nama Mahasiswa : "; cin.getline(mhs.nama, 20); mhs.thnmasuk = 2012; clrscr(); cout<<"mahasiswa NIM "<<mhs.nim<<" bernama "<<mhs.nama; cout<<" masuk tahun "<<mhs.thnmasuk; getch();

Contoh Kasus Buatlah structure bernama barang yang beriisikan anggotanya: Nobrg Nmbrg Hrgbarang Stok Buatlah procedure bernama isidata untuk mengisi struct diatas dengan parameter b bertipe struct barang Isi procedure adalah menampilkan pertanyaan untuk mengisikan masing-masing elemen struct parameter b. Buatlah procedure tampildata untuk menampilkan semua isi data dari parameter b bertipe struct barang Isi Procedure adalah menampilkan masing-masing anggota yang ada pada struct parameter b. Gunakan struct dan kedua procedure dirangkai di program utama.

#include <iostream> #include <conio> struct Barang char nobrg[5]; char nmbrg[30]; long hrgbarang; int stok; ;

void isidata(barang b) cout<<"no. Barang : "; cin>>b.nobrg; cout<<"nama Barang : "; cin.getline(b.nmbrg, 30); cin.getline(b.nmbrg, 30); cout<<"harga Barang : "; cin>>b.hrgbarang; cout<<"stok : "; cin>>b.stok; void tampildata(barang b) cout<<"no. Barang : "<< b.nobrg <<endl; cout<<"nama Barang : "<< b.nmbrg <<endl; cout<<"harga Barang : "<< b.hrgbarang <<endl; cout<<"stok : "<< b.stok <<endl;

main() Barang b; isidata(b); clrscr(); cout<<"isi Data Struct Barang adalah : \n"; tampildata(b); getch();

Lihat hasilnya???? Sekarang coba pada bagian procedure isidata parameter di ubah menjadi seperti ini: void isidata(barang &b) Lengkapnya: void isidata(barang &b) cout<<"no. Barang : "; cin>>b.nobrg; cout<<"nama Barang : "; cin.getline(b.nmbrg, 30); cin.getline(b.nmbrg, 30); cout<<"harga Barang : "; cin>>b.hrgbarang; cout<<"stok : "; cin>>b.stok;

Pointer (Penunjuk) Merupakan variabel yang bertugas untuk menunjuk ke alamat memori suatu variabel. Pembuatan Variabel Pointer: char *nama; int *a; float *x;

Menunjuk Alamat Memori Variabel Untuk memberi informasi mengenai alamat memori dari suatu variabel maka gunakan tanda reference (&). Contoh: char *x; char y[10] = BSI OKE ; x = &y;

Apa yang bisa dilakukan pointer? Melalui pointer kita dapat mengendalikan isi nilai dari variabel yang telah ditunjuk alamat memorinya oleh pointer. Sebagai contoh: int x = 10; int *y; y = &x; *y = 12; cout<<x; // Nilai yang tampil x bukan lagi 10, melakinkan 12.

Contoh Penerapan Pointer 1: #include <iostream.h> #include <conio.h> main() int nilai = 100; int *x = &nilai; *x = 9; cout<<nilai; getch();

Contoh Penerapan Pointer 2: #include <iostream.h> #include <conio.h> main() int nilai[4] = 2,3,5,2; int *x = nilai; int index; x[0] = 9; x[1] = 9; for(index=0;index<4;index++) cout<<nilai[index]<<","; getch();

Reference (&) Digunakan untuk menunjukkan alamat memori suatu variabel. Biasanya digunakan untuk memberikan alamat variabel ke pointer Dapat pula digunakan pada parameter pembautan fungsi atau prosedur untuk menjadi parameter reference Parameter reference adalah parameter yang dapat digunakan untuk mengendalikan nilai variabel pemasuknya

Contoh Penerapan Reference: #include <iostream.h> #include <conio.h> void proc(int &a) a = a + 2; main() int x = 10; proc(x); cout<<x; getch();

Parameter Reference variabel Array??? Untuk membuat parameter reference yang menerima variabel bertipe array maka lebih mudahnya dapat menggunakan pointer. Contoh: void namaproc(int *a) Procedure diatas memiliki parameter a sebagai pointer bertipe int. Parameter ini dapat sebagai reference untuk variabel array bertipe int. Penggunaannya sudah barang tentu variabel yang di masukkan adalah variabel array. Sebagai contoh: int a[2] = 2,3; namaproc(a);

Contoh #include <iostream.h> #include <conio.h> void proc(int *a) a[0] = 100; a[1] = 200; main() int x[] = 2,4,2,1; proc(x); for(int i=0; i<4; i++) cout<<x[i]<<","; getch();

Contoh Kasus Buatlah structure bernama barang yang beriisikan anggotanya: Nobrg Nmbrg Hrgbarang Stok Buatlah procedure bernama isidata untuk mengisi struct diatas dengan parameter pointer b bertipe struct barang, dan n bertipe int Isi procedure adalah melakukan perulang sebanyak nilai parameter n dan menanyakan user untuk mengisikan masing-masing elemen struct parameter b. Buatlah procedure tampildata untuk menampilkan semua isi data dari parameter pointer b bertipe struct barang, dan n bertipe int. Isi Procedure adalah melakukan perulangan sebanyak nilai parameter n dan menampilkan masing-masing anggota yang ada pada struct parameter b. Gunakan struct dan kedua procedure dirangkai di program utama.

#include <iostream> #include <conio> struct Barang char nobrg[5]; char nmbrg[30]; long hrgbarang; int stok; ;

void isidata(barang *b, int n) int index; for(index=0; index < n; index++) cout<<"data ke-"<<(index+1)<<endl; cout<<"no. Barang : "; cin>>b[index].nobrg; cout<<"nama Barang : "; cin.getline(b[index].nmbrg, 30); cin.getline(b[index].nmbrg, 30); cout<<"harga Barang : "; cin>>b[index].hrgbarang; cout<<"stok : "; cin>>b[index].stok;

void tampildata(barang *b, int n) int i; for(i=0;i<n;i++) cout<<"data ke-"<<(i+1)<<endl; cout<<"no. Barang : "<< b[i].nobrg <<endl; cout<<"nama Barang : "<< b[i].nmbrg <<endl; cout<<"harga Barang : "<< b[i].hrgbarang <<endl; cout<<"stok : "<< b[i].stok <<endl;

main() Barang b[10]; isidata(b, 3); clrscr(); cout<<"isi Data Struct Barang adalah : \n"; tampildata(b, 3); getch();

Latihan: Buatlah struktur data karyawan terdiri dari : nip, nama, jabatan, golongan Buatlah procedure isidata untuk mengisi data karyawan sesuai masukkan jumlah karyawan Buatlah fungsi tunjanganjabatan untuk menghasilkan nilai tunjangan berdasarkan jabatan karyawan. Jika jabatan direktur maka tunjangan 5jt Jika jabatan manager maka tunjangan 2jt Jika jabatan staff maka tunjangan 200rb Buatlah fungsi gajipokok untuk menghasilkan nilai gaji pokok karyawan berdasarkan golongan karyawan Jika golongan 1 maka gaji pokok 2jt Jika golongan II maka gaji pokok 2.5jt Jika golongan III maka gaji pokok 3.7jt Buatlah procedure tampildata untuk menampilkan seluruh data karyawan yang telah terisi, beserta tunjangan jabatan, gaji pokoknya serta total gaji yang diterima karyawan Buatlah program utamanya dan gunakan struktur serta procedure isidata dan tampildata