Algoritma Dan Pemrograman Record

dokumen-dokumen yang mirip
Adam Mukharil Bachtiar English Class Informatics Engineering Algorithms and Programming Record

Algoritma dan Pemrograman Array

Array 2 Dimensi. Pendefinisian dan Struktur Array 2 Dimensi

Daftar field MODUL 13 RECORD

Algoritma dan Pemrograman Bab 05 Struktur Pengulangan. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

Indentifier, Keywords, Variable, Tipe Data dan Operator. Ramos Somya, S.Kom., M.Cs.

PRAKTIKUM 7 TIPE DATA TERSTRUKTUR. Larik : deretan data yang punya type data sejenis. Misalnya : Daftar Nomor Telpon, Tabel Pajak dll.

RECORD KONSEP. Type standar A. Var A:integer; { ada satu tempat penyimpanan yang bernama A }.

Adam Mukharil Bachtiar English Class Informatics Engineering Algorithms and Programming Branching Structure

A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8] A[9] A[10] Nilai elemen array Index array Inelemen array

Algoritma dan Pemrograman Bab II Dev Pascal, Variabel, Tipe Data. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

DIKTAT STRUKTUR DATA Oleh: Tim Struktur Data IF

DIKTAT STRUKTUR DATA Oleh: Tim Struktur Data IF

Universitas gunadarma. pascal. Bab 4- bab 10. Hana Pertiwi S.T

Menggunakan Tipe Data Record Tiap-tiap komponen Field dari Record dapat dipergunakan dengan cara menuliskan :

LAPORAN AKHIR PRAKTIKUM STRUKTUR DATA

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

BAB IV MATRIKS (ARRAY MULTI DIMENSI)

Algoritma,Flowchart, Konsep

Modul ke 1. Modul Algotima Dan Pemrograman Pascal. Modul Pelatihan Olimpiade Komputer 2009 SMA Negeri 2 Cibinong

BAB IV MATRIKS (ARRAY MULTI DIMENSI)

Algoritma dan Pemrograman Bab IV Struktur Pemilihan. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom

POINTER. Altien Jonathan Rindengan, S.Si, M.Kom

Algoritma dan Pemrograman Searching/Pencarian

Lecturer: Abdusy Syarif. Undergraduate Course Informatics Engineering Dept. Universitas Mercu Buana. Tipe Data

Chapter 3.2 : Tipe, Nama dan Nilai

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-1

Teori Algoritma. Struktur Algoritma

PRAKTIKUM 4 STATEMENT KENDALI

Belajar itu, Tidak harus menunggu materi dari guru Inisiatif Mencari itulah BELAJAR.

Konsep Dasar Pemrograman Pascal

PENGANTAR LOGIKA DAN ALGORITMA DENGAN PASCAL

Pertemuan 4 KONSEP TIPE DATA

Pengantar dalam Bahasa Pemrograman Turbo Pascal

Algoritma & Pemrograman 1. Muhamad Nursalman Pendilkom/Ilkom Universitas Pendidikan Indonesia

SOAL DAN JAWABAN UTS PEMROGRAMAN DASAR KELAS X

Pointer. Pengertian. Struktur Data Pascal

Perulangan Muh. Izzuddin Mahali, M.Cs. Pertemuan 3. Algoritma dan Struktur Data. PT. Elektronika FT UNY

Memulai Pemrograman Pascal dengan Delphi Console 1. Buka aplikasi delphi 2. Pilih File New Other Console Application

BAB 6 Array Dua Dimensi

.::BAB II.::MENGENAL PASCAL

Algorithms and Programming Introduction of Dev Pascal, Data Type, Value, and Identifier

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

KONSEP DASAR PEMROGRAMAN PASCAL

DASAR PEMROGRAMAN. File

PROSEDUR DAN FUNCTION

JENIS-JENIS DATA DAN STATEMEN INPUT OUTPUT

Algoritma dan Pemrograman Bab II Tipe Data, Variabel, & Konstanta

Array dan record. Pengertian

Contoh soal Struktur Program Pascal (Seleksi tingkat propinsi TOKI 2004)

Algoritma Pemrograman

Algoritma Pemrograman

Dasar Komputer & Pemrograman 2A

Algoritma Pemrograman

Algoritma Pemrograman

Tipe Data. Definisi Tipe Data

Algoritma Pemrograman

JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

MODUL 1. Struktur Bahasa PASCAL secara umum

ARRAY. contoh : A[1] := 10; var A : array[1..10] of integer; A[nomer_indeks]

IT132 Dasar-Dasar Pemrograman. Ramos Somya, S.Kom., M.Cs.

Pertemuan 6 Array Objektif: 1. Memahami cara mendeklarasi tipe indeks dalam array 2. Dapat membuat program sederhana menggunakan array Pertemuan 6 53

ALGORITMA DAN DASAR PEMROGRAMAN

Struktur Data. Pertemuan 2

Algoritma Pemrograman

PEMROGRAMAN DASAR ( PASCAL ) PERTEMUAN I

ARRAY KONSEP ARRAY. Type Angka = array [1..10] of integer; Var A:Angka;

ARRAY (LARIK) Altien Jonathan Rindengan, S.Si., M.Kom.

Variabel dan Tipe Data Kusrini 1, Heri Sismoro 2

III STATEMEN IF KONDISI TUNGGAL DAN GANDA A. IF TUNGGAL. XI_Sem.1 SMA Sedes Sapientiae Bedono

BAB I TUJUAN DAN LANDASAN TEORI

BAB 2 BAGAIMANA MENULISKAN PROGRAM PASCAL

Sesi/Perkuliahan ke: II

LOGO STRUKTUR DATA QUEUE

I. KATA PENGANTAR. Modul Algoritma Pemrograman. Modul Ke-4 - Hal 1

Adam Mukharil Bachtiar English Class Informatics Engineering Algorithms and Programming Searching

- KONSEP MODULAR Pengertian Konsep Modular memecah program ke dalam modul-modul. Contoh modul yang sering digunakan adalah : Prosedur & Fungsi

Pengenalan Pascal/DevPascal

Algoritma Pemrograman

STRUKTUR KENDALI. Memanfaatkan struktur kendali untuk kasus komputasi

IF32222 STRUKTUR DATA TIPE DATA. Oleh : Andri Heryandi, M.T.

Algoritma Pemrograman

Teori Algoritma TIPE DATA

Queue. Implementasi Queue dengan Array

STRUKTUR BAHASA PEMROGRAMAN

SMA SANTO PAULUS PONTIANAK

Algoritma Pemrograman

STRUKTUR KONTROL. Struktur WHILE-DO Mempunyai struktur sebagai berikut : Bentuk Umum : WHILE condition Do statement Bentuk Proses (flow chart) :

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

Materi ke-4 Praktikum Algoritma dan Pemrograman kelas Matematika PEMROGRAMAN MODULAR

Konsep Dasar Pemrograman

Algoritma Pemrograman

BAB I PENGENALAN STRUKTUR DATA DAN ALGORITMA

QUEUE (ANTRIAN) Struktur Data - Queue

SOAL PASCAL A. 1. Lengkapi Source Code Dibawah ini : {* Program Menghitung dengan Operator Matematika*}

Pertemuan 4 ELEMEN-ELEMEN BAHASA PEMROGRAMAN

Pertemuan 2 Operasi String

PRAKTIKUM ALGORITMA DAN DASAR PEMROGRAMAN

PROSES PENJUALAN BUKU

Transkripsi:

Adam Mukharil Bachtiar Informatics Engineering 2012 Algoritma Dan Pemrograman Record

Materi hari ini Pendefinisian Record Pengaplikasian Record Array Record Let s Start

Pendefinisian Record

Latar Belakang Record Saya membutuhkan sebuah program yang mirip dengan program array tetapi terdiri dari data-data yang berbeda tipe data.

Definisi Record Struktur data yang terdiri dari beberapa field (bisa lebih dari 1) yang mempunyai tipe data yang berbeda.

Ilustrasi Record Variable record bernama Lecture1 dan Lecturer2 yang masing-masing datanya terdiri dari 3 field (NIP, Name dan Address). Nama Record Lecturer 1 Lecturer 2 NIP Name Address NIP Name Address Field

Ilustrasi Record Nama Record Lecturer 1 Lecturer 2 NIP Name Address NIP Name Address Field Jika ingin mengakses field NIP dari Lecture 1, caranya adalah Lecturer1.NIP

Pengaplikasian Record Definition and Structures of Record

Langkah-Langkah Record Deklarasi record Inisialisasi record Mengakses Record (input, operasi, dan output)

Deklarasi Record (Algorithm) Kamus: type TipeRecord = record < field_1 : TipeData_1, field_2 : TipeData_2,.. field_n :TipeData_n > endrecord NamaRecord : TipeRecord

Contoh Deklarasi Record(Algorithm) Kamus: type RecordDosen = record < NIP : integer, Nama : string, Gaji : real > endrecord Dosen : RecordDosen

Deklarasi Record (PASCAL) type TipeRecord = record field_1 : TipeData_1; field_2 : TipeData_2;.. field_n :TipeData_n; end; var NamaRecord : TipeRecord;

Contoh Deklarasi Record(PASCAL) type RecordDosen = record NIP : longint; Nama : string; Gaji : double; end; var Dosen: RecordDosen;

Inisialisasi Record (Algorithm) Format: NamaRecord.NamaField DefaultValue Contoh: Dosen.NIP 0 Dosen.Nama Dosen.Gaji 0

Inisialisasi Record (Pascal) Format: NamaRecord.NamaField := DefaultValue; Contoh : Dosen.NIP := 0; Dosen.Nama := ; Dosen.Gaji := 0;

Mengisi Nilai ke Record (Algorithm) Format: input(namarecord.namafield) Contoh : input(dosen.nip) input(dosen.nama) input(dosen.gaji)

Mengisi Nilai ke Record (Pascal) Format: readln(namarecord.namafield); Contoh : readln(dosen.nip); readln(dosen.nama); readln(dosen.gaji);

Mengeluarkan Nilai Record (Algorithm) Format: output(namarecord.namafield) Contoh : output(dosen.nip) output(dosen.nama) output(dosen.gaji)

MengeluarkanRecord (Pascal) Format: writeln(namarecord.namafield); Contoh : writeln(dosen.nip); writeln(dosen.nama); writeln(dosen.gaji);

Contoh Record (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 12 13 Algoritma RecordDosen {I.S.: Dideklarasikan dua buah record dosen} {F.S.: Menampilkan isi record} Kamus: type RecordDosen = record < NIP : integer, Nama : string, Gaji : real > endrecord Dosen1,Dosen2 : RecordDosen

Contoh Record(Algorithm) 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Algoritma: {input record} input(dosen1.nip) input(dosen1.nama) input(dosen1.gaji) input(dosen2.nip) input(dosen2.nama) input(dosen2.gaji) {Operasi field record} Dosen1.Gaji Dosen1.Gaji + 1000000 {Tambah THR} Dosen2.Gaji Dosen2.Gaji 100000 (Karena telat}

Contoh Record(Algorithm) 28 29 30 31 32 33 34 35 {Output record} output(dosen1.nip) output(dosen1.nama) output(dosen1.gaji) output(dosen2.nip) output(dosen2.nama) output(dosen2.gaji)

Contoh Record(Pascal) 1 2 3 4 5 6 7 8 9 10 11 12 13 program RecordDosenIF; uses crt; type RecordDosen=record NIP:longint; Nama:string; Gaji:double; end; var Dosen1,Dosen2:RecordDosen;

Contoh Record(Pascal) 14 15 16 17 18 19 20 21 22 23 24 25 26 27 {input record} write('masukkan NIP dosen pertama : '); readln(dosen1.nip); write('masukkan Nama dosen pertama : '); readln(dosen1.nama); write('masukkan Gaji dosen pertama : '); readln(dosen1.gaji); writeln(); write('masukkan NIP dosen kedua : '); readln(dosen2.nip); write('masukkan Nama dosen kedua : '); readln(dosen2.nama); write('masukkan Gaji dosen kedua : ');

Contoh Record(Pascal) 28 29 30 31 32 33 34 35 37 38 39 40 readln(dosen2.gaji); {Operasi pada field record} Dosen1.Gaji:=Dosen1.Gaji+1000000; {karena THR} Dosen2.Gaji:=Dosen2.Gaji-100000; {karena telat} {output record} writeln(); writeln('nip dosen pertama = ',Dosen1.NIP); writeln('nama dosen pertama = ',Dosen1.Nama); writeln('gaji dosen pertama = ',Dosen1.Gaji:0:2);

Contoh Record(Pascal) 41 42 43 44 45 46 47 48 49 writeln(); writeln('nip dosen kedua = ',Dosen2.NIP); writeln('nama dosen kedua = ',Dosen2.Nama); writeln('gaji dosen kedua = ',Dosen2.Gaji:0:2); writeln(); write('tekan sembarag tombol untuk menutup...'); readkey(); end.

Array Record

Latar Belakang Array Record Saya ingin mendata dosen-dosen yang mengajar di IF. Dengan menggunakan record, tentunya akan membutuhkan banyak variable. Salah satu solusinya adalah dengan menggunakan record yang diarray (array record)

Ilustrasi Array Record Dosen [1] [2] NIP Name Address NIP Name Address Untuk mengakses dosen pertama, gunakan Lecturer [1].NIP

Deklarasi Array Record (Algorithm) Kamus: const maks = value type TipeRecord = record < field_1 : TipeData_1, field_2 : TipeData_2,.. field_n : TipeData_n > endrecord NamaArrayofRecord = array [1..maks] of TipeRecord NamaRecord : NamaArrayofRecord

Deklarasi Array Record (Algorithm) Kamus: const maks = 20 type DosenIF = record < NIP : integer, Nama : string, Gaji : real > endrecord ArrayDosenIF = array [1..maks] of DosenIF Dosen: ArrayDosenIF

Deklarasi Array Record(Pascal) const maks = value; type TipeRecord = record field_1 : TipeData_1; field_2 : TipeData_2;.. field_n : TipeData_n; end; NamaArrayofRecord = array [1..maks] of TipeRecord; var NamaRecord : NamaArrayofRecord;

Deklarasi Array Record(Pascal) const maks = 20; type DosenIF = record NIP : longint; Nama : string; Gaji : double; end; ArrayDosenIF = array [1..maks] of DosenIF; var Dosen: ArrayDosenIF;

Pengisian Record (Algorithm) Format: NamaRecord[indeks].NamaField DefaultValue Contoh: Dosen[1].NIP 0 Dosen[1].Nama Dosen[1].Gaji 0

Pengisian Record (Pascal) Format: NamaRecord[indeks].NamaField := DefaultValue; Example: Dosen[1].NIP := 0; Dosen[1].Nama := ; Dosen[1].Gaji := 0;

Pengisian Nilai ke Array Record (Algorithm) Format: input(namarecord[indeks].namafield) Example: input(dosen[1].nip) input(dosen[1].nama) input(dosen[1].gaji)

Pengisian Nilai ke Array Record(Pascal) Format: readln(namarecord[indeks].namafield); Example: readln(dosen[1].nip); readln(dosen[1].nama); readln(dosen[1].gaji);

Pengeluaran Nilai ke Array Record(Algorithm) Format: output(namarecord[indeks].namafield) Example: output(dosen[1].nip) output(dosen[1].nama) output(dosen[1].gaji)

Pengeluaran ke Array Record(Pascal) Format: writeln(namarecord[indeks].namafield); Example: writeln(dosen[1].nip); writeln(dosen[1].nama); writeln(dosen[1].gaji);

Contoh Array Record (Algorithm) 1 2 3 4 5 6 7 8 9 10 11 12 13 Algoritma ArrayRecordMakananMinuman {I.S : didefinisikan dua array of record food and drink} {F.S : menampilkan array of record beserta operasinya} const maks=3; type RecordMakanan = record < KodeMakanan:integer, NamaMakanan:string, HargaMakanan:real, DiskonMakanan:real > endrecord

Contoh Array Record(Algorithm) 14 15 16 17 18 19 20 21 22 23 24 25 26 27 RecordMinuman = record < KodeMinuman:integer, NamaMinuman:string, HargaMinuman:real, DiskonMinuman:real > endrecord {array of record} ArrayMakanan = array [1..maks] of RecordMakanan; ArrayMinuman = array [1..maks] of RecordMinuman; Makanan:ArrayMakanan; Minuman:ArrayMinuman; TotalHarga:real; i:integer;

Contoh Array Record(Algorithm) 28 29 30 31 32 33 34 35 37 38 39 40 41 42 Algoritma: {input record} for i 1 to maks do input(makanan[i].kodemakanan) input(makanan[i].namamakanan); input(makanan[i].hargamakanan) input(makanan[i].diskonmakanan) endfor for i 1 to maks do input(minuman[i].kodeminuman) input(minuman[i].namaminuman) input(minuman[i].hargaminuman) input(minuman[i].diskonminuman) endfor

Contoh Array Record(Algorithm) 43 44 45 46 47 48 49 50 51 52 53 {perhitungan total harga} TotalHarga 0 for i 1 to maks do TotalHarga TotalHarga+(Makanan[i].HargaMakanan (Makanan[i].HargaMakanan*Makanan[i].DiskonMakanan)) +(Minuman[i].HargaMinuman- (Minuman[i].HargaMinuman*Minuman[i].DiskonMinuman)) endfor {output record} for i 1 to maks do output(makanan[i].kodemakanan) output(makanan[i].namamakanan) output(makanan[i].hargamakanan) output(makanan[i].diskonmakanan) endfor

Contoh Array Record(Algorithm) 54 55 56 57 58 59 60 61 for i 1 to maks do output(minuman[i].kodeminuman) output(minuman[i].namaminuman) output(minuman[i].hargaminuman) output(minuman[i].diskonminuman) endfor output(totalharga);

Contoh Array Record(Pascal) 1 2 3 4 5 6 7 8 9 10 11 12 13 program MenuMakananMinuman; uses crt; const maks=3; type RecordMakanan = record KodeMakanan:integer; NamaMakanan:string; HargaMakanan:real; DiskonMakanan:real; end;

Contoh Array Record(Pascal) 14 15 16 17 18 19 20 21 22 23 24 25 26 27 RecordMinuman = record KodeMinuman:integer; NamaMinuman:string; HargaMinuman:real; DiskonMinuman:real; end; {array of record} ArrayMakanan=array [1..maks] of RecordMakanan; ArrayMinuman=array [1..maks] of RecordMinuman; var Makanan:ArrayMakanan; Minuman:ArrayMinuman; TotalHarga:real; i:integer;

Contoh Array Record(Pascal) 28 29 30 31 32 33 34 35 37 38 39 40 41 begin {input record} for i:=1 to maks do begin write('masukkan kode makanan ',i,' : '); readln(makanan[i].kodemakanan); write('masukkan nama makanan ',i,' : '); readln(makanan[i].namamakanan); write('masukkan harga makanan ',i,' : '); readln(makanan[i].hargamakanan:0:2); write('masukkan diskon makanan ',i,' : '); readln(makanan[i].diskonmakanan:0:2); end;

Contoh Array Record(Pascal) 42 43 44 45 46 47 48 49 50 51 52 53 54 writeln(); for i:=1 to maks do begin write('masukkan kode Minuman ',i,' : '); readln(minuman[i].kodeminuman); write('masukkan nama Minuman ',i,' : '); readln(minuman[i].namaminuman); write('masukkan harga Minuman ',i,' : '); readln(minuman[i].hargaminuman:0:2); write('masukkan diskon Minuman ',i,' : '); readln(minuman[i].diskonminuman:0:2); end;

Contoh Array Record(Pascal) 55 56 57 58 59 60 61 62 63 {perhitungan total harga} TotalHarga:=0; for i:=1 to maks do TotalHarga:=TotalHarga+(Makanan[i].HargaMakanan (Makanan[i].HargaMakanan*Makanan[i].DiskonMakanan)) +(Minuman[i].HargaMinuman- (Minuman[i].HargaMinuman*Minuman[i].DiskonMinuman)); {output record} clrscr(); for i:=1 to maks do begin writeln('kode makanan ',i,' adalah ',Makanan[i].KodeMakanan); writeln('nama makanan ',i,' adalah ',Makanan[i].NamaMakanan);

Contoh Array Record(Pascal) 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 writeln('harga makanan ',i,' adalah ',Makanan[i].HargaMakanan:0:2); writeln('diskon makanan ',i,' adalah ',Makanan[i].DiskonMakanan:0:2); end; writeln(); for i:=1 to maks do begin writeln('kode Minuman ',i,' adalah ',Minuman[i].KodeMinuman); writeln('nama Minuman ',i,' adalah ',Minuman[i].NamaMinuman); writeln('harga Minuman ',i,' adalah ',Minuman[i].HargaMinuman); writeln('diskon Minuman ',i,' adalah ',Minuman[i].DiskonMinuman); end; writeln(); writeln('total harga yang harus dibayar adalah : Rp. ',TotalHarga:0:2); writeln(); write('tekan sembarang tombol untuk menutup...'); readkey(); end.