Algoritma Pemrograman

dokumen-dokumen yang mirip
Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

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

Algoritma Pemrograman

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Pertemuan Ke-5 Penyeleksian Kondisi. Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Pertemuan 3 Penyeleksian Kondisi

Larik/Array ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I

Algoritma Pemrograman

Pertemuan XII ALGORITMA. Algoritma & Pemrograman Ken Kinanti P 1. {Pencarian Beruntun / Sequential Search}

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat

Pertemuan Ke-3 (Tipe Data dan Nama) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

Bubble Sort (Pengurutan Gelembung / Pemberatan)

Algoritma Pemrograman

Algoritma Pemrograman

Kontrak Kuliah TKC106 - Algoritma Pemrograman Semester Gasal 2009/2010

1 Pencarian. 1.1 Tinjauan Singkat Larik

Pertemuan Ke-4 Urutan (sequence) Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

SATUAN ACARA PERKULIAHAN MATA KULIAH PEMROGRAMAN PASCAL * (TK) KODE / SKS: KK /2 SKS

Algoritma Pemrograman

Kontrak Kuliah TKC106 - Algoritma Pemrograman Semester Gasal 2011/2012

Algoritma Pemrograman

MODUL PRAKTIKUM ALGORITMA PEMROGRAMAN TEKNIK INFORMATIKA

Algoritma Pemrograman

Daftar field MODUL 13 RECORD

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

Pertemuan 3 Penyeleksian Kondisi dan Perulangan

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

Pertemuan 3 Prosedur dan Fungsi

Algoritma Pemrograman

Array. Teknik Informatika Politeknik Negeri Batam

Pertemuan 2 Operasi String

Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom

Pertemuan Ke- 6 dan 7 Pengulangan atau Looping. Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

Pertemuan 4 Perulangan

PERSEGI ANGKA-HURUF VERTIKAL

Teori Algoritma. Struktur Algoritma

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

Array, Record, sorting : Elektro Unud (MSU) Page 1 of 13

Algoritma Pemrograman

CCH1A4 / Dasar Algoritma & Pemrogramanan

c. Hasil pencarian berupa nilai Boolean yang menyatakan status hasil pencarian. Versi 1 (Pembandingan elemen dilakukan sebagai kondisi pengulangan)

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

Algoritma Pemrograman

Algoritma Pemrograman

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 1 x 3 x 50 Menit Pertemuan : 9

BAB III QUEUE (ANTRIAN)

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

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

Pertemuan 2 Operasi String

Searching [pencarian] Algoritma Pemrograman

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 4 & 5

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 12 & 13

Pertemuan Ke-1 (Pengantar Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

ARRAY. Larik / array adalah tipe terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama.

Struktur Data. Belajar Struktur Data Menggunakan Pascal Pertemuan-5

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

SATUAN ACARA PERKULIAHAN JURUSAN TEKNIK INFORMATIKA ITP

PENDAHULUAN. Brigida Arie Minartiningtyas, M.Kom

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

Algoritma Pemrograman

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

Algoritma Pemrograman

Algoritma HitungGajiKaryawan Deklarasi NIK,Nama,Jabatan : String Gaji, Tunj, Pajak, Gaber : Real

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

Program Studi Teknik Mesin S1

Dasar Komputer & Pemrograman 2A

RENCANA PEMBELAJARAN SEMESTER PROGRAM STUDI AKUNTANSI KOMPUTER PROGRAM D3 BISNIS & KEWIRAUSAHAAN UNIVERSITAS GUNADARMA

LAPORAN RESMI PRAKTIKUM ALGORITMA PEMROGRAMAN MODUL V ARRAY

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

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 14 & 15

Nama : Suseno Rudiansyah NPM : Kelas : X2T Prodi : Teknik Informatika Tugas : Kuis Algoritma 2

Algoritma dan Pemrograman 1. By. Rita Wiryasaputra, ST., M. Cs.

ALGORITMA PENCARIAN. c. Hasil pencarian berupa nilai Boolean yang menyatakan status hasil pencarian.

Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs.

MATERI 4 PENYELEKSIAN KONDISI

Struktur Data. Pertemuan 2

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

1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada.

Transkripsi:

Algoritma Pemrograman Pertemuan Ke-12 (Record) :: NoorIfada :: S1 Teknik Informatika-Unijoyo 1 Sub Pokok Bahasan Pendahuluan Pendefinisian Record Menggunakan Tipe Data Record Tipe Data Record dengan Field Tipe Record (Record Terstruktur) S1 Teknik Informatika-Unijoyo 2 1

Pendahuluan Record adalah elemen larik yang bertipe terstruktur Dengan menggunakan tipe data record, beberapa item data yang masing-masing dapat mempunyai tipe data berbeda-beda dapat dikumpulkan. Masing-masing item data disebut dengan field. Jadi record terdiri dari kumpulan field yang dapat berbeda tipe Biasanya suatu record berisi beberapa field untuk sebuah subyek tertentu S1 Teknik Informatika-Unijoyo 3 Pendefinisian Record DEKLARASI type Hasil : record <JariJari : real, Keliling : real, Luas : real > Lingkaran : Hasil type Hasil = record JariJari : real; Keliling : real; Luas : real; var Lingkaran : Hasil; S1 Teknik Informatika-Unijoyo 4 2

Menggunakan Tipe Data Record Contoh 1: Misalrecord TabMhs adalah sebuah larik yang elemennya menyatakan nilai ujian mata kuliah (MK) yang diambil seorang mahasiswa Data (field) setiap mahasiswa adalah: NIM (Nomor Induk Mahasiswa) nama mahasiswa mata kuliah yang diambil nilai mata kuliah S1 Teknik Informatika-Unijoyo 5 DEKLARASI const Nmaks = 100 type Mahasiswa : record<nim : integer, NamaMhs : string, KodeMK : string, Nilai : char > TabMhs: array[1..nmaks] of Mahasiswa k : integer {pencatat indeks larik} N : integer DESKRIPSI: read(n) for k 1 to N do read(tabmhs[k].nim) read(tabmhs[k].namamhs) read(tabmhs[k].kodemk) read(tabmhs[k].nilai) const Nmaks = 100; type Mahasiswa = record NIM : integer; NamaMhs : string[20]; KodeMK : string[10]; Nilai : char; var TabMhs: array[1..nmaks] of Mahasiswa; k, N : integer; write( Masukkan jumlah data? ); readln(n); for k := 1 to N do writeln( Data ke-,k, : ); write( Masukkan NIM?: ); readln(tabmhs[k].nim); write( Masukkan NAMA?: ); readln(tabmhs[k].namamhs); write( Masukkan KODE?: ); readln(tabmhs[k].kodemk); write( Masukkan NILAI?: ); readln(tabmhs[k].nilai); end. S1 Teknik Informatika-Unijoyo 6 3

Contoh 2: Mengurutkan data berdasarkan nomor mahasiswa (NIM) dengan urutan dari yang terkecil ke yang terbesar dan kemudian menampilkannya pada tabel seperti di bawah ini: S1 Teknik Informatika-Unijoyo 7 Contoh 2: Solusi Algoritma [bagian 1/3] Algoritma URUT_NIM DEKLARASI ( * Program Utama *) const Nmaks = 100 type Mahasiswa : record<nim : integer, Nama : string, Kode : string, Nilai: char > TabMhs : array[1..nmaks] of Mahasiswa Bantuan : Mahasiswa I, J, N : integer procedure BacaData { Membaca data record TabMhs } DEKLARASI (* Prosedur BacaData *) { Tidak ada } DESKRIPSI: (* Prosedur BacaData *) for I 1 to N do write( Nomor Mahasiwa ke-,i,? ) read(tabmhs[i].nim) write( Nama Mahasiwa ke-,i,? ) read(tabmhs[i].nama) write( Kode Mata Kuliah ke-,i,? ) read(tabmhs[i].kode) write( Nilai Mahasiwa ke-,i,? ) read(tabmhs[i].nilai) S1 Teknik Informatika-Unijoyo 8 4

Contoh 2: Solusi Algoritma [bagian 2/3]: procedure urut { Mengurutkan isi record TabMhs berdasarkan NIM } DEKLARASI (* Prosedur urut *) { Tidak ada } DESKRIPSI: (* Prosedur urut *) for I 1 to N-1 do for J 1 to N-1 do if TabMhs[J].NIM > TabMhs[J+1].NIM then Bantuan := TabMhs[J]; TabMhs[J]:= TabMhs[J+1]; TabMhs[J+1]:= Bantuan; endif procedure tampil {Menampilkan isi record TabMhs yg telah diurutkan berdasarkan NIM dlm bentuk tabel } DEKLARASI (* Prosedur tampil *) { Tidak ada } DESKRIPSI: (* Prosedur tampil *) write('-----------------------------------------------') write(' Nomor Nama Kode Nilai ') write('-----------------------------------------------') for I 1 to N do with TabMhs[I] do write(nim,nama,kode,nilai); write('----------------------------------------------'); S1 Teknik Informatika-Unijoyo 9 Contoh 2: Solusi Algoritma [bagian 3/3]: DESKRIPSI: (* Program Utama *) write( Jumlah Mahasiswa? ) read(n) bacadata urut tampil S1 Teknik Informatika-Unijoyo 10 5

Contoh 2: Solusi Pascal [bagian 1/3]: Program URUT_NIM; const Nmaks = 100; type Mahasiswa = record NIM : integer; Nama : string[20]; Kode : string[10]; Nilai: char; var TabMhs : array[1..nmaks] of Mahasiswa; Bantuan : Mahasiswa; I, J, N : integer; procedure BacaData; for I := 1 to N do writeln; write( Nomor Mahasiwa ke-,i,? );readln(tabmhs[i].nim); write( Nama Mahasiwa ke-,i,? );readln(tabmhs[i].nama); write( Kode Mata Kuliah ke-,i,? );readln(tabmhs[i].kode); write( Nilai Mahasiwa ke-,i,? );readln(tabmhs[i].nilai); S1 Teknik Informatika-Unijoyo 11 Contoh 2: Solusi Pascal [bagian 2/3]: procedure urut; for I := 1 to N-1 do for J := 1 to N-1 do if TabMhs[J].NIM > TabMhs[J+1].NIM then Bantuan := TabMhs[J]; TabMhs[J]:= TabMhs[J+1]; TabMhs[J+1]:= Bantuan; procedure tampil; writeln; writeln('------------------------------------------------'); writeln(' Nomor Nama Kode Nilai '); writeln('------------------------------------------------'); for I := 1 to N do writeln(tabmhs[i].nim:10,tabmhs[i].nama:20,tabmhs[i].kode:10,tabmhs[i].nilai:5); writeln('------------------------------------------------'); S1 Teknik Informatika-Unijoyo 12 6

Contoh 2: Solusi Pascal [bagian 3/3]: (* PROGRAM UTAMA *) write( Jumlah Mahasiswa? ); readln(n); writeln; bacadata; clrscr; urut; tampil; end. S1 Teknik Informatika-Unijoyo 13 Contoh 2: Hasil Keluaran Jumlah Mahasiswa? 3 Nomor Mahasiwa ke-1? 0604100044 Nama Mahasiwa ke-1? Adi Darmaji Kode Mata Kuliah ke-1? FTC104 Nilai Mahasiwa ke-1? B Nomor Mahasiwa ke-2? 0604100011 Nama Mahasiwa ke-2? Elisa Hadi Kode Mata Kuliah ke-2? FTC111 Nilai Mahasiwa ke-2? A Nomor Mahasiwa ke-1? 0604100020 Nama Mahasiwa ke-1? Aditya Kode Mata Kuliah ke-1? FTC115 Nilai Mahasiwa ke-1? C ------------------------------------------------ Nomor Nama Kode Nilai ------------------------------------------------ 0604100011 Elisa Hadi FTC111 A 0604100020 Aditya FTC115 C 0604100044 Adi Darmaji FTC104 B ------------------------------------------------ S1 Teknik Informatika-Unijoyo 14 7

Tipe Data Record dengan Field Tipe Record (Record Terstruktur) Tipe data record juga dapat memiliki field berupa tipe data record yang lainnya. Misalnya item-item data pada data nilai-nilai mata kuliah yang diambil setiap mahasiswa pada suatu semester. Data yang disimpan di dalam record adalah sbb: 1. NIM (Nomor Induk Mahasiswa) 2. NamaMhs (nama mahasiswa) 3. Mata Kuliah (MK) yang diambil mahasiswa, berupa record: Kode mata kuliah ke-1 Nama mata kuliah ke-1 Nilai mata kuliah ke-1 Kode mata kuliah ke-2 Nama mata kuliah ke-2 Nilai mata kuliah ke-2... Kode mata kuliah ke-n Nama mata kuliah ke-n Nilai mata kuliah ke-n S1 Teknik Informatika-Unijoyo 15 DEKLARASI const Nmaks = 100 const Mn = 10 type MataKuliah : record <KodeMK : string, NamaMK : string, Nilai : char > type Mahasiswa : record <NIM: integer, Nama: string, MK: array[1..mn] of MataKuliah > TabMhs : array[1..nmaks] of Mahasiswa const Nmaks = 100; Mn = 10; type MataKuliah = record KodeMK: string[8]; NamaMK: string[20]; Nilai: char; Mahasiswa = record NIM :integer; Nama :string[20]; MK :array[1..mn] of MataKuliah; var TabMhs: array[1..nmaks] of Mahasiswa; Cara mengakses elemen TabMhs : TabMhs[N] {elemen ke-n dari TabMhs} TabMhs[N].NIM {mengacu field NIM dari elemen ke-n dari TabMhs} TabMhs[N].MK[M].KodeMK {mengacu field KodeMK ke-m dari elemen ke-n dari TabMhs} S1 Teknik Informatika-Unijoyo 16 8

Solusi Algoritma untuk mengisi TabMhs: Algoritma RECORD_DATA_MAHASISWA { Mengisi elemen record mahasiswa } DEKLARASI const Nmaks = 10 const Mn = 10 type MataKuliah : record<kodemk : string, NamaMK : string, Nilai : char> type Mahasiswa : record<nim : integer, Nama : string, MK : array[1..mn] of MataKuliah> LarikMhs : array[1..nmaks] of Mahasiswa I, J, M, N : integer DESKRIPSI: write( Masukkan Jumlah Data Mahasiswa? ) read(n) for I 1 to N do write( Nomor Mahasiswa ke-,i,? ) read(tabmhs[i].nim) write( Nama Mahasiswa ke-,i,? ) read(tabmhs[i].nama) write( Masukkan Jumlah Data Mata Kuliah? ) read(m) for J 1 to M do write( Kode Mata Kuliah ke-,j,? ) read(tabmhs[i].mk[j].kodemk) write( Nama Mata Kuliah ke-,j,? ) read(tabmhs[i].mk[j].namamk) write( Nilai Mata Kuliah ke-,j,? ) read(tabmhs[i].mk[j].nilai) S1 Teknik Informatika-Unijoyo 17 Solusi PASCAL untuk mengisi TabMhs: Program RECORD_DATA_MAHASISWA; const Nmaks = 100; Mn = 10; type MataKuliah = record KodeMK : string[8]; NamaMK : string[20]; Nilai: char; Mahasiswa = record NIM : integer; Nama : string[20]; MK : array[1..mn] of MataKuliah; var TabMhs : array[1..nmaks] of Mahasiswa; I, J, M, N : integer; write( Masukkan Jumlah Data Mahasiswa? );readln(n); for I := 1 to N do write( Nomor Mahasiswa ke-,i,? ); readln(tabmhs[i].nim); write( Nama Mahasiswa ke-,i,? ); readln(tabmhs[i].nama); write( Masukkan Jumlah Data Mata Kuliah? ); readln(m); writeln; for J := 1 to M do write( Kode Mata Kuliah ke-,j,? ); readln(tabmhs[i].mk[j].kodemk); write( Nama Mata Kuliah ke-,j,? ); readln(tabmhs[i].mk[j].namamk); write( Nilai Mata Kuliah ke-,j,? ); readln(tabmhs[i].mk[j].nilai); writeln; writeln; writeln; writeln; end. S1 Teknik Informatika-Unijoyo 18 9

Summary Record adalah elemen larik yang bertipe terstruktur Tipe data record merupakan kumpulan beberapa item data dengan tipe data yang berbeda-beda atau biasa disebut sebagai field Tipe data record juga dapat memiliki field berupa tipe data record yang lainnya S1 Teknik Informatika-Unijoyo 19 Daftar Pustaka Jogiyanto HM [1989]. Turbo Pascal, Yogyakarta: Andi Offset. Noor Ifada [2005]. Diktat Matakuliah Algoritma Pemrograman (Hibah Kompetisi A1), Bangkalan: Jurusan Teknik Informatika, Universitas Trunojoyo. Rinaldi Munir [2003]. Algoritma dan Pemrograman dengan Pascal dan C edisi Kedua, Bandung: Informatika. S1 Teknik Informatika-Unijoyo 20 10