Anda di halaman 1dari 43

PENDAHULUAN

PENDAHULUAN 1. Dasar-Dasar Pemrograman Dalam dunia komputer dikenal beraneka ragam bahasa pemrograman. Karena begitu

1. Dasar-Dasar Pemrograman Dalam dunia komputer dikenal beraneka ragam bahasa pemrograman. Karena begitu banyaknya, maka bahsa-bahasa tersebut dikelompokkan berdasarkan kriteria tertentu. Ada yang mengelompokkan menurut tingkatan bahasa, yaitu high level, middle level, dan low level. Ada juga yang mengelompokkannya menjadi procedural/functioning programming, object orietend programming, dan sebagainya. Pada dasarnya bahasa-bahasa pemrograman tersebut memiliki bagian-bagianyang serupa. Yang membedakan hanyalah tata bahasa yang digunakan.

2. Belajar Memprogram dan Belajar Bahasa Pemrograman Belajar memprograman tidak sama dengan belajar bahasa pemrograman. Belajar memprogram adalah tentang metologi pemecahan masalah. Kemudian menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami. Belajar bahasa pemrograman berarti belajar memakai suatu bahasa, aturan, tata bahasanya, instruksi-instruksinya, tata cara pengoperasian compiler-nya, dan manfaatkan instruksi-instruksi tersebut untuk membuat program yang ditulis dalam bahasa itu saja.

3. Klasifikasi Bahasa Pemrograman Sampai saat ini terdapat puluhan bahasa pemrograman. Kita dapat menyebutkan antara lain bahasa rakitan (assemblly), Fortron, Ada, PL/I, Algol, Pascal, C, C++, Basic, Prolog. Bahasa-bahasa simulasi seperti CSMP, Simscript, GPSS, Dinamo dan banyak lagi. Belakangan juga muncul bahasa pemrograman baru seperti Perl dan Java. Berdasarkan terapannya, bahasa pemrograman digolangkan atas :

3.1. Bahasa Pemrograman Bertujuan Khusus. Yang termasuk kelompok ini adalah Cobol (untuk terapan bisnis dan administrasi), Fortran (terapan komputasi ilmiah), Prolog (terapan kecerdasan buatan), dan sebagainya.

1

3.2. Bahasa Pemrograman Bertujuan Umum. Dapat digunakan untuk berbagai aplikasi. Termasuk dalam kelompok ini adalah Pascal, Basic, dan C. Bahasa-bahasa bertujuan tidak berarti tidak bisa digunakan untuk aplikasi lain. Cobol misalnya dapat digunakan untuk terpan ilmiah.

4. Langkah-Langkah Pembuatan Program

Langkah-langkah sistematis pembuatan program, sebagai berikut :

4.1. Mendefinisikan permasalahan

4.2. Membuat rumusan untuk pemecahan masalah

4.3. Implementasi

4.4. Menguji coba dan membuat dokumentasi

5. Algoritma Algoritma adalah urutan aksi-aksi yang dinyatakan dengan jelas dan tidak rancu untuk memecahkan suatu masalah dalam rentang waktu tertentu. Setiap aksi harus dapat dikerjakan dan mempunyai efek tertentu. Algoritman dapat dituliskan dengan banyak cara, mulai dari menggunkan bahasa alami yang digunakan sehari-hari, simbol grafik bagan alir, sampai menggunakan bahasa pemrograman seperti bahasa Pascal. Dari sumber lain, algoritma diartikan sebagai urutan langkah-langkah logis penyelesaian suatu masalah yang disusun secara sistematis. Kata logis di atas merupakan kata kunci dalam sebuah algoritma. Langkah-langkah di dalam algoritma haruslah logis, ini berarti hasil dari urutan langkah-langkah tersebut harus dapat ditentukan, benar atau salahnya. Komputer hanyalah salah satu pemroses. Agar dapat dilaksanakan oleh komputer, algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. Jadi program adalah perwujudan atau implementasi teknis algoritma yang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer. Secara garis besar, algoritma adalah urutan langkah-langkah penyelesaian masalah, sedangkan program adalah realisasi algoritma dalam bahasa pemrograman. Program ditulis dalam salah satu bahasa pemrograman, dan kegiatan membuat program disebut pemrograman

2

(programming). Orang yang menulis program disebut pemrogram (programmer). Tiap-tiap langkah di dalam program disebut pemrogram (programmer). Tiap-tiap langkah di dalam program disebut pernyataan (statement) atau instruksi. Jadi, program tersusun atas deretan instruksi, bila suatu instruksi dilaksanakan, maka operasi-operasi yang bersesuaian dengan instruksi tersebut dikerjakan oleh komputer. Komputer secara garis besar tersusun atas empat komponen utama, yaitu piranti masukkan, piranti keluaran, unit pemroses utama (CPU), dan memori. Mekanisme kerja keempat komponen tersebut adalah mula-mula program dimasukkan ke dalam memori komputer, ketika program dilaksanankan (execute), setiap instruksi yang telah tersimpan di dalam komputer dikirim ke CPU, CPU mengerjakan operasi- operasi yang bersesuaian dengan instruksi tersebut. Bila suatu operasi memerlukan data, data dibaca di piranti masukkan, disimpan di dalam memori, lalu dikirim ke CPU untuk operasi yang memerlukannya tadi. Bila proses menghasilkan keluaran atau informasi, keluaran disimpan ke dalam memori, lalu memori menuliskan keluaran tasi di piranti keluaran (misalkan dengan mencetaknya ke layer monitor).

6.

PASCAL Pascal adalah bahasa tingkat tinggi (high level languange) yang orientasinya pada segala tujuan, dirancang oleh Prof. Niklaus Wirth dari Technical University di Zurich, Switzerland. Nama Pascal diambil sebagai penghargaan terhadap Blaise Pascal, ahli matematik dan philosophi terkenal abad 17 dari Prancis. Prof. Niklaus Wirth memperkenalkan compiler bahasa Pascal pertama kali untuk komputer CDC 6000 (Control Data Corporation) yang dipublikasikan pada tahun 1971 dengan tujuan untuk membantu mengajar program komputer secara sistematis, khususnya untuk memperkenalkan pemrograman yang terstruktur (structured programming). Jadi Pascal adalah bahasa yang ditujukan untuk membuat program terstruktur. Beberapa versi dari Pascal telah beredar di pasaran, diantaranya UCSD Pascal (University of California at San Diego Pascal), MS-Pascal (Microsoft Pascal), Apple Pascal, Turbo Pascal, dan lain sebagainya.

3

7.

Langkah-Langkah Menuliskan Program Dalam Turbo Pascal Langkah-langkahnya :

7.1. Bukalah Software Turbo Pascal for Windows 1.5 (TPW 1.5), akan

terlihat tampilan awal Turbo Pascal sebagai berikut :

, akan terlihat tampilan awal Turbo Pascal sebagai berikut : 7.2. Pilih File New, kemudian tulis

7.2. Pilih File New, kemudian tulis Source Code program Pascal. Source Code Pascal dapat ditulis pada jendela kerja baru atau text editor Pascal dengan nama file noname00.

7.3. Compile file dengan (ALT + F9 atau pilih sub menu Compile). Compile file dijalankan untuk mengecek Source Code apakah sudah memenuhi aturan penulisan Source Code atau kesalahan syntax. Sedangkan untuk mengubah Source Code menjadi sebuah program, kita gunakan build yang terdapat di Compile Build. Setelah Source Code tercompile, terbentuklah sebuah file dengan ekstensi ”.exe” yang sudah merupakan sebuah program executable.

7.4. Jalankan program dengan (CRTL + F9 atau pilih sub menu Run). Setelah kita compile file yang berisi source code, maka sebagai hasil kompilasi tersebut kita akan mendapatkan suatu file yang bisa dijalankan

4

(executable file). Menjalankan program yang kita buat berarti menjalankan file hasil proses kompilasi tersebut.

7.5. Untuk menyimpan pilih sub menu File Save As. Sebagai berikut :

pilih sub menu File Save As . Sebagai berikut : Dalam melakukan penyimpanan, kita dapat memilih

Dalam melakukan penyimpanan, kita dapat memilih di direktori mana kita menyimpan file ”.pas atau ”.exe yang kita kerjakan, setelah memilih direktorinya kita dapat merubah nama file yang ingin kita simpan, dengan cara catatan di belakang nama file harus selalu dicantumkan ekstensinya (‘.pas).

5

PEMBAHASAN

PEMBAHASAN Materi 1 Topik Input dan Output Setiap program aplikasi pasti membutuhkan operasi input dan output.

Materi 1 Topik Input dan Output

Setiap program aplikasi pasti membutuhkan operasi input dan output. Pada umumnya, program-program aplikasi dalam hal input atau proses memasukkan data secara interaktif dan dapat menghasilkan suatu output, karena suatu program yang tidak menghasilkan output akan sia-sia, karena hasilnya tidak akan dapat dinikmati. Berikut ini akan dibahas mengenai cara-cara memasukkan data secara interaktif dan cara-cara menampilkan output.

Contoh Soal 1 Buat program yang dapat menghitung jarak (s) dari sebuah harga kecepatan (v) dan waktu (t).

Spesifikasi Program

Input

:

v (kecepatan, m/s), integer dan t (waktu, s), integer.

Proses

:

menghitung s (jarak, m) = v * t.

Output

:

s (jarak yang ditempuh, meter), real.

Implementasi Program

: menghitung s (jarak, m) = v * t. Output : s (jarak yang ditempuh, meter),

6

Hasil Kompilasi

Hasil Kompilasi Contoh Soal 2 Buat program dengan spesifikasi teknis sebagai berikut : Spesifikasi Program Input

Contoh Soal 2 Buat program dengan spesifikasi teknis sebagai berikut :

Spesifikasi Program

Input

:

menerima data nisn, nama, alamat dan no. Telepon/hp.

Proses

:

-

Output

:

menampilkan semua data yang diinputkan.

Implementasi Program

dan no. Telepon/hp. Proses : - Output : menampilkan semua data yang diinputkan. Implementasi Program 7

7

Hasil Kompilasi

Hasil Kompilasi Contoh Soal 3 Buatlah program yang dapat menghitung nilai Y dari persamaan matematika berikut

Contoh Soal 3 Buatlah program yang dapat menghitung nilai Y dari persamaan matematika berikut :

Spesifikasi Program Y = 3X 4 + 8X 3 + 13X 3 + 9X + 17

Implementasi Program

berikut : Spesifikasi Program Y = 3X 4 + 8X 3 + 13X 3 + 9X

Hasil Kompilasi

berikut : Spesifikasi Program Y = 3X 4 + 8X 3 + 13X 3 + 9X

8

Tugas 1

Tugas 1

Soal 1 Buat program yang dapat menghitung Luas Persegi Panjang (Ls) dari harga Panjang (P) dan Lebar (L).

Spesifikasi Program

Input

:

P dan L

Proses

:

Ls = P * L

Output

:

Ls

Soal 2 Buat program yang dapat memberikan informasi tagihan listrik dengan spesifikasi sebagai berikut :

Spesifikasi Program

Input

:

Nomor Pelanggan, Besar Pemakaian

Proses

:

Menghitung tagihan dengan ketentuan sebagai berikut :

Output

:

Abonemen = 5000 Biaya Pakai = Besar Pemakaian x 375 Iuran Sampah = 1000 Tagihan = Abonemen + Biaya Pakai + Iuran Sampah Tagihan

Soal 3 Buat program yang menghitung Luas Lingkaran (Ls) dan Keliling Lingkaran (Kll). Spesifikasi Program

Input

:

r (jari-jari)

Proses

:

Dimana hi = 3.14

Output

:

Ls = phi x r 2 dan Kll = phi x D (diameter) Ls dan Kll

9

Soal 4 Buat program dengan ketentuan sebagai berikut :

Spesifikasi Program

Input

:

Gaji Pokok, Jumlah Anak

Proses

:

Tunjangan = 25% dari gaji pokok + Jumlah Anak x 30000

Output

:

Total Gaji = Gaji Pokok + Tunjangan Total Gaji

Soal 5 Buat Program yang menerima data nilai-nilai siswa-siswi yaitu ujian1, ujian2, tugas dan uas. Kemudian progam menghitung dan menampilkan nilai akhir dengan rumus sebagai berikut :

Spesifikasi Program Nilai Akhir = 20% x Ujian1 + 20% x Ujian2 + 50% x UAS + 10% x Tugas

10

Materi 2 Topik Seleksi Kondisi

Suatu Struktur dasar algoritma yang memiliki satu atau lebih kondisi tertentu dimana sebuah instruksi dilaksanakan jika sebuah kondisi/persyaratan terpenuhi. Ada beberapa bentuk struktur dasar pemilihan ini :

2.1. Seleksi If Statement If berguna untuk memilih salah satu dari 2 atau lebih

kemungkinan yang ada. Bila salah satu keadaan yang dapat dipilih dalam statement If mengandung lebih dari datu pernyataan, maka pernyataan- pernyataan tersebut dimasukkan dalam blok Begin dan End. Bentuk Umum :

1. If dengan satu statement If <Kondisi> Then <Statement>;

2. If dengan banyak statement If <Kondisi> Then Begin <Statement 1>; <Statement 2>; ………… <Statement n>; End;

3. If-Then-Else dengan satu statement If <Kondisi> Then <Statement 1> Else <Statement 2>;

4. If dengan banyak statement, else dengan satu statement If <Kondisi> Then Begin

11

<Statement 1>;

<Statement 2>;

………

<Statement n>

End Else <Statement>;

5. If dengan satu statement, else dengan banyak statement If <Kondisi> Then <Statement 1> Else Begin <Statement 2>; <Statement 3>; ……… <Statement n>;

End;

6. If-Then-Else dengan banyak Statement If <Kondisi> Then Begin <Statement 1>; <Statement 2>; ……… <Statement n>; End Else Begin <Statement n+1>; <Statement n+2>; ……… <Statement n+m>;

End;

12

7. If-Then-Else If If <Kondisi 1> Then <Statement 1> Else If <Kondisi> Then <Statement 2> ……… Else <Statement n>

8. If bersarang If <Kondisi 1> Then If <Kondisi 2> Then If <Kondisi n> Then <Statement>

Contoh Soal 1 Buat program yang dapat menentukan komentar dari nilai angka dimasukkan

Spesifikasi Program

Input

:

Nilai

Proses

:

Jika nilai angka lebih dari 75, maka komentarnya adalah LULUS,

Output

:

tapi jika kurang dari 75, maka komentarnya adalah TIDAK LULUS Komentar

Implementasi Program

LULUS, Output : tapi jika kurang dari 75, maka komentarnya adalah TIDAK LULUS Komentar Implementasi Program

13

Hasil Kompilasi

Hasil Kompilasi Contoh Soal 2 Buat program yang dapat menentukkan bilangan terbesar dari 2 buah bilangan

Contoh Soal 2 Buat program yang dapat menentukkan bilangan terbesar dari 2 buah bilangan

Spesifikasi Program

Input

:

a dan b

Proses

:

Jika a lebih dari b, maka terbesar adalah a, begitu pula seterusnya

Output

:

Terbesar

Implementasi Program

dari b, maka terbesar adalah a, begitu pula seterusnya Output : Terbesar Implementasi Program Hasil Kompilasi

Hasil Kompilasi

dari b, maka terbesar adalah a, begitu pula seterusnya Output : Terbesar Implementasi Program Hasil Kompilasi

14

Contoh Soal 3 Buat program yang dapat menentukkan bilangan terbesar dari 3 buah bilangan

Spesifikasi Program

Input

:

a, b dan c

Proses

:

Jika a lebih dari b dan a lebih besar dari c maka terbesar adalah a,

Output

:

begitu pula seterusnya Terbesar

Implementasi Program

dari c maka terbesar adalah a, Output : begitu pula seterusnya Terbesar Implementasi Program Hasil Kompilasi

Hasil Kompilasi

dari c maka terbesar adalah a, Output : begitu pula seterusnya Terbesar Implementasi Program Hasil Kompilasi

15

Tugas 2. 1

Tugas 2. 1

Soal 1 Buat program yang dapat menentukan besar tunjangan yang diberikan kepada seorang pegawai dengan ketentuan jika anak kurang dari sama dengan 2, maka tunjangan adalah 20% dari gaji kotor, tapi jika lebih dari 2 maka tunjangan adalah 40% dari gaji kotor. Gaji kotor dimasukkan dengan manual.

Soal 2 Buatlah program dimana inputnya adalah Nilai Angka dan Outputnya adalah Nilai Huruf dengan menggunakan tabel berikut ini :

Nilai Angka

Nilai Huruf

0 NA < 40

E

NA = 40 dan NA < 60

D

NA = 60 dan NA < 70

C

NA = 70 dan NA < 80

B

80 NA 100

A

Soal 3

dan NA < 80 B 80 ≤ NA ≤ 100 A Soal 3 Buatlah program dengan

Buatlah program dengan outputnya seperti gambar diatas

Soal 4 Buat program menentukan berat badan dimana dengan ketentuan sebagai berikut :

Jika berat badan sama dengan tinggi badan dikurang 110, maka keterangan ideal dan komentarnya bagus. Jika berat badan lebih besar tinggi badan dikurang 110, maka keterangan gemuk dan komentarnya harus berolahraga. Jika berat badan lebih kecil tinggi badan dikurang 110, maka keterangan kurus dan komentarnya makanlah makanan yang bergizi.

16

2. 2

Seleksi Case Case biasanya digunakan untuk memilih diantara lebih besar dari 2 pilihan. Case dipakai untuk menggantikan struktur if-else if dimana konsidinya mengacu pada variabel yang sama. Bentuk umum :

1. Case dengan satu statement tiap kondisi :

Case <variabel> of <kondisi 1> : <statement 1>; <kondisi 2> : <statement 2>;

<kondisi n> : <statement n>; End;

2. Case dengan banyak statement tiap kondisi :

Case <variabel> of <kondisi 1> :

Begin

<statement 1>;

<statement 2>;

<statement n>; End; <kondisi 2> :

Begin

<statement 1>;

<statement 2>;

<statement n>;

End;

<kondisi n> :

Begin

<statement 1>;

17

<statement 2>;

<statement n>;

End;

Contoh Soal 1 Buat program yang dapat menampilkan pilijan dari beberapa n\menu masakan dan dapat menampilkan menu masakan yang dipilih.

Spesifikasi Program

Input

: Pilihan dari menu masakan (beupa angka)

Proses

: Jika memilih 1, menunya adalah nasi uduk, begitu pula seterusnya

Output

: Menu masakan yang dipilih

Implementasi Program

Hasil Kompilasi
Hasil Kompilasi

18

Contoh Soal 2 Buatlah program dalam bentuk menu yang mampu menghitung :

a. Luas dan Keliling Bujur Sangkar

b. Luas dan Keliling Persegi Panjang

c. Luas Segitiga

Implementasi Program

dan Keliling Bujur Sangkar b. Luas dan Keliling Persegi Panjang c. Luas Segitiga Implementasi Program Hasil

Hasil Kompilasi

19

Tugas 2. 2

Tugas 2. 2

Soal 1 Buatlah algoritma yang membaca sebuah bilangan bulat yang nilainya terletak antara 1 sampai 4, lalu mencetak teks angka tersebut. Misalkan bila dibaca angka 1, maka tercetak tulisan ”satu”, bila angka 2, maka tercetak di layar tulisan ”dua”, demikian seterusnya. Jika angka yang dimasukkan selain 1 sampai 4, tulisan pesan bahwa angka yang dimasukkan salah.

Soal 2 Menghitung upah mingguan karyawan. Dimana masukkan yang dibaca adalah nama karyawan, golongan dan jumlah jam kerja. Dan keluaran program ialah nama karyawan dan upah kerja total. Dengan ketentuan golongan adalah jika a = upah kerjanya Rp. 4000,-/jam, jika b = upah kerjanya Rp. 5000,-/jam, jika c = upah kerjanya Rp. 6000,-/jam dan jika d = upah kerjanya Rp. 7000,-/jam. Jam kerja karyawan adalah 8 jam/hari, upah lembur Rp. 3000,-/jam.

Soal 3 Simulasikan sebuah kalkulator sederhana untuk melakukan operasi aritmetika sebagai berikut : Tambahan (+), Kurangan (-), Perkalian (x) dan Pembagian (/).

20

Materi 3 Topik Pengulangan

Sebuah / Kelompok instruksi diulang untuk jumlah perulangan tertentu. Baik yang didefinisikan sebelumnya ataupun tidak. Struktur perulangan terdiri atas dua bagian :

1. Kondisi pengulangan yaitu ekspresi Boolean yang harus dipenuhi untuk melaksanakan perulangan.

2. Isi atau badan pengulangan yaitu satu atau lebih pernyataan (aksi) yang akan diulang.

Perintah atau notasi dalam struktur pengulangan adalah :

1. Pernyataan For…to…do

2. Pernyataan While…do

3. Pernyataan Repeat…Until

3. 1. Pernyataan For Pada perulangan dengan for, inisialisasi awal dan kondisi akhir ditentukan dengan menggunakan suatu variable kendali yang nilainya dibatasi dalam suatu range tertentu. Bentuk Umumnya :

For <variable kendali> := <nilai awal> to <nilai akhir> do Begin

End;

Atau

{Statement}

For <variable kendali> := <nilai awal> downto <nilai akhir> do Begin

{Statement}

End;

21

Contoh Soal 1 Buat program yang dapat menampilkan kata “Saya Belajar Pascal” sebanyak 5 kali.

Spesifikasi Program

Input

:

nilai awal dan nilai akhir

 

Proses

:

dari

nilai

awal

dan

nilai

akhir

yang

telah

ditentukan,

lakukan

Output

:

pengulangan tampilan pengulangan teks

 

Implementasi Progam

lakukan Output : pengulangan tampilan pengulangan teks   Implementasi Progam Hasil Kompilasi 22

Hasil Kompilasi

lakukan Output : pengulangan tampilan pengulangan teks   Implementasi Progam Hasil Kompilasi 22

22

Contoh Soal 2

Contoh Soal 2 Hasil Kompilasi Contoh Soal 3 23

Hasil Kompilasi

Contoh Soal 2 Hasil Kompilasi Contoh Soal 3 23

Contoh Soal 3

Contoh Soal 2 Hasil Kompilasi Contoh Soal 3 23

23

Hasil Kompilasi

Contoh Soal 4

Hasil Kompilasi Contoh Soal 4 Hasil Kompilasi 24
Hasil Kompilasi Contoh Soal 4 Hasil Kompilasi 24

Hasil Kompilasi

Hasil Kompilasi Contoh Soal 4 Hasil Kompilasi 24

24

Tugas 3. 1

Tugas 3. 1

Buat program dengan keluaran sebagai berikut :

Soal 1

Soal 3

Tugas 3. 1 Buat program dengan keluaran sebagai berikut : Soal 1 Soal 3 Soal 5
Tugas 3. 1 Buat program dengan keluaran sebagai berikut : Soal 1 Soal 3 Soal 5

Soal 5

Soal 2

Soal 4

Tugas 3. 1 Buat program dengan keluaran sebagai berikut : Soal 1 Soal 3 Soal 5
Tugas 3. 1 Buat program dengan keluaran sebagai berikut : Soal 1 Soal 3 Soal 5
Tugas 3. 1 Buat program dengan keluaran sebagai berikut : Soal 1 Soal 3 Soal 5

25

3. 2. Pernyataan While

do

Stantement while

do

digunakan untuk melakukan proses pengulangan

suatu statement terus-menurut selama kondisi ungkapan logika pada while

masih bernilai logika benar. Bentuk Umumnya :

While <Kondisi_pengulangan> do Begin

{STATEMENT}

End;

Contoh Soal 1 Buat program yang dapat menampilkan hasil dari 0 – 90 Celcius ke Fahrenheit

Spesifikasi Program

Input

Proses

Output

:

:

:

Kondisi pengulangan Tentukan kondisi pengulangan beserta batas pengulangannya

Tampilkan berurutan hasil konversi

Implementasi Program

Tentukan kondisi pengulangan beserta batas pengulangannya Tampilkan berurutan hasil konversi Implementasi Program 26

26

Hasil Kompilasi

Hasil Kompilasi Contoh Soal 2 Hasil Kompilasi 27

Contoh Soal 2

Hasil Kompilasi
Hasil Kompilasi

27

Tugas 3. 2

Tugas 3. 2

Soal 1 Buat program yang dapat menentukkan besarnya nilai FPB (Faktor Persekutuan terBesar) diantara dua bilangan bulat yang berbeda.

Soal 2 Buat program yang dapat menentukkan besarnya nilai KPK (Kelipatan Persekutuan terKecil) diantara dua bilangan bulat yang berbeda.

28

3. 3. Pernyataan Repeat

Until

Metode pengulangan ini juga melakukan pengulangan berdasarkan pemeriksaan kondisi pengulangan. Hanya saja atur dari pengulangan ini

adalah sytem seakan-akan memaksa untuk melakukan pengulangan, sampai diketahui adanya kondisi berhenti. Bentuk Umumnya :

Repeat

{STATEMENT} Until <Kondisi Berhenti>

Contoh Soal 1 Buat program yang dapat angka 0, 1, 2, 3, 4 secara berurutan

Spesifikasi Program

Input

:

Tentukan kondisi awal

Proses

:

Tentukan statementnya beserta kondisi berikutnya

Output

:

Tampilan berurutan angka 0, 1, 2, 3, 4

Implementasi Program

kondisi berikutnya Output : Tampilan berurutan angka 0, 1, 2, 3, 4 Implementasi Program Hasil Kompilasi

Hasil Kompilasi

kondisi berikutnya Output : Tampilan berurutan angka 0, 1, 2, 3, 4 Implementasi Program Hasil Kompilasi

29

Contoh Soal 2

Hasil Kompilasi
Hasil Kompilasi

30

Tugas 3. 3

Tugas 3. 3

Soal 1

Tugas 3. 3 Soal 1 Soal 2 31

Soal 2

Tugas 3. 3 Soal 1 Soal 2 31

31

Materi 4 Topik Larik (Array)

Larik ialah tipe data terstruktur yang terdiri dari sejumlah komponen-komponen yang mempunyai tipe yang sama. Komponen-komponen tersebut sebagai komponen type, larik mempunyai jumlah komponen yang tetap. Banyaknya komponen dalam larik ditunjukkan oleh suatu index, dimana tiap komponen di larik dapat diakses dengan menunjukkan indexnya atau subscript. Larik dapat bertipe data sederhana seperti byte, word, integer, real, boolean, char, string dan tipe data skalar atau subrange. Tipe larik mengantikan isi dari larik atau komponen-komponennya nilai dengan tipe data tersebut.

4.1. Larik Satu Demensi

Bentuk Umumnya :

Var

Untai : array[nilai_awal

nilai_akhir] of integer;

Contoh Soal 1

Larik Satu Demensi Bentuk Umumnya : Var Untai : array[nilai_awal nilai_akhir] of integer; Contoh Soal 1

Hasil Kompilasi

32

Contoh Soal 2

Program Larik; Uses WinCrt; Type THari = array[1 Var Hari : THari; 7] of string[7];
Program Larik;
Uses WinCrt;
Type
THari = array[1
Var
Hari : THari;
7]
of string[7];
N : integer;
Lagi : char;
Begin
{Pengisian larik}
Hari[1] := 'SENIN' ;
Hari[2] := 'SELASA';
Hari[3] := 'RUBU' ;
Hari[4] := 'KAMIS' ;
Hari[5] := 'JUMAT' ;
Hari[6] := 'SABTU' ;
Hari[7] := 'MINGGU';
{Pengunaan}
Lagi := 'Y';
While ((Lagi = 'Y') or (Lagi = 'y')) do
Begin
write('Masukkan nomor hari = ');
readln(N);
writeln('Maka hari ke- ',N,' adalah ',Hari[N]);
write('Mau coba lagi (Y/T) = ');
readln(Lagi);
End;
End.

Hasil Kompilasi

33

Tugas 4.1

Tugas 4.1

Soal 1

Program SoalLarik1; Uses wincrt; Type max = 1 40; Var Nama, NBar : array[max] of
Program SoalLarik1;
Uses wincrt;
Type
max = 1 40;
Var
Nama, NBar : array[max] of string[30];
Jum, Kode : array[max] of integer;
Total, Hrg : array[max] of longint;
a, x, i
: integer;
y : longint;
Begin
{Untuk Data Pembeli}
write('Masukkan banyaknya pelanggan yang diinginkan = ');
readln(a);
writeln('Kode barang : ');
writeln('1. Televisi SONY');
writeln('2. Radio PANASONIC');
writeln('3. Kulkas LG');
i := 1;
y := 0;
while i <= a do
Begin
writeln('Data pembeli ke- ',i);
write('Nama pembeli = ');
readln(Nama[i]);
write('Kode barang = ');
readln(Kode[i]);
{Untuk Pemeilihannya}
case Kode[i] of
1 :
Begin
NBar[i] := 'Telavisi SONY';
Hrg[i] := 1000000;
end;
2 :
Begin
NBar[i] := 'Radio PANASONIC';
Hrg[i] := 500000;
end;
3 :
Begin
NBar[i] := 'Kulkas LG';
Hrg[i] := 2000000;
end;
end;
jum[i] := 1;
Total[i] := Hrg[i];
y
:= y + Total[i];
i
:= i + 1;
End;
{Data Yang Ditampilkan}
writeln('88888888888888888888888888888888888888888888888888888888888888888888888');
writeln('|No
Nama
Nama Barang
Harga Satuan
Jumlah
Total|');
writeln('88888888888888888888888888888888888888888888888888888888888888888888888');
i := 1;
while i <= a do
Begin
Writeln(i,'
',Nama[i],'
',NBar[i],'
',Hrg[i],'
',jum[i],'
',Total[i]);
i
:= i + 1;
end;
writeln('88888888888888888888888888888888888888888888888888888888888888888888888');
writeln('Yang harus dibayar Rp. ',y);
writeln('##########TERIMA KASIH#########');
end.

34

Soal 2

Program DataSiswa; Uses WinCrt; Type TSiswa = Record Nama : String[30]; Nil1, Tgs, UAS :
Program DataSiswa;
Uses WinCrt;
Type
TSiswa = Record
Nama : String[30];
Nil1, Tgs, UAS : Integer;
NA : Real;
NH : Char;
end;
Var
Siswa : Array[1
100]
of TSiswa;
i, N : Integer;
Begin
write('Jumlah Siswa = ');
readln(N);
writeln('=================');
For i:= 1 to N do
Begin
writeln('Data Siswa Ke- ',i);
write('Nama = ');readln(Siswa[i].Nama);
write('Nilai 1 = ');readln(Siswa[i].Nil1);

write('Nilai Tugas = ');readln(Siswa[i].Tgs); write('Nilai UAS = ');readln(Siswa[i].UAS); Siswa[i].NA := 0.25 * Siswa[i].Nil1 + 0.25 * Siswa[i].Tgs + 0.5 * Siswa[i].UAS; If (Siswa[i].NA < 40) then Siswa[i].NH := 'E' else If (Siswa[i].NA < 60) then Siswa[i].NH := 'D' else If (Siswa[i].NA < 70) then Siswa[i].NH := 'C' else If (Siswa[i].NA < 80) then Siswa[i].NH := 'B' else Siswa[i].NH := 'A'; writeln('================='); End; {Tampilkan Data Siswa} writeln;

End; {Tampilkan Data Siswa} writeln; Inputan Hasil Kompilasi writeln(' DAFTAR NILAI');

Inputan

Hasil Kompilasi

End; {Tampilkan Data Siswa} writeln; Inputan Hasil Kompilasi writeln(' DAFTAR NILAI');
writeln(' DAFTAR NILAI');
writeln('
DAFTAR NILAI');
writeln('=======================================================================');
writeln(' No
Nama
Nilai 1
Tugas
UAS
Nilai Akhir
Nilai Huruf');
writeln('
25 %
25 %
50 %
');
writeln('=======================================================================');
For i := 1 to N do
writeln(i:2,Siswa[i].Nama:8,Siswa[i].Nil1:10,Siswa[i].Tgs:10,Siswa[i].UAS:10,
Siswa[i].NA:10:2,Siswa[i].NH:15);
writeln('=======================================================================');
End.

Dimana Jika Nilai Akhir Siswa < 40 Maka Nilai Huruf = 'E' Jika tidak Nilai Akhir Siswa < 60 Maka Nilai Huruf = 'D' Jika tidak Nilai Akhir Siswa < 70 Maka Nilai Huruf = 'C' Jika tidak Nilai Akhir Siswa < 80 Maka Nilai Huruf = 'B' Jika tidak Nilai Huruf = ’A’

35

4.2. Larik Dua Demensi Dimana dalam Pascal Larik dapat berdimensi lebih dari satu yang disebut dengan Larik diemensi banyak (Multimensional Array), disini akan dibahas Larik Dua Dimensi saja.

1

2

3

1

2

Deklarasikannya sebagai berikut :

Contoh Soal 1

disini akan dibahas Larik Dua Dimensi saja. 1 2 3 1 2 Deklarasikannya sebagai berikut :

Hasil Kompilasi

36

Tugas 4.2

Tugas 4.2

Soal 1 Buatlah Program Menjumlahkan 2 Matrik yang jumlah baris 3 dan kolom 2.

Program Soal; Uses wincrt; Var Matrik1, Matrik2, Hasil : array[1 i, j : integer; Begin
Program Soal;
Uses wincrt;
Var
Matrik1, Matrik2, Hasil : array[1
i, j : integer;
Begin
Clrscr;
3,1
2]
of Integer;
{Input Matrik Ke Satu}
Writeln('Matrik Pertama');
For i := 1 to 3 do
Begin
For j := 1 to 2 do
Begin
Write('Elemen barik Ke-',i,'kolom Ke-',j,'= ');
readln(Matrik1[i,j]);
End;
End;
{Input Matrik Ke Dua}
Writeln('Matrik Kedua');
For i := 1 to 3 do
Begin
For j := 1 to 2 do
Begin
Write('Elemen barik Ke-',i,'kolom Ke-',j,'= ');
readln(Matrik2[i,j]);
{Input Matrik Ke Satu}
End;
End;
{Proses Penjumlahan}
For i := 1 to 3 do
Begin
For j := 1 to 2 do
Begin
Hasil[i,j] := Matrik1[i,j] + Matrik2[i,j];
End;
End;
writeln;
{Hasil Penjumlahan}
For i := 1 to 3 do
Begin
For j := 1 to 2 do
Begin
write(Hasil[i,j]:6);
End;
writeln;
End;
readln;
End.
write(Hasil[i,j]:6); End; writeln; End; readln; End. Input Matrik Pertama I n p u t M a

Input Matrik Pertama

End; writeln; End; readln; End. Input Matrik Pertama I n p u t M a t

Input Matrik Kedua

Hasil Kompilasi

37

Materi 5

Topik Fungsi dan Prosedur

Fungsi (function) dan prosedur (procedure) akan membantu mewujudkan

pemecehan masalah-masalah yang lebih sederhana tersebut. Pemakaian fungsi dan

prosedur dalam sebuah program akan menjadikan program semakin mudah dibaca

dan lebih mudah diubah atau dimodifikasi.

5.1. Fungsi (Function)

Konsep fungsi dalam pascal hampir sama dengan konsep fungsi dalam

matematika. Sebuah fungsi digunakan untuk menghitung sebuah nilai

berdasar satu atau beberapa nilai masukkan

Bentuk Umumnya :

Function nama_fungsi (parameter) : tipe_hasil ; Begin {Statemen-statemen implementasi fungsi} nama_fungsi := nilai yang dikirimkan/hasil ; End;

Contohnya :

Function gaya(m, a : real) : real; {m = massa, a = percepatan, mengirimkan gaya, F = m * a} Begin Gaya := m * a; End;

Contoh Soal 1

real ) : real ; {m = massa, a = percepatan, mengirimkan gaya, F = m

38

Contoh Soal 2 Hasil Kompilasi Hasil Kompilasi 39

Contoh Soal 2

Hasil Kompilasi

Hasil Kompilasi
Hasil Kompilasi

39

Tugas 5.1

Tugas 5.1

Soal 1

Masukkan tiga buah angka dan cari nilai terbesar diantara tiga buah angka tersebut.

Program cariterbesar3; Uses WinCrt; var angka1, angka2, angka3, terbesar : integer; function maks(a, b :
Program cariterbesar3;
Uses WinCrt;
var
angka1, angka2, angka3, terbesar : integer;
function maks(a, b : integer): integer;
Begin
if a > b then
maks := a
else
maks := b;
end;
Begin
write('Angka pertama = ');readln(angka1);
write('Angka kedua = ');readln(angka2);
write('Angka ketiga = ');readln(angka3);
terbesar := maks(angka1, angka2);
terbesar := maks(terbesar, angka3);
write('Angka terbesar = ',terbesar);
End.

Hasil Kompilasi

40

5.2.

Prosedur

Prosedur (procedure) adalah serangkaian statemen yang digunakan untuk

memecahkan sebuah masalah. Seperti fungsi, prosedur juga mempunyai

nama dan parameter. Prosedur harus dideklarasikan terlebih dahulu sebelum

dipanggil atau digunakan.

Bentuk Umumnya :

Procedure nama_prosedur(parameter input; var parameter output); Begin

implementasikan

{statemen-statemen

prosedur

(badan

prosedur),

hasil perhitungan yang dilakukan prosedur (jika ada), disimpan pada parameter output}

End;

Contohnya :

Procedure gaya(m, a : integer; var f : integer); {m = massa, a = percepatan, menghitung gaya, F = m * a} Begin f := m * a; End;

Contoh Soal 1

Hasil Kompilasi
Hasil Kompilasi

41

Contoh Soal 2

Contoh Soal 2 Hasil Kompilasi 42

Hasil Kompilasi

42

Tugas 5.2

Tugas 5.2

Soal 1

Program pertukaran3; Uses WinCrt; Var angka1, angka2, angka3 : integer; Procedure tukar(var a, b :
Program pertukaran3;
Uses WinCrt;
Var
angka1, angka2, angka3 : integer;
Procedure tukar(var a, b : integer);
{menukar isi a menjadi isi b, dan sebaliknya}
Var
temp : integer;
Begin
temp := a;
a := b;
b:= temp;
End;
{program utama}
Begin
writeln('Sebelum pertukaran');
write('Angka 1 = ');readln(angka1);
write('Angka 2 = ');readln(angka2);
write('Angka 3 = ');readln(angka3);
tukar(angka1, angka2);
tukar(angka1, angka3);
writeln;
writeln('Setelah pertukaran');
writeln('Angka 1 = ',angka1);
writeln('Angka 2 = ',angka2);
write('Angka 3 = ',angka3);
End.

Soal 2

Hitunglah gaya dengan menggunakan rumus :

f (gaya) = m (massa) * a (percepatan)

Program hitung_gaya; Uses WinCrt; Var massa, percepatan, gaya : integer; Procedure hit_gaya(m, a : integer;
Program hitung_gaya;
Uses WinCrt;
Var
massa, percepatan, gaya : integer;
Procedure hit_gaya(m, a : integer;
var f : integer);
Begin
f := m * a;
End;
{program utama}
Begin
write('Massa = ');readln(massa);
write('Percepatan = ');readln(percepatan);
hit_gaya(massa, percepatan, gaya);
write('Gaya = ',gaya);
End.

43