Top Banner
MODUL: ALGORITMA & PEMROGRAMAN I NAMA MHS : ........................ NPM : ........................ PROGRAM STUDI : ........................ DOSEN PENGAMPU: Rita Wiryasaputra, ST., M. Cs. FAKULTAS ILMU KOMPUTER UNIV. INDO GLOBAL MANDIRI PALEMBANG
46

MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Feb 06, 2018

Download

Documents

dinh_dan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

MODUL: ALGORITMA & PEMROGRAMAN I

NAMA MHS : ........................

NPM : ........................

PROGRAM STUDI : ........................

DOSEN PENGAMPU:

Rita Wiryasaputra, ST., M. Cs.

FAKULTAS ILMU KOMPUTER

UNIV. INDO GLOBAL MANDIRI

PALEMBANG

Page 2: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

1

A. ALGORITMA Sebelum melangkah dalam pembuatan program dengan bahasa

pemrograman PASCAL, maka terlebih dahulu harus dimengerti beberapa

hal yang meliputi:

Identifikasi masalah (input,proses,output)

Algoritma

Implementasi dengan bahasa pemrograman

Definisi algoritma adalah urutan langkah dari awal hingga akhir disusun

secara sistematis dan bersifat logis untuk menyelesaikan suatu masalah.

Asal kata:

Penulis buku Arab Al-Khowarizmi (dibaca algorism)

Kitab Al-jabar wal-muqabala (buku pemugaran dan

pengurangan)

Belajar memprogram tidaklah sama dengan belajar bahasa pemrograman.

Belajar memprogram adalah belajar tentang metodologi pemecahan

masalah, kemudian menuangkannya dalam suatu notasi yang mudah

dipahami. Sedangkan belajar bahasa pemrograman berarti belajar

memakai suatu bahasa tertentu, bagaimana aturan tata bahasanya,

instruksi-instruksi yang digunakan, tata cara pengoperasian compiler-nya

dan sebagainya.

Tidak ada notasi baku dalam penulisan teks algoritma (notasi algoritmik)

sebagaimana pada notasi bahasa pemrograman. Namun, agar notasi

algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman,

sebaiknya notasi algoritmik tersebut berkoresponden dengan notasi

bahasa pemrograman secara umum.

Kelompok Algoritmik Pascal C C++

Assignment := = =

Input Read Read/readln Scanf Cin

output write Write/writeln Printf Cout

Page 3: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

2

Bahasa pemrograman Pascal merupakan bahasa pemrograman berbasis

teks. Penulisan programnya dan proses eksekusinya dilakukan dari atas

ke bawah sehingga disebut pemrograman Linear programming. Bahasa

pemrograman Pascal juga termasuk bahasa pemrograman Prosedural,

dimana program dibedakan antara data (dalam memori) dengan instruksi.

Program terdiri dari runtunan instruksi yang dilaksanakan satu per satu

secara berurutan oleh pemroses. Alur pelaksanaan instruksi dapat berubah

karena adanya kondisional. Data dalam memori dimanipulasi oleh

instruksi secara beruntun.

Algoritma disajikan dalam 2 bentuk :

Tulisan ( Pseudocode, English structure)

Gambar (Structure chart, HIPO, Flowchart, Nassi-Scheiderman

chart)

Pada dasarnya struktur algoritma meliputi:

1. Runtunan/sequence

2. Pemilihan/selection (If dan Case)

3. Pengulangan/repetition (For, Repeat dan While)

Teks algoritmik meliputi judul/kepala algoritma, deklarasi,

deskripsi algoritma.

Ciri-ciri algoritma :

1. input-terdapat nol masukkan atau lebih yang diberikan

secara eksternal

2. output-sedikitnya terdapat 1 keluaran yang dihasilkan

3. definite-harus secara sempurna menyatakan apa yang

dilakukan

4. efective-setiap instruksi harus dapat dilakukan secara

manual dalam jumlah waktu yang terhingga

5. terminate-harus berhenti setelah sejumlah terbatas operasi

Page 4: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

3

B. PASCAL Pascal merupakan salah satu dari beberapa Bahasa Pemrograman

Tingkat Tinggi (High Level Language) yang terstruktur (tidak ada

loncatan/berurut, adanya blok yang mempunyai batas yang jelas)

dirancang oleh Professor Niklaus Wirth. Nama Pascal terambil dari ahli

matematika dan philosophi Perancis (Blaise Pascal).

Aplikasi Pascal biasa digunakan untuk menyelesaikan persoalan-

persoalan Scientific/Matematika yang memerlukan ketelitian perhitungan

yang akurat, database, game, bisnis, teknik. Praktikum ini menggunakan

compiler Turbo Pascal 7.0 yang dikeluarkan oleh Borland International.

1. MEMULAI TURBO PASCAL 7.0

Under Windows

Agar anda dapat menjalankan Turbo Pascal 7.0 under Windows,

maka anda harus memiliki file yang bernama TPX.EXE dan RTM.EXE.

Kedua file ini harus disatukan dalam satu direktori. Cara menjalankan

Turbo Pascal melalui Windows Explorer :

1. Klik START

2. Klik PROGRAM

3. Pilih direktori Turbo Pascal 7.0

4. Pilih direktori BIN lalu Double Klik

5. Carilah File bernama Tpx dengan type Application size 464 KB

Directori Turbo Pascal yang ada pada komputer berbeda-beda, tapi pada

umumnya seperti berikut :C:\Tp7\Bin\TPX

Akan tampil jendela EDITOR (JENDELA KERJA UTAMA) sistem

Turbo Pascal versi 7.0

Terdapat 10 menu pilihan yang berada pada JENDELA KERJA UTAMA

paling atas , yaitu : File , Edit, Search, Run, Compile, Debug, Tools,

Options, Window, Help

2. SUSUNAN PROGRAM PASCAL

Sebelum mempelajari suatu bahasa pemrograman, terlebih dahulu

harus dipahami aturan-aturan yang berlaku pada suatu bahasa

pemrograman tersebut. Aturan-aturan dalam suatu bahasa pemrograman

Page 5: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

4

biasanya dituangkan ke dalam Struktur Program yang dapat dilihat pada

gambar 1.

Deklarasi merupakan bagian untuk mendefinisikan semua nama yang

digunakan dalam algoritma. Dalam sebuah program, Procedure boleh

lebih dari satu, demikian pula dengan function. Variabel diperlukan untuk

menampung nilai tertentu pada memori komputer, dimana nilai tersebut

dapat berubah dalam proses. Constanta diperlukan untuk menampung

nilai yang tetap pada memori komputer.

Dalam memprogram diperlukan suatu komentar. Penjelasan

komentar dapat berupa tujuan/fungsi program, keterangan saat program

dibuat/direvisi, keterangan lain tentang kegunaan sejumlah pernyataan

dalam program. Sekalipun pemrogram memahami tentang apa yang

ditulis saat ini tanpa menyertakan komentar, di suatu saat nanti

pemrogram dapat lupa terhadap perintah yang telah ditulisnya.

3. TIPE DATA

Dalam Pascal, semua peubah(variabel) yang akan dipakai harus

sudah ditentukan tipe datanya, setelah itu tentukan batasan nilai peubah

dan jenis operasi yang bisa dilaksanakan atas peubah tersebut.

Pemilihan tipe data harus memperhatikan faktor penghematan memori.

Secara lengkap, tipe data dalam Turbo Pascal 7.0 dapat digambarkan

pada gambar 2.

4. CARA MENJALANKAN PROGRAM

1. Tekan tombol F10

2. Pilihlah menu RUN kemudian Enter

3. Maka akan keluar sejumlah sub menu RUN

4. Pilihlah RUN utk menjalankan program

5. Perintah diatas dapat disingkat dengan menekan tombol

CTRL+F9

5. CARA MENYIMPAN PROGRAM

1. Tekan tombol F10

2. Pilihlah menu FILE kemudian Enter

3. Pilihlah SAVE atau SAVE AS kemudian Enter

4. Pada Kotak dialog SAVE AS ketiklah nama file anda, kemudian

tekan Enter.

5. Perintah diatas dapat disingkat dengan menekan tombol F2

Page 6: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

5

Header Program JUDUL_PROGRAM; { *** nama program *** }

Uses . . . . . . { *** deklarasi piranti *** }

Label . . . . . . { *** deklarasi label *** }

Const . . . . . . { *** deklarasi konstanta *** }

Type . . . . . . { *** deklarasi tipe data *** }

Var . . . . . . . { *** deklarasi perubah *** }

Blok Procedure nama_prosedur_SATU; {*** prosedur *** }

Procedure nama_prosedur_DUA; { *** prosedur *** }

Function nama_fungsi_TAMBAH; { *** fungsi *** }

Begin { *** awal program *** }

-

<statemen- statemen ATAU perintah dari program>

-

End. { *** akhir dari program utama *** }

Gambar 1. Struktur Program PASCAL

6. CARA MEMANGGIL PROGRAM

1. Tekan tombol F10

2. Pilihlah menu FILE kemudian Enter

3. Pilihlah OPEN

4. Pada Kotak dialog NAME ketiklah nama file yang akan

dipanggil, kemudian tekan Enter.

5. Perintah diatas dapat digantikan dengan menekan tombol F3

7. CARA MENUTUP PROGRAM

1. Tekan tombol ALT+F3

2. Jika dilayar terdapat beberapa program yang dibuka maka

program yang sedang aktif dilayar akan ditutup.

3. Tekan lagi tombol ALT+F3 maka program sebelumnya akan

ditutup, dan seterusnya.

8. CARA MENCETAK

1. Tekan tombol F10

2. Pilihlah menu FILE kemudian Enter

3. Pilihlah PRINT kemudian Enter

Page 7: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

6

Array (larik)

Record(rekaman)

Set(himpunan)

File (berkas)

Integer

ShorInt

LongInt

Boolean

Char

Byte

Word

Subjangkauan (Subrange)

Terbilang (Enumerated)

Gambar 2. Tipe Data

9. KELUAR DARI TURBO PASCAL

1. Jika pada layar masih ada program, simpanlah sebelum keluar

dari lembar kerja.

2. Tekan tombol F10

3. Pilihlah menu FILE kemudian Enter

4. Pilihlah EXIT kemudian Enter

5. Perintah diatas dapat diganti dengan menekan tombol ALT+X

Tipe pointer

Tipe data

Tipe sederhana Tipe string Tipe

terstruktur

Tipe Real

Tipe Ordinal

Page 8: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

7

Praktikum 1 Pengenalan Turbo Pascal

Tujuan:

Mempelajari sistem operasi DOS dan Windows

Mempelajari cara pemakaian (set-up) bahasa pemrograman

Turbo Pascal

Mempelajari cara menulis program pada editor Turbo Pascal

Mempelajari kesalahan yang telah dibuat dan mengoreksinya

Mempelajari cara mengedit program Turbo Pascal

Mempelajari cara menjalankan (eksekusi) Turbo Pascal

Mempelajari pemakaian fungsi clrscr

Mempelajari posisi kursor

Mempelajari format output di layar

Cara Kerja:

1. Salinlah program I.1 untuk mencetak Saya mahasiswa Teknik

Informatika UNIVERSITAS IGM kemudian jalankan

2. Simpan program I.1 dengan mengaktifkan menu file lalu pilih

save (F2) dan tuliskan nama file tersebut.

3. Salinlah program I.2 dengan mengaktifkan menu File lalu pilih

new, kemudian jalankan (CTRL+F9)

4. Simpan program I.2 dengan mengaktifkan menu file lalu pilih

save (F2) dan tuliskan nama file tersebut

Page 9: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

8

Program I.1

{Program Pertamaku}

Uses crt;

Begin

Clrscr;

Write(„ Saya Mahasiswa

„);

Write(„ Teknik

Informatika „)

Write(„ UNIVERSITAS

IGM );

End.

Program I.2

{Program Pertamaku}

Uses crt;

Begin

Clrscr;

Write(„ Saya Mahasiswa „);

Writeln(„ Teknik

Informatika „)

Write(„ UNIVERSITAS

IGM );

Readln;

End.

Praktikum 2 Statement Input/Output

Tujuan:

Mempelajari cara menempatkan data dlm memori (variabel,konstanta)

Mempelajari tipe integer dan string

Mempelajari cara menuliskan output ke layar

Mempelajari cara membaca data (input) dari keyboard

Contoh 2.1 : Tulislah sebuah program yang dapat membaca bilangan dari

keyboard, lalu menuliskan kembali bilangan tersebut ke layar monitor.

Masukan : bilangan

Keluaran : bilangan yang dimasukkan.

Program Bilangan Masukkan bilangan = ? Bilangan yang dimasukkan tersebut adalah bilangan ?

Page 10: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

9

Program 2.1

{Program Keduaku}

Uses crt;

Var

Nilai : integer;

Begin

Clrscr;

Writeln(„ Program Bilangan „);

Write(„ Masukkan bilangan = „);

Readln(nilai);

Write(„ Bilangan yang dimasukkan tersebut adalah bilangan „, nilai);

Readln;

End.

Soal – soal Latihan : 1. Tulislah sebuah program yang dapat menghitung luas bujursangkar.

Adapun rumus luas=sisi * sisi. Telah diketahui bahwa sisi = 5.

Masukan : tidak ada

Keluaran : hasil luas bujursangkar

Program Luas Bujur Sangkar Luas Bujursangkar yang dihitung adalah …

2. Tulislah sebuah program yang mendefinisikan sebuah konstanta yang

bernilai 25, lalu tuliskan nilai konstanta tersebut ke layar monitor.

Masukan : tidak ada

Keluaran : nilai konstanta

Program Konstanta Bilangan bulat yang disimpan sebagai konstanta adalah 25

3. Tulislah sebuah program yang membaca sebuah nama bertipe string

dari keyboard, lalu menuliskan pesan tertentu.

Masukan : nama

Keluaran : pesan dengan nama yang dimasukkan

Program registrasi Registrasi Praktikum Algoritma dan Pemrograman 1 {proses input}

Page 11: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

10

Nama : XXXXX {proses output, bersihkan layar terlebih dahulu}

Selamat pagi, XXXXX Selamat mengerjakan praktikum.

4. Buatlah program untuk menghitung Nilai Akhir Mata Kuliah

Algoritma. Nilai akhir ini ditentukan berdasarkan rumus NA= Nilai

Quiz*20% + Nilai UTS*30%+Nilai UAS*50%.

Masukan : Tiga Nilai

Keluaran : Nilai Akhir

Program Perhitungan Nilai Akhir Mata Kuliah Algoritma Nilai Quiz : … Nilai UTS : … Nilai UAS : … Nilai Akhir : …

5. Perusahaan telepon di kota „X‟ mempunyai tarif Rp. 100 per pulsa.

Setiap langganan dikenakan biaya langganan sebesar Rp. 3000

perbulan. Buatlah program untuk menghitung tagihan langganan.

Masukan: nama langganan, banyaknya pulsa

Keluaran : jumlah tagihan

Petunjuk : buatlah biaya langganan dan tarif pulsa sebagai konstanta

( karena untuk semua langganan dianggap sama)

Program Tagihan Langganan Nama Langganan : X Banyak pulsa : … Tagihan Langganan X adalah sebesar Rp…

6. Bila bentuk bumi dianggap sebagai bola dengan jari-jari 6370 km,

hitunglah keliling, luas permukaan, dan isi bumi.

Masukan : tidak ada

Keluaran : keliling,luas, isi

Program Perhitungan Bumi Keliling : 40004

Page 12: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

11

Luas : 1082148051300 Isi : 127057

Petunjuk : buatlah jari – jari bumi sebagai konstanta, utk perpangkatan 3

maka rumus nilai perpangkatan = exp(ln(jari)*3) dimana nilai perpangkatan

adlh real

Rumus :

Keliling = 2 * phi * r

Luas permukaan = 4/3 * phi * r3

Isi = 4 * phi * r2

7. Tulislah program untuk menghitung panjang sisi miring segitiga siku-

siku. Rumus yang digunakan C2=A

2+B

2

8. Mengubah jumlah detik menjadi bentuk jam, menit dan detik.

Contoh: 5020 detik = 1 jam 23 menit 40 detik

Masukan : jumlah detik

Keluaran : satuan jam-menit-detik

Program Konversi Detik Jumlah detik : 5020 Hasil konversi : 1 jam 23 menit 40 detik

Petunjuk : langkah – langkah penyelesaiannya adalah sebagai berikut :

jam := total div 3600

sisa := total mod 3600

menit := sisa div 60

detik := sisa mod 60

9. Tulislah sebuah program yang dapat membaca sebuah nilai suhu

dalam derajat celcius dari keyboard. Menghitung konversi celcius

menjadi suhu dalam satuan Fahrenheit dan Kelvin

Masukan : celcius (real)

Keluaran : Hasil perhitungan ke layar monitor dalam Fahrenheit dan Kelvin

Page 13: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

12

Rumus :

Fahrenheit = 1.8 * celcius + 32

Kelvin.= Celcius + 273

Program Konversi Suhu

Nilai suhu dalam derajat celcius : XXX XXX oC = XXX.XX oF

XXX oC = XXX.XX oK

Page 14: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

13

Tugas :

Nilai :

Page 15: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

14

Praktikum 3 dan 4 Statement Kontrol Pengkondisian IF

Tujuan:

Mempelajari pengkondisian IF

Dalam program, adakalanya suatu aksi hanya dilakukan bila memenuhi

kondisi tertentu.

Penulisan dalam PASCAL:

Contoh 3.1 : Tulislah sebuah program yang dapat membaca bilangan dari

keyboard, lalu menuliskan apakah bilangan yang dimasukkan tersebut

merupakan bilangan genap atau ganjil.

Masukan : bilangan

Keluaran : GENAP / GANJIL

Program Bilangan Genap Ganjil Masukkan bilangan = ? Bilangan yang dimasukkan tersebut merupakan bilangan ?

Program 3.1

{Program Genap/Ganjil}

Uses crt;

Var bilangan : integer;

Ket : string;

Const genap = „GENAP‟;

If kondisi then begin <perintah 1>; <perintah 2>; end else begin <perintah 1>; <perintah 2>; end;

Page 16: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

15

Ganjil = „GANJIL‟;

Begin

Clrscr;

Write („ Program Bilangan Genap Ganjil ‟);

Write („ Masukkan bilangan = „);

Readln(bilangan);

If (bilangan mod 2) = 0 then ket := Genap

Else ket = Ganjil;

Writeln;

Write („ Bilangan yang dimasukkan tersebut merupakan bilangan „,ket);

Readkey;

End.

Soal – soal Latihan : 1. Sebuah Perusahaan memberikan beasiswa kepada pelajar dengan

kondisi berikut : Anak yatim piatu dan Anak purnawirawan ABRI

Buatlah Program untuk menyatakan apakah seseorang pelajar mendapat

beasiswa atau tidak.

Masukan = 1. Nama Siswa

2. Anak Yatim piatu ( Y/ T)

3. Anak Purnawirawan ABRI ( Y/T)

Keluaran = Keterangan mendapat beasiswa atau tidak.

Program Beasiswa

Nama Siswa : Tuti

Anak Yatin Piatu (Y/T) : Y Anak Purnawirawan ABRI (Y/T) : T

Tuti tdk mendapat beasiswa

2. Sebuah perusahaan memberi kode untuk hari – hari dalam seminggu.

Nama Hari Kode

Senin 1

Selasa 2

Rabu 3

Kamis 4

Jum‟at 5

Sabtu 6

Minggu 7

Page 17: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

16

Upah buruh per jam untuk hari Senin hingga Jumat adalah sebesar Rp. 3000,-

Sedangkan upah buruh untuk hari Sabtu adalah 1.5 kali tarif biasa dan untuk

hari Minggu adalah 2 kali tarif biasa. Buatlah program untuk menghitung Upah

yang diterima seorang buruh untuk sehari kerja.

Masukan : Nama Buruh, Kode Hari, Jam kerja

Keluaran : Upah total.

Program Perhitungan Upah Buruh {proses input}

Nama Buruh : Tuti Kode Hari [1-7] : 2

Jam kerja : 12 jam

{proses output, sebelumnya bersihkan layar dulu} Buruh Tuti bekerja pada hari Selasa dengan total upah adalah Rp.

36000,-

3. Tiga buah bilangan dibaca dari keyboard. Program tersebut dapat

mencari nilai terbesar dari 3 buah bilangan yang telah dimasukan.

Masukan : X, Y,Z

Keluaran : nilai max dari 3 buah bilangan yang diinput

Program Mencari Nilai Max {proses input}

Masukan bilangan 1 : 3 Masukan bilangan 2 : 5

Masukan bilangan 3 : 4 {proses output, sebelumnya bersihkan layar dulu}

Nilai terbesar adalah 5

Page 18: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

17

Tugas :

Nilai :

Page 19: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

18

Praktikum 5 Statement Kontrol Pengkondisian CASE

Tujuan:

Mempelajari pengkondisian CASE

Untuk masalah dengan dua kasus atau lebih, struktur CASE dapat

menyederhanakan penulisan IF-THEN-ELSE yang bertingkat-tingkat. Pada

Case, nilai1..nilaiN adalah nilai yang bertipe integer, char atau boolean.

Operator kondisi yang digunakan pada CASE adalah operator „ = „

Penulisan dalam Pascal :

Contoh 5.1 : Tulislah sebuah program menu yang dapat membaca nomor menu

pilihan dari keyboard, lalu menuliskan menu apakah yang dimasukki.

Program CaseOfEnd;

Uses crt;

Var

pilih : byte;

Begin

Clrscr;

Write(„ Masukkan pilihan Anda = „); readln(pilih);

Case pilih of

1 : writeln(„Anda telah memilih menu 1‟);

2 : writeln(„Anda telah memilih menu 2‟);

3 : writeln(„Anda telah memilih menu 3‟);

Case nama of nilai1 : aksi1;

nilai2 : aksi2;

nilai3 : aksi3;

……. …….

nilaiN : aksiN;

[ else aksiX ]

end;

Page 20: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

19

else

writeln(„Masukan anda salah „);

end;

readln;

end.

Soal – soal Latihan : 1. Pajak atas barang – barang impor dari sebuah negara XYZ, dibagi

menjadi 4 kelas.

Kelas Jenis Barang Pajak

1 Makanan 10%

2 Pakaian 15%

3 Mesin-mesin 30%

4 Perabot 40%

Masukan : Kelas barang dan harga barang

Keluaran : Besarnya Pajak dan biaya.

{proses input}

Program Pajak Negara ‘XYZ’ Kelas Barang : 2

Harga Barang : $ 200 {proses output, sebelumnya bersihkan layar dulu}

Pajak untuk Pakaian adalah 15 % dengan biaya $ 230

2. Sebuah Minimarket „XYZ‟ menjual beberapa merk susu kaleng, yaitu

Dancow, Indomilk, Milo, Suprima, Sustagen,Ovaltine

Tiap – tiap merk dijual dalam ukuran besar, sedang dan kecil.

Harga satuannya adalah :

Kode Merk Besar Sedang Kecil

1 Dancow 10000 4500 2100

2 Indomilk 8500 4000 2025

3 Milo 7750 3750 2200

4 Suprima 9600 5100 2600

Page 21: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

20

5 Sustagen 17000 14500 8300

6 Ovaltine 11250 6500 3250

Buatlah program untuk menghitung jumlah yang harus dibayar oleh

seorang pembeli susu kaleng.

Masukan : Kode susu ( 1 – 6 ), ukuran ( B/S/K), Banyaknya Pembelian.

Keluaran : Jumlah Pembayaran.

{proses input}

Program Penjualan Susu Pada Minimarket ‘XYZ’ Kode Susu (1-6) : 2

Ukuran (B/S/K) : B Banyaknya pembelian : 2 buah

{proses output, sebelumnya bersihkan layar dulu}

Jumlah pembayaran untuk susu Indomilk berukuran besar adalah Rp. 17.000

Page 22: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

21

Tugas :

Nilai :

Page 23: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

22

Praktikum 6 dan 7 Statement Pengulangan FOR

Tujuan:

Mempelajari pengulangan For menaik dan menurun

Beberapa instruksi diulang untuk suatu jumlah pengulangan tertentu. Jumlah

pengulangan dapat diketahui sebelumnya atau ditentukan dalam pengulangan

program.

Penulisan dalam Pascal :

Penulisan dalam Pascal :

Contoh 6.1: Tulislah sebuah program kuadrat bilangan 1 hingga bilangan

tertentu

Masukan : bilangan (diasumsikan bilangan 4)

Keluaran : kuadrat bilangan 1 hingga kuadrat bilangan 4

Program Kuadrat Bilangan Masukkan bilangan = ? Kuadrat Bilangan adalah 1-1; 2-4; 3-9; 4-16;

For variabel := nilai awal To nilai akhir Do Begin

……………

aksi

……………

end;

For variabel := nilai awal DOWNTO nilai akhir DO Begin

……………

aksi

……………

end;

Page 24: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

23

Program Kuadrat_bilangan;

Uses crt;

Var i,bil,kuadrat : integer;

Begin

Clrscr;

Writeln(„Program Kuadrat Bilangan‟);

Write („Masukkan bilangan = „);

Readln(bil);

Write(„Kuadrat Bilangan adalah„);

For i := 1 to bil do

Begin

Kuadrat := i * i;

Write(i,‟-„,kuadrat,‟;‟);

End;

Readkey;

End.

Soal – soal Latihan :

1. Buatlah program yang dapat menampilkan formasi berikut :

1

1 2

1 2 3

1 2 3 4

1 2 3

1 2

1

2. Buatlah program yang dapat menampilkan deret seperti contoh:

N=5

1 3 6 10 15

N=10

100 98 96 94 92 90 88 86 84 82

3. Buatlah program untuk mencetak bilangan-bilangan prima diantara 2

dan 60 ; berikut dengan dengan jumlah prima tersebut.

Page 25: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

24

Program Bilangan Prima Bilangan Prima itu adalah …

Jumlah Prima : …

4. Buatlah program untuk menghitung suatu barisan bilangan Fibonacci

sebanyak 20 suku; berikut dengan dengan jumlah deretnya.

F1=F2=1

Fi=Fi-1 + Fi-2

Masukan : banyaknya deret pada barisan Fibonacci

Keluaran: hasil dari barisan Fibonacci dan jumlah deretnya

Program Barisan Fibonacci

Masukan banyak deret : … Deret itu adalah

0, 1, 1, 2, 3, 5, 8, ….. Jumlah deret = ….

5. Buatlah program untuk menghitung deret pecahan sebanyak 20 suku;

berikut dengan dengan jumlah deretnya (pembulatan sampai 3 angka

di belakang koma). Bentuk outputnya dicetak terurut ke kanan, seperti

berikut :

Masukan : banyak suku

Keluaran : suku dan jumlah deret

Program Deret Pecahan 1/1+1/2+1/3+1/4+, …..

Jumlah deret = ….

Page 26: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

25

Tugas :

Nilai :

Page 27: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

26

Praktikum 8 Statement Pengulangan While

Tujuan:

Mempelajari pengulangan While

Kelemahan dari perintah For-To-Do adalah banyak perulangan yang dilakukan

harus ditentukan terlebih dahulu sebelum masuk ke perintah perulangan

tersebut. Dalam pemrograman, seringkali ditemui proses perulangan yang

banyak. Perulangan tidak dapat ditentukan sebelum masuk ke proses

perulangan itu sendiri. Permasalahan ini diatasi dengan menggunakan perintah

perulangan While – Do.

Penulisan dalam Pascal :

Contoh 8.1 : Tulislah program naik turun berikut yang tidak menerima input

dari keyboard. Program akan menampilkan hasil sebagai berikut: 0 5, 1 4 , 2 3,

3 2, 4 1,5 0

{Program while}

Uses crt;

Var X,Y : integer;

Begin

Clrscr;

Writeln („Program Naik Turun‟);

Y := 5;

X := 0;

While X <= 5 do

Begin

Write ( X, Y,‟,‟);

While kondisi DO Begin

……………

aksi

……………

end; {endwhile}

Page 28: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

27

Y := Y - 1;

X := X + 1;

End; {endwhile}

Readkey;

End.

Soal – soal Latihan : 1. Sebuah kelurahan akan mengadakan cacah jiwa bagi warganya.

Buatlah program untuk cacah jiwa penduduk. Program ini dapat

menghitung jumlah penduduk yang berumur 17 tahun. Program berhenti

jika pernyataan „ingin coba lagi„ diisi dengan “ t “

Masukan : Jumlah penduduk, Nama Warga, Alamat, Umur

Keluaran : Jumlah Penduduk berumur 17 tahun.

Program Cacah Jiwa Penduduk Jumlah penduduk : …

Nama Warga : …. (akan diisi sejumlah banyak penduduk)

Alamat : … (akan diisi sejumlah banyak penduduk) Umur : …. (akan diisi sejumlah banyak penduduk)

Penduduk yang berumur 17 tahun berjumlah ?? orang. Apakah anda ingin mencoba lagi ? [y/t] …

2. Buatlah program untuk mengubah derajat temperatur sesuai dengan

soal pada praktikum sebelumnya (input/output). Program akan

berhenti jika pada pernyataan “hitung lagi ? [Y/T]”, diisi huruf T.

Masukan : celcius (real)

Keluaran : Hasil perhitungan ke layar monitor dalam Fahrenheit dan Kelvin

Program Konversi Suhu Kedua

Nilai suhu dalam derajat celcius : XXX XXX oC = XXX.XX oF

XXX oC = XXX.XX oK Apakah mau hitung lagi ?[Y/T] …

3. Buatlah program untuk mencari bilangan diantara 500/1000 yang

habis dibagi dengan 3 dan juga hitung berapa banyaknya. Program

akan berhenti jika pada pernyataan “hitung lagi ? [Y/T]”, diisi huruf

T.

Page 29: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

28

Masukan : bilangan

Keluaran : bilangan yang habis dibagi 3, jumlah bilangan

Program Perhitungan Bilangan Habis Dibagi 3

Bilangan tersebut adalah …

Jumlah bilangan yang habis dibagi 3 : … Hitung lagi ? [Y/T] …

4. Buatlah program untuk mencetak tabel suku-suku deret ganjil : 3, 7,

11, … sampai 12 suku ; berikut dengan dengan jumlah deret tersebut.

Program akan berhenti jika pada pernyataan “hitung lagi ? [Y/T]”,

diisi huruf T.

Program Bilangan Ganjil Hingga 12 suku 1, 3, 7, 11, …

Jumlah deret tersebut adalah …

Hitung lagi ? [Y/T] …

Page 30: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

29

Tugas :

Nilai :

Page 31: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

30

Praktikum 9 Statement Pengulangan Repeat

Tujuan:

Mempelajari pengulangan Repeat

Perintah perulangan repeat – until mirip dengan perintah while – do. Tetapi

pada perintah repeat – until, pengujian kondisi dilakukan di akhir perulangan.

Dan perulangan dilakukan selama kondisi belum dipenuhi.

Penulisan dalam Pascal :

Contoh 9.1 : Program menghitung banyak proses yang diulang pada badan

statement repeat_until. Program ini tidak menerima masukkan apapun tetapi

akan menghasilkan banyaknya proses yang dikerjakan oleh statement

repeat_until.

{Program repeat}

uses crt;

var A,N : integer;

Begin

Clrscr;

Writeln („Perhitungan Proses Repeat‟);

A := 0;

N := 0;

Repeat

A := A + 5;

N := N + 1;

Until A > 10 ;

Write(„Banyak proses : „,N);

Readkey;

End.

Repeat ……………

aksi

……………

Until kondisi;

Page 32: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

31

Soal – soal Latihan :

Ubahlah semua latihan pada while

menjadi menggunakan perintah

repeat

Tugas :

Nilai :

Page 33: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

32

Praktikum 10 dan 11 Statement Array

Tujuan:

Mempelajari representasi fisik struktur data array

Contoh 10.1 : Tulislah program mencari bilangan terbesar. Program

membutuhkan masukkan dari keyboard yang menyatakan banyaknya bilangan

dan deret bilangan. Hasil keluaran dari program adalah bilangan terbesar dari

deret yang telah dimasukkan.

{Program Bilangan Terbesar}

uses crt;

var i,j,max,banyak : integer;

x : array [1..10] of integer;

begin

clrscr;

writeln(„Program Bilangan Terbesar‟);

write(„Banyaknya bilangan „);

readln(banyak);

{untuk input bilangan}

for i := 1 to banyak do

readln(x[i]);

{untuk mencari bilangan terbesar}

max := 0;

for j := 1 to banyak do

begin

if x[j] >= max then

max := x[j];

end;

write (max);

readkey;

end.

Page 34: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

33

Soal – soal Latihan : 1. Buatlah program untuk menghitung harga B yaitu:

B= 22 )(

))((

XiXin

YiXiiXiYn

Dimana

N = banyaknya data (5)

Xi = X1+X2+X3+X4+X5

Yi = Y1+Y2+Y3+Y4+Y5

XiYi = X1Y1+X2Y2+X3Y3+X4Y4+X5Y5

Xi 2 = X1

2+X2

2+X3

2+X4

2+X5

2

Data sebagai berikut:

Xi 71 53 82 67 56

Yi 354 313 322 334 247

Masukan : Xi danYi

Keluaran : Nilai B

Program Menghitung Nilai B :

Xi Yi

… …

… …

… …

Nilai B adalah sebesar = …

2. Buatlah program untuk menghitung nilai akhir mata kuliah Algoritma

dari 10 orang mahasiswa, jika diketahui sebagai inputnya adalah

Nama, N1, N2, NU dan NA. Gunakan array.

Bentuk outputnya dicetak seperti berikut :

Page 35: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

34

HASIL AKHIR MATA KULIAH ALGORITMA

No Nama Nilai

1

Nilai

2

Nilai

Ujian

Nilai

Akhir Ketarangan

1 Tony 60 60 80 72 Lulus

2 Susi 70 80 60 66 Lulus

……. ……. ……. ……. ……. ……. …….

10 Melly 70 40 50 52 Tidak lulus

N1 = Nilai, N2 = Nilai, NU = Nilai Ujian, NA = Nilai Akhir

Nilai Akhir = 40 % x (rata-rata N1 + N2) + 60 % x NU

Jika Nilai Akhir >= 60, berikan ket = Lulus

Jika Nilai Akhir < 60, berikan ket = Tidak Lulus

3. Buatlah program untuk mencari bilangan terbesar dan terkecil dari

sejumlah bilangan yang dimasukkan berturut-turut. Tentukanlah

banyak bilangan yang akan dimasukkan terlebih dahulu. Gunakan

array. Output yan ditampilkan

Banyaknya Bilangan = n

x1 x2 x3 x4 x5 …. xn

Bilangan terbesar adalah = ….

Bilangan terkecil adalah = ….

4. Buatlah program untuk mengalikan matriks I berordo a x b dan

matriks II yang berordo b x c . Output yang diminta :

Ordo matriks I

Banyaknya baris :…..

Banyaknya kolom :…..

Ordo matriks II

Banyaknya baris :…..

Banyaknya kolom :…..

Matriks I : Baris 1 kolom 1 =

Baris 1 kolom 2 =

……………………...

Baris a kolom b =

Page 36: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

35

Matriks II : Baris 1 kolom 1 =

Baris 1 kolom 2 =

……………………...

Baris b kolom c =

Hasil perkalian matriks I dan matriks II adalah

….. …. ….

….. …. ….

….. …. ….

5. Buatlah program untuk menghitung Indeks Prestasi mahasiswa (IP)

dari mata kuliah Algoritma dan mata kuliah Pancasila. Jika diketahui

sebagai inputnya adalah Nama, Nilai mid dan nilai sum dari masing-

masing matakuliah, Bobot sks dari mata kuliah Algoritma adalah 4

sks dan mata kuliah Pancasila adalah 2 sks.

Page 37: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

36

Data Masukan:

Nama

Algoritma Pancasila

Nilai

1

Nilai

2

Nilai

Sum

Nilai

1

Nilai

2

Nilai

Sum

Tony 50 80 40 80 60 65

Susi 50 90 55 40 80 80

Lastri 85 80 90 50 80 35

Melly 70 90 90 60 50 52

Bentuk outputnya dicetak seperti berikut :

Hasil Indeks Prestasi Mahasiswa

No Nama Algoritma Pancasila Indeks

Prestasi NA AR NA AR

1 ……. ……. ……. ……. ……. …….

2 ……. ……. ……. ……. ……. …….

……. ……. ……. ……. ……. ……. …….

Nilai Akhir = 40 % x (rata-rata Nilai1 dng Nilai2) + 60 % x Nilai sum

Angka nilai relatif (AR) merupakan konversi dari Nilai Akhir:

Nilai Akhir <= 45 maka AR=0

Nilai Akhir > 45 dan <= 55 maka AR=1

Nilai Akhir > 55 dan <= 67 maka AR=2

Nilai Akhir > 67 dan <= 80 maka AR=3

Nilai Akhir > 80 maka AR=4

IP (Indeks Prestasi) dihitung dengan rumus : ((AR Algoritma*bobot

Algoritma ) +(AR Pancasila*bobot Pancasila)) / (bobot Algoritma+bobot

Pancasila)

Jumlah mahasiswa mendapat AR=0 : …

Jumlah mahasiswa mendapat AR=1 : …

Jumlah mahasiswa mendapat AR=2 : …

Jumlah mahasiswa mendapat AR=3 : …

Jumlah mahasiswa mendapat AR=4 : …

6. Buatlah program untuk menghitung jumlah uang akhir deposito

dengan menggunakan array dan case of sebanyak 12 data. Bentuk

outputnya dicetak seperti berikut

Page 38: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

37

BANK IGM PALEMBANG

No

Periode

Gol

Bunga Jumlah Uang

(dalam

Bulan)

(%/thn) Awal Akhir

1 4 B 21 Rp 1000000 Rp 1070000

2 1 A 18 Rp 2000000 Rp 2030000

3 10 C 24 Rp 2000000 Rp 2400000

… … … … …. …

12 15 D 27 Rp 1500000 Rp 2006250

Proses : Periode 1 bln s/d 3 bln, bunga 18%/tahun

Periode 4 bln s/d 6 bln, bunga 21%/tahun

Periode 7 bln s/d 12 bln, bunga 24%/tahun

Periode >12 bln, bunga 27%/tahun

Jumlah akhir bunga = Bunga Deposito yang diperoleh + jumlah uang

awal

7. Sebuah toko kue menjual 4 jenis kue yaitu kue bolu, kue lapis, kue

keju, kue coklat dengan ketentuan sebagai berikut untuk tiap jenis kue

yang dibeli:

Pembelian kue sebanyak 1-10 buah tidak mendapatkan potongan

harga

Pembelian kue sebanyak 11-50 buah mendapatkan potongan Rp.

100/buah

Pembelian kue sebanyak 51-100 buah mendapatkan potongan Rp

500/buah

Pembelian kue diatas 100 buah mendapatkan potongan Rp2000/buah

Selain itu setiap pembelian kue diatas 50 buah mendapatkan tambahan kue

sebanyak 5 buah kue sejenis, hadiah ini hanya diberikan sekali untuk tiap

pembelian kue sejenis.

Pembeli dapat membeli lebih dari satu jenis kue, perhitungan transaksi

pembelian dilakukan per satu jenis kue.

Masukan : Nama kue yang dibeli, jenis kue, jumlah pembelian kue, harga

satuan kue per buah

Keluaran :

Page 39: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

38

Nama kue yang dibeli, Jenis kue

Jumlah pembelian kue, Jumlah hadiah kue

Total kue yang diperoleh

Harga total kue sebelum potongan

Potongan harga

Harga total kue setelah potongan

Page 40: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

39

Tugas :

Nilai :

Page 41: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

40

Praktikum 12 dan 13 Statement Procedure

Tujuan:

Mempelajari modul procedure

Contoh 12.1: Tulislah program menggunakan procedure seperti berikut ini:

{Program procedure}

uses crt;

var C : real;

Procedure hasil (A:real, B:real; var C : real);

Var I : integer; {variabel lokal}

Begin

For I := 1 to 5 do

A:= A/B;

C:=A;

End; {akhir procedure}

Begin

Clrscr;

Hasil(32000,1.5,C);

Writeln(„Hasil : „,C:10:2);

Readkey;

End.

Soal – soal Latihan :

1. Buatlah program yang menghasilkan keterangan tentang hari_esok

dan kemarin. Pakai prosedur untuk menghitungnya. Input yang

dimasukkan adalah hari_ini. Output yang ditampilkan

Masukkan hari ini : ….. (kamis)

Hari Esok adalah : Jum‟at

Kemarin adalah : Rabu

2. Buatlah program untuk mencetak laporan seperti yang terlihat di

bawah ini

Page 42: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

41

Tahap 1: Buat prosedur untuk input (mengisi) dan prosedur

output(menampilkan) kemudian kontrol program tersebut dengan MENU

UTAMA

Tahap 2 : Kembangkan program diatas untuk pengoperasian file text, dan file

bertipe, dengan mengkombinasikan record dan array !

No NPM Nama

Jrs

Uang

Kuliah

Uang

Gedung

Jumlah

Bayar

1 19991101 xxxxx TI(S1) 500000 1000000 1500000

2 19992103 xxxxx MI(D1) 400000 800000 1200000

.. ……… …….. ……. ……. ……… ………

.. ……… …….. ……. …… …….. …….

Total : ………………

Jumlah Jurusan

TI(S1) = xx orang

MI(D1) = xx orang

MI(D3) = xx orang

TK(D3) = xx orang

AKT(D3) = xx orang

Variabel NPM dan Nama bertipe string

Jurusan didapat dari dua digit posisi ke 5 dari NPM dengan

menggunakan perintah COPY

Jika digit yang diambil = 11 maka :

Jurusan = TI(S1),UK = 500000, UG = 1000000

Jika digit yang diambil = 21 maka :

Jurusan = MI(D1),UK = 400000, UG = 800000

Jika digit yang diambil = 31 maka :

Jurusan = MI(D3),UK = 350000, UG = 700000

Jika digit yang diambil = 12 maka :

Jurusan = TK(D3),UK = 300000, UG = 600000

Jika digit yang diambil = 42 maka :

Jurusan = AKT(D3),UK = 600000, UG = 1200000

Page 43: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

42

Tugas :

Nilai :

Page 44: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

43

Praktikum 14 dan 15 Statement Function

Tujuan:

Mempelajari modul function

Contoh 14.1 : Tulislah program fungsi berikut ini

{Program Fungsi}

uses crt;

var A1,B1 : integer;

function Ambil (A,B : integer):integer;

begin

A := A div B;

Ambil := A;

end; {akhir function}

Begin

Clrscr;

B1:=10;

A1 := B1 * (ambil(100,B1);

Writeln(„Hasil di A : „,A1);

Readkey;

End.

Soal – soal Latihan :

1. Buatlah sebuah unit yang memuat beberapa procedure dan function

yang dapat digunakan oleh program utama untuk memproses kegiatan

– kegiatan dari menu berikut:

Memasukkan beberapa bilangan

Menghitung hasil penjumlahan bilangan tersebut

Menghitung hasil perkalian

Menghitung hasil pembagian

2. Buatlah program untuk menyelesaikan kasus berikut dengan

pengoperasian file text dan file bertipe, gunakan Tipe Data Array dan

Record untuk mendukung proses program

Page 45: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

44

Kasus : Suatu koperasi menggunakan kartu kredit bagi anggotanya. Pada

kartu tertulis data No. Anggota, Nama, Besar Simpanan. Setiap kali

berbelanja, maka uang simpanan anggota yang bersangkutan berkurang

sejumlah belanjaannya. Bilamana simpanan yang bersangkutan sudah habis

atau jumlah belanjaan melebihi batas simpanan, maka tidak bisa belanja lagi.

Program yang dibuat memiliki 4 menu pilihan, yaitu :

1. Mengisi data anggota (nama, no dan uang simpanan)

(mengisi data seluruh anggota koperasi , max. 100 orang)

2. Belanja

(Jumlah uang yang dibelanjakan anggota)

3. Cetak tabel

(mencetak tabel/daftar yang berisi data anggota dan besar

simpanan masing-masing)

4. Selesai

Page 46: MODUL - ritasaputra.web.ugm.ac.idritasaputra.web.ugm.ac.id/Algoritma Pemrograman1/Modul2012.pdf · secara berurutan oleh pemroses. ... gambar 1. Deklarasi merupakan ... XXX XXX oC

Modul Praktikum

Algoritma dan Pemrograman 1 (Pascal)

Rita Wiryasaputra,ST., M. Cs

45

Tugas :

Nilai :