MODUL 9 STRUCT (STRUKTUR)

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

MENGENAL POINTER. Mengetahui Alamat variabel. Output :

MODUL PRAKTIKUM BAHASA PEMROGRAMAN TESTRUKTUR MODUL 8 POINTER

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

void tukar_xy(struct koordinat *pos_xy){ int z; z = (*pos_xy).x; (*pos_xy).x = (*pos_xy).y; (*pos_xy).y = z;

MODUL I PENGENALAN IDE C++, ALGORITMA DAN PEMROGRAMAN

TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2016

1 MODUL 8 POINTER MODUL 8 POINTER

MODUL 10 Fungsi 10.1 Kompetensi 10.2 Alat Dan Bahan: 10.3 Ulasan Teori: Dasar Fungsi Deklarasi Fungsi

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

MODUL 5 PERULANGAN (LOOPING)

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

Fungsi : Dasar Fungsi

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

Fungsi DASAR PEMROGRAMAN

Tipe bentukan dan pointer selanjutnya akan kita pelajari pada modul pemrograman 1 (akhir semester).

Selection / Pemilihan PEMILIHAN

STRUCT. d e d d y a d i n a n d r a

Pengenalan Struktur Data. Farah Zakiyah Rahmanti 2014

Fungsi DASAR PEMROGRAMAN

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

A. TUJUAN 1. Menjelaskan tentang prinsip dasar fungsi. 2. Menjelaskan tentang.parameter formal dan parameter aktual

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

MODUL 6 RECORD/STRUCT/STRUKTUR

MODUL 7 FUNGSI A. Tujuan. B. Petunjuk. C. Dasar Teori

PEMROGRAMAN TERSTRUKTUR PERTEMUAN VI KOMPONEN KOMPONEN PEMROGRAMAN TERSTRUKTUR

BAB III Pengenalan Tipe Data dan Bahasa Pemrograman C/C++

Program menjadi terstruktur Dapat mengurangi pengulangan kode program. Fungsi dapat diimplementasikan dalam tiga bentuk :

5. Fungsi. S. Indrianii L, M.T

PERTEMUAN 3 KONSEP TIPE DATA

Rosihan Ari Yuana, S.Si, M.Kom Lisensi Dokumen: BAB I. PENDAHULUAN C++ Oleh:

Algoritma dan Pemrograman. Pertemuan Ke-11 Function

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

Tipe Data dan Operator

MODUL 1 Alur Seleksi dengan C++

01. Review Array, Pointer dan Struktur

STRUKTUR DATA Pertemuan 1 s.d 8

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

Algoritma dan Struktur Data Praktikum 3. Pointer

PERTEMUAN XII. int x = 20; // dapat ditulis dgn auto int x = 20; double y = 2.22; // dapat ditulis dgn auto double y = 2.22;

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET BAHASA PEMROGRAMAN Fungsi : Passing Parameter by Value & Semester 3

8.1 FUNGSI, DEKLARASI DAN DEFINISI NYA

PENGENALAN BAHASA C DAN C++

MODUL PRAKTIKUM. MODUL I - VIII Modul penuntun dan bahan praktikum matakuliah algoritma dan pemograman

FUNGSI. tipe Tipe nilai yang dihasilkan oleh fungsi. Jika tidak dinyatakan, hasil fungsi dianggap bilangan bulat (int)

MENGAKSES ELEMEN STRUKTUR

PRAKTIKUM 7 FUNGSI 1

A. TUJUAN PEMBELAJARAN

LATIHAN SOAL (FUNGSI & PROSEDUR)

Pertemuan 11. Tipe data Struktur (Struct) dan Union

Alpro & Strukdat 1 C++ (Sub Program) Dwiny Meidelfi, S.Kom., M.Cs.

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala

Pendahuluan Pemrograman Mikrokontroler

A. TUJUAN 1. Memecah program dalam fungsi fungsi yang sederhana. 2. Menjelaskan tentang pemrograman terstruktur.

PRAKTIKUM 03 OPERATOR DAN STATEMENT I/O. OLEH : Nama Stambuk Kelompok

Kurikulum Qt. Chapter 4 Function. Fungsi

PRAKTIK MATA PELAJARAN

Minggu ke-14 Typedef, Struct & Command Line Argument

MODUL IV ARRAY DAN STRUCTURE

Struktur Program Bahasa C

REVIEW ARRAY. Institut Teknologi Sumatera

Algoritma Pemrograman & Struktur Data

LOGIKA ALGORITMA. Pertemuan 4. By: Augury

VARIABEL & TIPE DATA PEMROGRAMAN C++

STRUKTUR DASAR PEMROGRAMAN

STRUKTUR DATA, ADT, dan STRUCT

VARIABEL, TIPE DATA DAN EKSPRESI Bab 2

Algoritme dan Pemrograman

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

elemen Dasar Bahasa Pemrograman C

POINTER DASAR PEMROGRAMAN

Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah: Perkalian Pembagian Sisa Pembagian (mod) Penjumlahan 6 2

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

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi.

Tipe Data, Variabel, Input/Output

Pemrograman Dasar C. Minggu 9

TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2017

Sejarah C. Dirancang oleh Denis M. Ritchie tahun 1972 di Bell Labs.

PERTEMUAN IX DATA TINGKAT LANJUT

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

BAB 4 KONDISI / PEMILIHAN

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

Latihan & Kisi-kisi UTS DASAR PEMROGRAMAN

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

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

BAB 4 PENGENALAN BAHASA C

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

STRUCTURE. Structure

KONSEP POINTER DAN LINKED LIST

MODUL 4 PERULANGAN A. TUJUAN

Algoritma dan Pemrograman. Pertemuan Ke-5 Input dan Output

BAB 2. FUNGSI INPUT OUTPUT

Kurikulum Qt. { Basic OOP } Chapter 4. Function

Achmad Solichin.

Percabangan. Yuli Sun Hariyani

MATERI PRAKTIKUM STRUKTUR DATA

Bab 10 Fungsi & Prosedur

Pertemuan 6. Pemrograman Modular

ELEMEN DASAR C++ C++ mempunyai cara untuk menyatakan karakter-karakter yang tidak mempunyai kode tombol (seperti karakter tombol) misalnya \n.

Transkripsi:

MODUL 9 STRUCT (STRUKTUR) A. Tujuan Setelah mempelajari bab ini diharapkan mahasiswa akan mampu : 1. Mengenal dan memahami penggunaan struct (struktur) dalam listing program. 2. Membuat program sederhana dengan menerapkan konsep struct (struktur) B. Petunjuk 1. Awali setiap aktivitas anda dengan doa, agar anda lancar dalam belajar 2. Pahami tujuan, dasar teori, dan latihan-latihan praktikum dengan baik 3. Kerjakan tugas-tugas praktikum dengan baik, jujur, dan sabar 4. Tanyakan kepada instruktur apabila ada hal-hal yang kurang jelas C. Alat dan Bahan 1. PC/ laptop yang memenuhi kapasitas untuk pemrograman bahasa C++ 2. Software C++ 3. Modul/handout materi yang akan di praktekkan D. Struct (Struktur) Definisi Struktur Struktur yaitu pengelompokan dari variabel-variabel atau sejumlah data dengan tipe yang berlainan yang bernaung dalam satu nama yang sama. Struktur biasa digunakan untuk mengelompokkan beberapa informasi yang berkaitan dengan sebuah kesatuan, atau biasanya disebut dengan record. Deklarasi Struktur Cara mendeklarasikan struktur adalah dengan menggunakan kata kunci struct. Perhatikan contoh penulisan struktur berikut ini: 1 P a g e

struct data_tanggal int tahun; int bulan; int tanggal; ; data_tanggal tanggal_lahir; Nama struktur Sejumlah data struktur dengan tipe berbeda Nama struktur digunakan sebagai tipe data suatu variabel Pada Contoh di atas, struktur bernama data_tanggal, yang tersusun atas 3 unit penyusunnya yaitu tahun, tanggal, dan bulan. Setelah dibuat struktur tanggal, selanjutnya struktur tersebut dapat digunakan sebagai tipe data suatu variabel, dalam hal ini disebut tipe data abstrak. Berikut contoh programnya. Contoh 1 : #include<iostream.h> #include<conio.h> void main() struct data_tanggal int tanggal; int bulan; int tahun; ; data_tanggal tanggal_lahir; tanggal_lahir.tanggal = 1; tanggal_lahir.bulan = 9; tanggal_lahir.tahun = 1979; cout << tanggal_lahir.tanggal << / << tanggal_lahir.bulan << / << tanggal_lahir.tahun; Misalkan terdapat 2 buah variabel tgl1 dan tgl2 sama-sama bertipe data_tanggal. Selanjutnya diinginkan mengcopy isi dari tgl1 ke tgl2, maka dapat dilakukan dengan perintah assignment biasa. Perhatikan Contoh 2 : 2 P a g e

Contoh 2. #include<iostream.h> #include<conio.h> void main() struct data_tanggal int tanggal; int bulan; int tahun; ; data_tanggal tgl1, tgl2; tgl1.tanggal = 1; tgl1.bulan = 9; tgl1.tahun = 1979; tgl2 = tgl1; // atau tgl2.tanggal = tgl1.tanggal; tgl2.bulan = tgl1.bulan; tgl2.tahun = tgl2.tahun; cout << tgl1.tanggal << / << tgl1.bulan << / << tgl1.tahun << endl; cout << tgl2.tanggal << / << tgl2.bulan << / << tgl2.tahun << endl; Ada juga penulisan struktur sperti di bawah ini : typedef struct char kode[5]; char nama[20]; int jml; float harga; psd; //pendefenisian nama variabel baru psd persediaan_barang; Dengan menggunakan typedef, struktur psd didefinisikan kembali dengan nama baru tanpa menggunakan kata struct di awal nama baru tersebut. 3 P a g e

Struktur dalam Struktur Suatu struktur juga bisa mengandung struktur yang lain. Sebagai gambaran, ditunjukkan pada contoh di bawah ini : struct data_pegawai int nip; char nama[30]; data_tanggal tanggal_lahir; rec_peg; Pada contoh ini, terdapat pendeklarasian struktur bernama data_pegawai dan sekaligus pendefinisian variable struktur bernama rec_peg. Gambar di bawah ini menunjukkan anggota dari variable rec_peg. rec_peg nip nama tanggal_lahir tahun bulan tanggal Mengakses Anggota Struktur Anggota struktur dapat diakses menggunakan bentuk : Contoh : variable_struktur.nama_anggota rec_peg.nip = 108533414505; rec_peg.nama = dewi ; rec_peg.tanggal_lahir.tahun = 2009; Perbandingan 2 Buah Struktur Untuk membandingkan 2 buah struktur, masing-masing unit harus dibandingkan sendiri-sendiri, contoh: 4 P a g e

if ((tgl1.tanggal == tgl2.tanggal) && (tgl1.bulan == tgl2.bulan) && (tgl1.tahun == tgl2.tahun)) cout << Isi strukturnya sama ; else cout << Isi struktur tak sama ; Struktur dalam Fungsi Suatu struktur juga dapat digunakan untuk argumen/parameter suatu fungsi (function). Contoh 3. #include<iostream.h> #include<conio.h> struct data int x; int y; ; void tampilkan(data nilai) void main() data nilaiku; nilaiku.x = 10; nilaiku.y = 16; tampilkan(nilaiku); void tampilkan(data nilai) cout << Nilai x = << nilai.x << endl; cout << Nilai y = << nilai.y << endl; 5 P a g e

Struktur dalam Pointer #include<iostream.h> #include<conio.h> //Deklarasi struktur struct koordinat int x, y; ; void ubah_posisi(koordinat *posisi) //prototipe void main() koordinat posisi; //Definisi variable struktur posisi.x = 10; posisi.y = 30; cout << Isi semula : x = << posisi.x << y = << posisi.y << endl; ubah_posisi(&posisi); //parameter berupa alamat cout << Isi sekarang : x = << posisi.x << y = << posisi.y << endl; //Definisi fungsi void ubah_posisi(koordinat *posisi) (*posisi).x = 100; (*posisi).y = 300; LATIHAN LATIHAN 1 : Akses elemen struktur # include <stdio.h> main() struct float jari; float keliling; float luas; lingkaran; printf( Masukkan Jari-jari Lingkaran: );scanf( %f,&lingkaran.jari-jari); lingkaran.keliling = 2*3.14259*lingkaran.jari; lingkaran.luas = 3.14259*lingkaran.jari*lingkaran.jari; printf( Keliling Lingkaran=%g\n,lingkaran.keliling); printf( Luas Lingkaran =%g\n,lingkaran.luas); 6 P a g e

LATIHAN 2 #include<stdio.h> main() struct tgl unsigned int hari; unsigned int bulan; unsigned int tahun; ; struct alamat char jalan[30]; char kotap[20]; ; Struct char nama[40]; struct tgl masuk; struct alamat tinggal; float gaji; karyawan= Yuni Chairun Nisa, 11, 06, 2008, Jl. Kedondong 56, Lumajang, 900000; printf( \n\n DATA KARYAWAN \n ); printf( \n----------------------------------------\n\n ); printf( Nama Karyawan :%s\n,karyawan.nama); printf( Tanggal Masuk :%2d-%2d-%2d\n,karyawan.masuk,hari, karyawan.masuk.bulan,karyawan.masuk.tahun); printf( Alamat :%s\n,karyawan.tinggal.jalan); printf( %s\n,karyawan.tinggal.kota); printf( Gaji Per Bulan : Rp %.2f\n,karyawan.gaji); Pada program tersebut, variabel karyawan merupakan struktur yang berisi struktur lain. Yaitu struktur tgl dan struktur alamat. Jadi, elemen lahir pada karyawan memiliki 3 elemen, yaitu elemen dari struktur tgl (hari, bulan, tahun ). Sedangkan elemen tinggal memiliki 2 elemen yaitu elemen dari struktur alamat (jalan dan kota). Hasilnya dapat dilihat pada tampilan di bawah ini: D A T A K A R Y A W A N ---------------------------------------------------------------------- Nama Karyawan : Yuni Chairun Nisa Tanggal Masuk : 11-06-2008 Alamat : Jl. Kedondong 56 Lumajang Gaji Per Bulan : Rp 900000,00 7 P a g e

TUGAS PRAKTIKUM : 1. Buatlah program struktur untuk menghitung luas dan keliling segitiga 2. Buatlah struktur untuk identifikasi KTP dan KTM masing-masing 3. Buatlah program struktur untuk database penjualan terdiri atas: Kode barang Harga barang Nama barang Tanggal pembelian Jumlah barang Discount TUGAS RUMAH : 1. Buatlah program menggunakan function untuk menentukan selisih antara dua waktu (jam). Misalkan selisih antara pukul 4.30 dengan 6.00 adalah 90 menit. Terdapat 2 argumen function yaitu jam pertama dan jam kedua (lebih besar dari jam pertama). Petunjuk : buat struktur jam (dengan unit jam, dan menit). 2. Bilangan kompleks memiliki format a+b i, dengan a dan b adalah bilangan real. Notasi a disebut juga bagian real, dan b disebut juga bagian imajiner. Buatlah program menggunakan struktur untuk menjumlahkan, mengurangkan, dan mengalikan 2 buah bilangan kompleks. Contoh: (2+3 i) + (-1 + 3i) = 1+6 i (2+3 i) - (-1 + 6i) = 3 3i (2+3 i). (-1 + 3i) = -2 3i + 6i + 9 i2 = -2 3i + 6i 9 = -11 + 3i 8 P a g e