SlideShare a Scribd company logo
1 of 183
Download to read offline
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 1
DIKTAT
MATA KULIAH
DASAR PEMROGRAMAN KOMPUTER
BAHASA PEMROGRAMAN PASCAL
Penyusun:
Simon Patabang
Dosen Universitas Atma Jaya Makassar
PROGRAM STUDI TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS ATMA JAYA MAKASSAR
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 2
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 3
Kata Pengantar
Bahasa pemrograman sudah semakin diminati seiring dengan
perkembangan masyarakat yang semakin mengerti tentang pentingnya
teknologi informasi. Dengan menguasai konsep dan logika dasar-dasar
bahasa pemrograman maka semakin muda untuk mempelajari bahasa
pemrograman yang lain.
Buku ini ditujukan bagi para siswa SMU dan mahasiswa ingin belajar dasar
bahasa pemrograman khususnya bagi yang punya minat untuk mempelajari
bahasa pemrograman. Diharapkan para pembaca dapat memperoleh materi
tambahan untuk mendalami dasar pemrograman dengan baik.
Bahasa program Pascal dapat diperoleh dengan gratis dengan mendownload
dari Internet. Bahasa Pascal merupakan bahasa pemrograman yang paling
mudah dipelajari karena bersifat terstruktur. Karena itu sangat banyak
digunakan sebagai konsep dasar pemrograman di tingkat SMU dan
Perguruan Tinggi.
Bahasa pemrograman Pascal juga sudah dijadikan materi pelajaran di
beberapa SMU dan dalam lomba Olimpiade Matematika dan komputer
tingkat SMU. Selain itu, bahasa pemrograman juga menjadi materi kuliah di
beberapa fakultas di perguruan tinggi, seperti fakultas Teknik, MIPA,
Informatika, dan ada sebagian jurusan di fakultas Ekonomi.
Dengan menguasai konsep dan logika pemrograman yang baik, maka akan
dapat dengan mudah mempelajari bahasa pemrograman yang berbasis
objek seperti Bahasa C, Java, dan bahasa pemrograman berbasis visual
seperti Delphi, Visual Basic, dll.
Untuk meningkatkan mutu dari materi buku ini, sangat diharapkan adanya
saran dan masukan yang bersifat positip dari para pembaca demi untuk
pengembangan materi dalam buku ini.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 4
DAFTAR ISI
BAB I : Pengenalan Komputer
BAB II : Algoritma
BAB III : Flowchart
BAB IV : Dasar Pemrograman
BAB V : Tipe Data Standart
BAB VI : Algoritma Penyelesaian Matematika
BAB VII : Algoritma Seleksi Data
BAB VIII : Algoritma Perulangan
BAB IX : Algoritma Sorting Data
BAB X : Array/ Larik
Tipe Data dan Statement I/O
Operator Aritmatika
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 5
I. Pengenalan Komputer
Apakah itu Komputer?
Komputer adalah alat bantu yang berfungsi untuk mengolah data berupa angka dan
teks menjadi sebuah informasi.
Komponen Komputer
Perangkat Keras (Hardware)
Adalah komponen elektronik dan fisik yang membentuk sebuah komputer.
Perangkat lunak (Software)
Adalah komponen komputer berupa program yang berfungsi untuk mengendalikan
system kerja dari sebuah komputer, memproses data, dan juga merancang
program aplikasi.
Contoh
 Perangkat Keras
1. Keyboard
2. Monitor
3. Mouse
4. Speaker
5. System Unit
6. Microphone
 Perangkat Lunak
1. Program Sistem Komputer
2. Program Aplikasi Komputer
3. Bahasa Pemrograman
CARA KERJA SISTEM KOMPUTER
Gambar 1.1. Sistem Komputer
Bagian Input
 Adalah komponen yang berfungsi sebagai alat masukan data atau perintah
ke dalam komputer.
 Misalnya :
1. Keyboard
2. Mouse
3. Scanner
Bagian PROSES
 Adalah komponen yang berfungsi untuk mengolah data yang diterima dari
input.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 6
 Bagian Proses data ini disebut Central Processing Unit (CPU).
 Komponen utama dari CPU terdiri dari :
1. Prosesor
2. Memory
Prosesor terdiri dari :
1. Control Unit (CU)
Bagian yang mengatur atau mengontrol semua lalu lintas data dan perhitungan
yang dilakukan selama komputer bekerja.
2. Arithmetic And Logic Unit (ALU)
Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika yang
terjadi sesuai dengan instruksi program.
Memory
 Fungsi memory adalah sebagai tempat menyimpan data, program, perintah-
perintah program yang digunakan pada saat proses berlangsung.
 Menurut letakknya, memori dibagi 2 yaitu :
1. Memory Internal
2. Memory external.
1. Memory Internal
Adalah memori yang letaknya berada di dalam system komputer.
1. ROM (Read Only Memory)
2. Chace Memory
3. RAM (Random Access Memory)
ROM, adalah memori yang datanya hanya dapat dibaca. Data dalam ROM
sudah diisi oleh pabrik pembuatnya. Misalnya sistem waktu dan konfigurasi
komputer.
Chace Memory, merupakan media penyimpanan dengan berkecepatan tinggi
untuk membantu prosesor mengirim dan menerima data dari memori.
Memori RAM, semua data dan program yang dimasukkan lewat alat input akan
disimpan terlebih dahulu di RAM (Random Access Memory). RAM merupakan
memory yang dapat di akses yaitu dapat diisi, diubah, dan diambil datanya. Data
dalam RAM dan akan hilang jika komputer mati (volatile).
Fungsi Cache Memory
 Mempercepat Akses data pada komputer
 Meringankan kerja prosessor
 Menjembatani perbedaan kecepatan antara Prosesor dan memory utama.
 Mempercepat kinerja memory
Proses Pengolahan Data
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 7
Gambar 1.2. Proses Komputer
Memori Eksternal
 External Memory adalah memori yang bersifat nonvolatile dimana data yang
disimpan di dalamnya tidak akan hilang ketika komputer mati. Dikenal juga
dengan nama secondary memory yang berfungsi sebagai media storage dari
program dan data untuk jangka waktu yang panjang,.
 Contoh :
floppy disk(disket), hard disk,dan CD-ROM, DVD, Flash Disk.
Bagian Output
Peralatan yang berfungsi untuk menampilkan hasil dari pengolahan data.
Peralatan Output :
 Monitor, Printer dan Speaker, LCD (Liquid Cristal Display )
Bentuk output hasil pengolahan data berupa Teks, Gambar, dan Suara
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 8
II. Konsep Pemrograman
1. Algoritma
Algoritma adalah langkah-langkah proses yang disusun secara logis dan
berurutan untuk menyelesaikan suatu masalah dengan tepat. Algoritma digunakan
sebagai panduan langkah demi langkah untuk menuliskan program. Jika algoritma
yang dibuat salah, maka penulisan programnya akan salah juga. Karena itu,
algoritma sangat penting untuk dipelajari dan dikuasai dengan baik. Jika sudah
terbiasa menggunakan algoritma untuk menulis program, maka semakin lama, kita
dapat dengan mudah menulis progam, karena konsep algoritma sudah dikuasai
dengan baik.
Kriteria algoritma adalah sebagai berikut :
 Setiap langkah harus jelas dan pasti
 Jumlah langkah harus berhingga atau harus selesai.
 Ditulis dengan kalimat yang mudah dipahami sehingga tidak menimbulkan
arti ganda.
 Tuliskan dengan logika yang benar dan terstruktur
 Semua operasi atau proses disebutkan dengan jelas.
Penyajian Algoritma :
Algoritma dapat disajikan dengan dua cara :
 Secara Tulisan, yaitu menuliskan deskripsi urutan langkah-langkah
penyelesaian masalah
 Flowchart, yaitu menggambarkan algoritma dengan simbol-simbol menurut
urutan proses
Contoh 2.1:
Buatlah Algoritma untuk mencari nilai y dari persamaan y = 6a + 2b
Penyelesaian :
Untuk mendapatkan nilai y, maka nilai a dan b harus diketahui lebih dahulu. Nilai a
dan b diperoleh dengan menginput ke dalam program melalui keyboard. Kemudian
a dikalikan dengan 6 dan b dikalikan dengan 2. Hasil perkaliannya kemudian
dijumlahkan untuk mendapatkan nilai y.
Algoritma :
 Mulai
 Deklarasikan variabel y, a, dan b
 Input Nilai a dan b
 Hitung nilai y = 6a + 2b
 Cetak nilai y
 Selesai
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 9
Contoh 2.2:
Buatlah algoritma untuk menghitung nilai y dari persamaan y = 4x3
+ 8x – 2
Penyelesaian :
Untuk mendapatkan nilai y, maka kita dapat menyelesaikan secara bertahap
dengan menghitung 4x3
dan 8x secara terpisah. Untuk itu diperlukan variabel
tambahan misalnya a dan b untuk menyimpan hasil perhitungan tersebut, dimana a
menyimpan hasil perhitungan 4x3
dan b menyimpan hasil perhitungan 8x.
Algoritmanya adalah :
 Mulai
 Definisikan variabel y, x, a,b
 Input nilai x
 Hitung nilai a=4x3
 Hitung nilai b=8x
 Hitung nilai y=a+b-2
 Cetak nilai y
 Selesai
Contoh 2.3 :
Buatlah algoritma untuk mengkonversi bilangan dalam satuan detik menjadi satu
satuan jam. Misalnya 30 dikonversi menjadi 0:0:30, 70 menjadi 0:1.10, 3665
menjadi 1:1:5.
Penyelesaian :
Yang harus diperhatikan adalah konversi sbb :
60 detik = 1 menit
60 menit = 1 jam
1 jam = 60 x 60 detik = 3600 detik
Konversi satuan Detik (d) menjadi Jam (j)
1. Hitung satuan jam dari nilai d
j = d div 3600, hasilnya adalah satuan jam
2. Hitung sisa detik
s = d mod 3600, hasilnya adalah sisa satuan detik
3. Hitung satuan menit dari nilai s
m = s div 60, hasilnya adalah satuan menit
4. Hitung sisa detik dari nilai s
d = s mod 60
Algoritma
 Mulai
 Deklarasikan variabel d,m,j,s
 Input d (bilangan satuan detik)
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 10
 Hitung j = d div 3600
 Hitung s = d mod 3600
 Hitung m = s div 60
 Hitung d = s mod 60
 Cetak hasilnya J:M:D
 Tekan sembarang tombol
 Selesai
2. Flowchart
Flowchart adalah skema diagram alir dari algoritma yang disusun dalam bentuk
bagan secara berurutan. Jadi flowchart menggambarkan urutan penyelesaian
masalah. Flowchart digambarkan dengan menggunakan simbol-simbol khusus
seperti input, proses, output, dan lain-lain.
Tabel Simbol-Simbol Flowchart
Digunakan untuk simbol awal dan akhir
flowchart
Digunakan untuk menyatakan proses
masukan dan keluaran
Digunakan untuk menyatakan proses
perhitungan
Digunakan untuk menyatakan proses
seleksi atau pengambilan keputusan
Digunakan untuk menyatakan proses
persiapan program
Digunakan untuk menyatakan arah aliran
proses
Digunakan untuk menyatakan sambungan
flowchart pada halaman yang sama
Digunakan untuk menyatakan sambungan
flowchart pada halaman yang berbeda
Digunakan untuk menyatakan output akan
ditampilkan lewat monitor
Contoh 2.4:
Buatlah flowchart dari algoritma pada Contoh 2.1
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 11
Gambar 2.2. Flowchart Contoh 2.1
Contoh 2.5
Buatlah flowchart dari algoritma pada Contoh 2.2
Gambar 2.3. Flowchart Contoh 2.2
Contoh 2.6
Buatlah flowchart dari algoritma pada Contoh 2.3
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 12
Gambar 2.4. Flowchart Contoh 2.3
Contoh 2.7
Buatlah flowchart untuk menghitung nilai y dari persamaan y = 2x + 6
Penyelesaian :
Untuk menggambarkan flowchart, terlebih dahulu kita menuliskan algoritma untuk
menghitung nilai y dari persamaan y = x2
+ √x. Dalam persamaan terdapat 2 buah
variabel yaitu x dan y, dimana nilai variabel x diinput dari keyboard dan nilai y
diperoleh dari hasil perhitungan x2
+ √x.
Algoritmanya adalah :
 Mulai
 Definisikan variabel y dan x
 input nilai x
 Hitung nilai y= x2
+ √x
 Tuliskan hasilnya y
 Selesai
Flowchart:
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 13
Gambar 2.5. Flowchart Contoh 2.7
Contoh 2.8
Buatlah flowchart untuk menghitung luas persegipanjang dengan rumus L = p.lb
dalam satuan m.
Algoritma :
 Mulai
 Definisikan variabel L, p, lb dengan tipe real
 Tentukan Nilai p, lb sebagai konstanta dengan nilai p=10 m, lb=5 m
 Hitung nilai L = p.lb
 Cetak nilai L
 Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 14
Gambar 2.6. Flowchart Contoh 2.8
Contoh 2.9
Buatlah flowchart untuk menentukan apakah Lulus atau Tidak Lulus dengan syarat :
Jika Nilai Lebih besar atau sama dengan 60, maka dinyatakan Lulus. Jika kurang
dari 60, maka dinyatakan Tidak Lulus.
Algoritma :
 Deklarasikan variabel Nilai, mis x
 Input nilai x
 Cek nilai x
Jika x >= 60, cetak “Lulus “
Jika tidak atau x < 60, cetak ”Gagal “
 Selesai
Flowchart
Gambar 2.7. Flowchart Contoh 2.9
Contoh 2.10
Buatlah flowchart untuk menghitung nilai x1 dan x2 dari persamaan kuadrat y = Ax2
+ Bx + C
Penyelesaian :
Persamaan kuadrat didefinisikan sebagai berikut y = Ax2
+ Bx + C yang
mempunyai 2 buah akar penyelesaian yaitu x1 dan x2.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 15
Rumus untuk mencari x1 dan x2 :
2
12
2
– 4b
x
b
a
ac 

Dimana b2
– 4ac disebut Diskriminan (D) , maka :
D = b2
– 4ac
Nilai x1 dan x2 ditentukan oleh nilai D sebagai berikut :
1. Jika D > 0 artinya nilai D adalah bilangan positip
12
2
b D
x
a
 
 , maka x1 dan x2 adalah bilangan real
2. Jika D = 0, artinya nilai D sama dengan 0
1 2
2
b
x x
a

  , maka x1 dan x2 adalah bilangan real
3. Jika D < 0, artinya nilai D adalah bilangan negatip
12
( )
2
b D
x
a
  
 , x1 dan x2 adalah bilangan imaginer dimana 1 j 
maka :
12
2
b j D
x
a
 

Berdasarkan analisa di atas, maka dapat disusun algoritma sebagai berikut :
 Mulai
 Deklarasikan variabel a,b,c,d,x1,x2
 Input nilai a,b,c
 Hitung nilai d = b2
– 4ac
 Cek nilai d sebagai berikut :
o Jika d>0 maka hitung x1 dan x2
1
2
b D
x
a
 
 dan 2
2
b D
x
a
 

o Jika d=0 maka hitung x1 dan x2
1 2
2
b
x x
a

 
o Jika d<0 maka hitung x1 dan x2
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 16
1
2
b j D
x
a
 
 dan 2
2
b j D
x
a
 

 Cetak nilail x1 dan x2
 Selesai
Flowchart
Gambar 2.8. Flowchart Contoh 2.10
Contoh 2.11
Buatlah flowchart untuk menentukan nilai sebagai berikut :
0 <= N <= 50 mendapat Nilai E
50 < N < 60 mendapat Nilai D
60 <= N < 70 mendapat Nilai C
70 <= N <= 85 mendapat Nilai B
85 < N <= 100 mendapat Nilai A
Penyelesaian :
Algoritma
1. Definisikan Variabel N
2. Tentukan Nilai N
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 17
3. Cek Nilai N, Jika :
 0 <= N <= 50 Tulis Nilai E, Selesai
 50 < N < 60 Tulis Nilai D, Selesai
 60 <= N < 70 Tulis Nilai C, Selesai
 70 <= N <= 85 Tulis Nilai B, Selesai
 85 < N <= 100 Tulis Nilai A, Selesai
Flowchart
Gambar 2.9. Flowchart Contoh 2.11
Contoh 2.12
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 18
Dealer Motor Sahabat menawarkan kredit Motor kepada para pegawai dan guru
dengan syarat memiliki pendapatan tetap, pendapatan tambahan, dan pendapatan
keluarga. Untuk mendapatkan kredit motor, maka harus memenuhi syarat bahwa :
 Pendapatan tetap dihitung penuh, pendapatan tambahan dihitung setengah dan
pendapatan keluarga (suami atau istri) dihitung sepertiga.
 Apabila jumlah total pendapatan tersebut lebih besar atau sama dengan Rp
1.000.000 ,0- maka akan mendapat kredit VESPA.
 Jika kurang dari Rp 1.000.000 tetapi masih lebih besar dari Rp 500.000,00-,
maka akan mendapat kredit HONDA, selain itu tak layak mendapat kredit. Di
akhir laporan total berapa yang mendapatkan kredit HONDA dan berapa yang
mendapatkan kredit VESPA.
Buatlah flowchart atas kasus Kredit Motor tersebut di atas.
Analisa kasus :
a= pendapatan tetap
b= pendapatan tambahan
c= pendapatan keluarga
d= a + b + c
Jika
d>=1.000.000 maka mendapat kredit vespa
d<1.000.000 dan d>500.000 maka mendapat kredit Honda
Algoritma :
 Mulai
 Deklarasikan variabel a,b,c,d
 Input nilai a,b, dan c
 Hitung jumlah total d = a + 1/2b + 1/3c
 Cek nilai d :
Jika d>=1.000.000, mendapatkan kredit Vespa
Jika 500.000<d<1.000.000, mendapatkan kredit Honda
Jika d<=500.000, tidak layak mendapatkan kredit.
 Selesai
Flowchart :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 19
Gambar 2.10. Flowchart Contoh 2.12
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 20
III. Dasar Pemrograman
Aturan Bahasa Pascal
Program Pascal ditulis dengan menggunakan aturan penulisan yang harus diikuti
agar program dapat berjalan dengan baik. Penulisan yang tidak sesuai dengan
aturan yang ditentukan akan menyebabkan terjadinya kesalahan.
Nama File :
1. Nama file terdiri dari maksimum 8 karakter. Jika lebih, maka kelebihannya akan
dipotong oleh program secara otomatis.
2. Nama file program mempunyai ekstensi PAS.
3. Nama file tidak boleh menggunakan spasi. Misalnya contoh 1.pas (salah)
4. Nama file boleh menggunakan tanda hubung bawah. Misalnya contoh_1.pas
(benar)
5. Nama file tidak boleh diawali dengan angka. Misalnya 2prog.pas (salah)
6. Tidak boleh mengandung karakter yang tidak lazim, misalnya : * , ! # ^ dst.
Dasar Bahasa Pemrograman Pascal
Dasar bahasa pemrograman pascal ditulis dengan menggunakan beberapa aturan
yang terdiri dari 4 komponen utama yaitu :
1. Komentar/Penjelasan
Komentar atau penjelasan tambahan dalam program ditulis dalam tanda
kurung. Ada 2 bentuk tanda kurung yang dapat digunakan yaitu :
 Diawali dengan simbol (* (buka kurung bintang) dan diakhiri dengan tanda *)
(bintang tutup kurung)
Contoh : (*Program Input Data*)
 Diawali dengan tanda kurung buka kurawal { dan diakihiri dengan tanda
kurung tutup kurawal }.
Contoh : {Program Input Data}
2. Penulisan Program
Setiap baris program harus diakhiri dengan tanda titik koma ( ; ). Tujuannya
untuk memberi tanda bahwa baris perintah tersebut sudah berakhir agar
program dapat membacara tiap baris perintah dengan benar. Jika tidak diberi
tanda titik koma, maka program akan memberi pesan kesalahan (error) bahwa
baris tersebut belum menggunakan titik koma.
Kode program dapat ditulis dengan bantuan program notepad dari Windows
tetapi harus disimpan dengan ekstensi .pas. Misalnya contoh.pas. File program
harus disimpan pada folder dimana program pascal dapat membaca program
yang dibuat.
3. Huruf Besar dan Kecil
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 21
Pascal tidak membedakan huruf besar atau kecil dalam penulisan perintah,
Artinya penulisan perintah dengan huruf besar dan huruf kecil dianggap sama.
Misalnya :
 Y sama dengan y
 x sama dengan X
 p sama dengan P
 N sama dengan n
4. Variabel
Variabel adalah tempat menyimpan data dalam memori dimana nilainya dapat
berubah-ubah. Variabel dapat didefinisikan dengan huruf, kata, dan gabungan
huruf atau kata dengan angka.
Misalnya : a, b, c, x, y, a1, a2, nama, nama1, nama2, dst
5. Tipe Data
Dalam program pascal dikenal beberapa tipe data dimana setiap tipe harus
disesuaikan dengan variabelnya.
Misalnya:
 Bilangan bulat dideklarasikan dengan tipe integer.
 Bilangan pecahan atau decimal dideklarasikan dengan tipe real
 Data berupa huruf dideklarasikan dengan tipe char
 Data berupa kata dideklarasikan dengan tipe string
6. Operator Sama Dengan
Operator tanda sama dengan dalam program Pascal ada 2 yaitu :
 Operator = (sama dengan), digunakan untuk memberi nilai tetapan kepada
sebuah variabel pada deklarasi konstanta.
Misalnya :
const
x = 3, y = „P‟, menentukan nilai tetapan untuk variabel x dan y.
 Operator := (Titik dua sama dengan), digunakan untuk menentukan nilai
awal variabel dalam program dan menerima hasil perhitungan.
Misalnya :
a:= 3; b:= 5, memberi nilai awal untuk variabel a dan b
y := 5*a + 2*b, variabel y menerima hasil perhitungan
7. Perintah
Perintah adalah koding yang dikenali sebagai bahasa dalam program. Dengan
menggunakan perintah-perintah khusus sebagai kode program, maka program
akan dapat bekerja sesuai dengan masalah yang akan diselesaikan.
Misalnya :
 Perintah untuk menginput data, misalnya read, readln
 Perintah menghitung atau memproses data, misalnya sqr, sqrt, div, mod
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 22
 Perintah untuk menulis teks atau hasil perhitungan program, misalnya write,
writeln
Operator Matematika
Operator matematika digunakan untuk melakukan proses perhitungan
matematika dalam program. Operator tersebut adalah :
Operator Simbol
Contoh
Rumus Program
Penjumlahan + c = a + b c = a + b
Pengurangan - c = b - a c = b - a
Perkalian * c = a x b c = a*b
Pembagian / c = a/b c = a/b
Kurung ( ) c = (a + b)/2 c = (a + b)/2
Hirarki Urutan Operator :
1. Tanda kurung
2. Perkalian dan pembagian
3. Perjumlahan dan pengurangan
Contoh :
No Contoh Hasil
1 Y = 3*3 + (2 + 4)/2 – 3/6 11.5
2 Y = 2 + 3*4 – 3 11
3 Y = (3 + 2)*2/5 2
4 Y = 2/2*4 + 3*4/2 10
5 Y = ((4-2)/2*3 + 4)/ 2 3.5
Operator Fungsi matematika
Operator Nama Operasi
Contoh
Rumus Program Hasil
Pangkat 2 sqr(x) y=x2
y=sqr(3) 9
Akar Pangkat 2 sqrt(x) y=√x Y=sqrt(25) 5
Sisa Pembagian mod a mod b 8 mod 3 2
Bil bulat Hasil
Pembagian
div a div b 8 div 3 2
Struktur Program Pascal
Bahasa pemrograman pascal ditulis secara terstruktur artinya perintah-perintah
dalam program ditulis secara berurutan mulai dari bagian awal hingga bagian akhir.
Urutan bagian tersebut adalah sebagai berikut :
1. Judul Program
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 23
Bagian awal dari program pascal adalah judul program. Judul program ditulis
dengan diawali kata kunci PROGRAM.
Misalnya : Program Rumus_ABC
Jika judul terdiri dari 2 kata atau lebih, maka gunakan tanda hubung bawah
untuk menghubungkannya.
2. Pustaka Program
Program pascal mempunyai pustaka (library) yang berisi kamus atau daftar
perintah-perintah yang akan digunakan dalam program. Kamus tersebut
diaktifkan pada bagian awal program dengan diawali kata kunci uses. Jika
kamus perintah tidak diaktifkan, maka kode program tidak dapat melakukan
tugasnya dengan baik. Kamus yang paling sering digunakan adalah crt yang
berisi perintah dasar program seperti perintah input, proses, dan output.
Contoh : uses crt;
3. Bagian Deklarasi
Bagian deklarasi sebagai tempat untuk menyebutkan semua variabel,
konstanta, fungsi, prosedur yang akan digunakan dalam program.
1. Deklarasi variabel.
Variabel yang digunakan dalam program harus dideklarasikan lebih dahulu
sebelum digunakan dalam program. Jika tidak dideklarasikan, maka akan
terjadi kesalahan (error). Deklarasi variabel selalu diawali dengan kata kunci
var. Setiap variabel akan menerima dan menyimpan data sesuai dengan
tipe datanya. Antara nama variabel dengan tipe datanya dipisahkan oleh
tanda titik dua (:).
Contoh deklarasi variabel:
VAR nama : String[25];
a,b,c : Integer;
x,y : real;
2. Deklarasi Konstanta
Konstanta adalah data yang nilainya tetap. Deklarasi kontanta selalu diawali
dengan kata kunci const.
const Nama = ‟BUDI‟;
gaji = 1500000;
pajak = 0.1 {10%}
3. Deklarasi lain adalah label, prosedur, fungsi, dan type. Deklarasi ini akan
dijelaskan pada saat materi tersebut dibahas.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 24
Aturan Nama Variabel
 Tidak boleh dimulai dengan angka, misalnya 2x.
 Tidak boleh mengandung simbol operator aritmatika, dan simbol–simbol lain
yang dipergunakan sebagai operator dalam pascal, seperti : koma # @ ^ ! &
titik dll.
 Tidak boleh mengandung spasi atau blank, misalnya nilai x
 Tidak boleh sama dengan nama fungsi dan keyword bahasa pascal,
misalnya read.
4. Blok Program
Bagian dimana kita akan menuliskan bahasa program atau perintah (koding)
yang diawali dengan kata kunci begin dan diakhiri dengan kata kunci end. (end
titik). Perintah tersebut terdiri dari 3 bagian yaitu perintah masukan, perintah
keluaran, dan perintah perhitungan atau proses.
Perintah Masukan
 Read adalah perintah untuk menginput data. Setelah menginput data, kursor
tidak berpindah ke baris berikutnya.
 Readln adalah perintah untuk menginput data. Setelah menginput data,
kursor pindah ke baris barikutnya.
 Contoh :
Read(x) artinya input data x setelah itu posisi kursor tidak berpidah ke baris
berikutnya.
Readln(x) artinya input data x setelah itu posisi kursor berpidah ke baris
berikutnya.
Perintah Keluaran
 Write adalah perintah untuk menuliskan data. Setelah menulis data, kursor
tidak berpindah ke baris baris berikutnya
 Writeln adalah perintah untuk menuliskan data. Setelah menulis data, kursor
pindah ke baris berikutnya
 Contoh :
Write(„ Teks „) artinya tulis kata Teks, setelah itu kursor tidak berpindah ke
baris berikutnya.
Writeln(„ Teks „) artinya tulis kata Teks, setelah itu kursor berpindah ke baris
berikutnya.
Perintah write umumnya digunakan untuk :
 Menuliskan keterangan/informasi kemudian dikuikuti oleh perintah readln
untuk melakukan input data. Keterangan harus diapit oleh tanda petik satu.
Misalnya:
Write(‘Input Nilai x : ‘);
Readln(x);
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 25
Perintah write menuliskan keterangan „Input Nilai x :‟ setelah itu kursor tidak
berpindah baris yang sehingga nilai x yang akan diketik/diinput berada pada
baris yang sama. Setelah menginput nilai x, maka kursor kan berpindah ke
baris ke baris berikutnya karena perintah readln(x).
 Menuliskan nilai variabel baik input maupun output. Misalnya :
Write(‘Input Nilai x : ‘);
Readln(x);
y:= 2*x;
writeln(‘Nilai y = ‘,y);
Membuat Baris Kosong
Baris yang kosong sering digunakan untuk membuat jarak antara baris menjadi
lebih jelas. Dalam program ms word dikenal dengan instilah Enter. Perintah
untuk membuat baris kosong dalam program pascal adalah writeln tanpa
diikuti argumen ( writeln; ). Dalam Contoh program, sering ada kata writeln;
tujuannya adalah untuk membuat baris kosong (enter). Jika ada 2 kata writeln;
itu artinya berpindah baris 2 kali.
Menghentikan Proses Program Untuk sementara
Untuk dapat melihat tampilan hasil program dengan baik, maka program perlu
dihentikan untuk sementara. Selama berhenti, kita dapat melihat hasil program,
apakah sudah benar, sudah baik, atau sudah rapi.
Perintah untuk menghentikan proses program untuk sementara adalah readln
tanpa argumen ( readln; ) Setelah berhenti, maka proses program dapat
dilanjutkan lagi dengan menekan sembarang tombol dari keyboard.
Dalam contoh program, selalu ada kata readln; untuk menghentikan tampilan
hasil program. Perintah lain yang dapat menghentikan program untuk sementara
adalah readkey tanpa argumen ( readkey;)
Perintah Perhitungan
 Sqrt adalah perintah untuk menghitung nilai akar pangkat dua dari sebuah
variabel. Misalnya sqrt(x) artinya menghitung nilai akar pangkat dua dari x.
 Sqr adalah perintah untuk menghitung nilai pangkat dua dari sebuah
variabel. Misalnya sqr(x) artinya menghitung nilai pangkat dua dari x.
 Div adalah perintah untuk menghitung pembagian 2 buah bilangan bulat
(integer) kemudian mengambil hasil baginya dan membuang sisa
pembagiannya.
 Mod adalah perintah untuk menghitung pembagian 2 buah bilangan bulat
(integer) kemudian mengambil sisa pembagiannya dan membuang hasil
baginya.
 Rumus atau persamaan matematika. Misalnya y = x2
.
 Dll.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 26
Contoh 3.1
Buatlah program sederhana untuk menampilkan hasil perhitungan dari
persamaan x = a + b dan y = a x b
Penyelesaian
Untuk menyelesaikan persamaan di atas, maka kita akan mendeklarasikan 4
buah variabel yaitu a, b, x, dan y. Tampilkan nilai x dan y dengan 2 bentuk yaitu
x dan y berada pada satu baris dan x dan y berada pada baris yang berbeda.
Algoritma :
1. Mulai
2. Deklarasikan variabel x, y, a, b
3. Input nilai a, b
4. Hitung nilai x = a + b
5. Hitung nilai y = a x b
6. Tulis Hasil x dan y (Tampilan-1)
7. Tulis Hasil x dan y (Tampilan-2)
8. Hentikan proses program untuk sementara
9. Selesai
Flowchart :
Gambar 3.1 Flowchart Contoh 3.1.
Program :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 27
Program Dasar; { Judul Program }
{File : CNTH31.pas }
{Oleh : Simon Patabang }
{=========================}
Uses crt; { Aktifkan kamus crt }
var x , y, a, b : integer; {Deklarasi variabel}
Begin (* Awal program*)
clrscr; {bersihkan layar}
writeln; {pindah baris 1 kali}
writeln ('Contoh Perintah Input output');
writeln('Input nilai a = '); {kursor pindah baris
setelah menulis}
readln(a);
write('Input nilai b = '); {kursor tidak pindah baris
setelah menulis}
readln(b);
x := a + b; {Hitung nilai x}
y := a * b; {Hitung nilai y}
writeln;writeln;{pindah baris 2 kali}
writeln('Hasil tampilan 1 ');
write(' x = ',x); (* Tulis nilai x *)
writeln(' y = ',y); (* Tulis nilai y *)
writeln;writeln; {pindah baris 2 kali}
writeln('Hasil tampilan 2 ');
writeln(' x = ',x); (* Tulis nilai x *)
write(' y = ',y); (* Tulis nilai y *)
writeln;writeln;
writeln('Tekan sembarang tombol untuk melanjutkan');
readkey; (*Hentikan sementara proses program *)
End. (* Akhir program*)
Hasil Program
Gambar 3.2 Hasil Program Contoh 3.1
Contoh 3.2
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 28
Buatlah program untuk menyelesaikan persamaan matematika berdasarkan
algoritma dan flowchart pada Contoh 3.1
Program :
Program Dasar;
{File : CNTH32.pas }
{Oleh : Simon Patabang }
{=========================}
uses crt;
var a,b, y : integer;
Begin
writeln;
clrscr; {Bersihkan layar}
write('Input nilai a =');
readln(a);
write('Input nilai b =');
readln(b);
writeln;
y := 6*a + 2*b; {Proses}
writeln('y = 6a + 2b');
writeln('y = ',y); {Output}
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program :
Gambar 3.3 Hasil Program Contoh 3.2
Contoh 3.3
Buatlah program dari algoritma dan flowchart pada Contoh 3.2
Program :
Program Dasar;
{File : CNTH33.pas }
{Oleh : Simon Patabang }
{=========================}
uses crt;
var a,b, x,y : integer;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 29
Begin
clrscr; {Bersihkan layar}
writeln; {Buat baris kosong}
write('Input nilai x = ');
readln(x); {Input nilai x}
writeln;
a := 4*x*X*x; {Proses}
b := 8*x; {Proses}
y := a + b - 2; {Proses}
writeln('y = 4x^3 + 8x - 2');
writeln('y = ',y); {Output}
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program :
Gambar 3.4 Hasil Program Contoh 3.3
Contoh 3.4
Buatlah program dari algoritma dan flowchart pada Contoh 3.3
Program :
Program Dasar;
{File : CNTH34.pas }
{Oleh : Simon Patabang }
{=========================}
uses crt;
var d,m,j,s: integer;
Begin
clrscr; {Bersihkan layar}
write(' Input detik = ');
readln(d);
j:= d div 3600;
s:= d mod 3600;
m:= s div 60;
d:= s mod 60;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 30
writeln;
writeln(' ',j,' jam');
writeln(' ',m,' menit');
writeln(' ',d,' detik');
writeln;
writeln(' Jam : ',j,':',m,':',d);
writeln;
writeln('Tekan sembarang tombol');
readln;
end.
Hasil Program :
Gambar 3.5 Hasil Program Contoh 3.4
Catatan :
Variabel yang digunakan untuk perintah div dan mod harus bertipe integer. Tipe
lain tidak akan dapat diproses atau akan terjadi error type mismatch
Contoh 3.5
Buatlah program dari algoritma dan flowchart pada Contoh 3.3
Program :
Program Dasar;
{File : CNTH35.pas}
{Oleh : Simon Patabang}
uses crt;
var x,y : real;
Begin
clrscr;
writeln;
write('Input nilai x = ');
readln(x);
y := sqr(x) + sqrt(x);
writeln;
writeln('sqr(x)+sqrt(x) = ',y:6:2);
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 31
End.
Hasil Program :
Gambar 3.6 Hasil Program Contoh 3.5
Catatan :
 Tipe variabel yang berlaku untuk perintah Sqr harus bertipe real.
 Nilai y artinya 2,045 x 101
= 20,45
Contoh 3.6
Buatlah program dari algoritma dan flowchart pada Contoh 3.5
Program :
Program Dasar;
{File : CNTH36.pas}
{Oleh : Simon Patabang}
uses crt;
var L, p, lb: real;
Begin
clrscr;
writeln;writeln;
p:=10; {Nilai panjang p}
lb:=5; {Nilai lebar lb}
L:= p*lb; {Hitung Luas}
writeln('Panjang = ',p:6:2);
writeln('Lebar = ',lb:6:2);
writeln('Luas = ',L:6:2);
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 32
Gambar 3.7. Hasil Program Contoh 3.6
Contoh 3.7
Buatlah program untuk menghitung z = x2
+ y4
Algoritma :
1. Mulai
2. Deklarasikan variabel x,y,z
3. Input nilai x dan y
4. Hitung nilai z = x2
+ y4
5. Cetak hasil z
6. Tekan sembarang tombol
7. Selesai
Flowchart :
Gambar 3.8. Flowchart Contoh 3.7
Program :
Program Dasar;
{File : CNTH37.pas }
{Oleh : Simon Patabang}
Uses crt; (* Aktifkan kamus crt *)
Var x,y,z : real; {Deklarasikan variabel}
Begin
clrscr;
write('Input x = '); readln(x); {input nilai x}
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 33
write('Input y = '); readln(y); { input nilai y}
z := sqr(x) + sqr(y); {Proses, hitung nilai z}
writeln; writeln;
writeln(' z = ', z:6:2); {Output, cetak z }
writeln; writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program
Gambar 3.9. Hasil Program Contoh 3.7
IV. Dasar Pemrograman
Aturan Bahasa Pascal
Program Pascal ditulis dengan menggunakan aturan penulisan yang harus diikuti
agar program dapat berjalan dengan baik. Penulisan yang tidak sesuai dengan
aturan yang ditentukan akan menyebabkan terjadinya kesalahan.
Nama File :
7. Nama file terdiri dari maksimum 8 karakter. Jika lebih, maka kelebihannya akan
dipotong oleh program secara otomatis.
8. Nama file program mempunyai ekstensi PAS.
9. Nama file tidak boleh menggunakan spasi. Misalnya contoh 1.pas (salah)
10.Nama file boleh menggunakan tanda hubung bawah. Misalnya contoh_1.pas
(benar)
11.Nama file tidak boleh diawali dengan angka. Misalnya 2prog.pas (salah)
12.Tidak boleh mengandung karakter yang tidak lazim, misalnya : * , ! # ^ dst.
Dasar Bahasa Pemrograman Pascal
Dasar bahasa pemrograman pascal ditulis dengan menggunakan beberapa aturan
yang terdiri dari 4 komponen utama yaitu :
8. Komentar/Penjelasan
Komentar atau penjelasan tambahan dalam program ditulis dalam tanda
kurung. Ada 2 bentuk tanda kurung yang dapat digunakan yaitu :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 34
 Diawali dengan simbol (* (buka kurung bintang) dan diakhiri dengan tanda *)
(bintang tutup kurung)
Contoh : (*Program Input Data*)
 Diawali dengan tanda kurung buka kurawal { dan diakihiri dengan tanda
kurung tutup kurawal }.
Contoh : {Program Input Data}
9. Penulisan Program
Setiap baris program harus diakhiri dengan tanda titik koma ( ; ). Tujuannya
untuk memberi tanda bahwa baris perintah tersebut sudah berakhir agar
program dapat membacara tiap baris perintah dengan benar. Jika tidak diberi
tanda titik koma, maka program akan memberi pesan kesalahan (error) bahwa
baris tersebut belum menggunakan titik koma.
Kode program dapat ditulis dengan bantuan program notepad dari Windows
tetapi harus disimpan dengan ekstensi .pas. Misalnya contoh.pas. File program
harus disimpan pada folder dimana program pascal dapat membaca program
yang dibuat.
10.Huruf Besar dan Kecil
Pascal tidak membedakan huruf besar atau kecil dalam penulisan perintah,
Artinya penulisan perintah dengan huruf besar dan huruf kecil dianggap sama.
Misalnya :
 Y sama dengan y
 x sama dengan X
 p sama dengan P
 N sama dengan n
11.Variabel
Variabel adalah tempat menyimpan data dalam memori dimana nilainya dapat
berubah-ubah. Variabel dapat didefinisikan dengan huruf, kata, dan gabungan
huruf atau kata dengan angka.
Misalnya : a, b, c, x, y, a1, a2, nama, nama1, nama2, dst
12.Tipe Data
Dalam program pascal dikenal beberapa tipe data dimana setiap tipe harus
disesuaikan dengan variabelnya.
Misalnya:
 Bilangan bulat dideklarasikan dengan tipe integer.
 Bilangan pecahan atau decimal dideklarasikan dengan tipe real
 Data berupa huruf dideklarasikan dengan tipe char
 Data berupa kata dideklarasikan dengan tipe string
13.Operator Sama Dengan
Operator tanda sama dengan dalam program Pascal ada 2 yaitu :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 35
 Operator = (sama dengan), digunakan untuk memberi nilai tetapan kepada
sebuah variabel pada deklarasi konstanta.
Misalnya :
const
x = 3, y = „P‟, menentukan nilai tetapan untuk variabel x dan y.
 Operator := (Titik dua sama dengan), digunakan untuk menentukan nilai
awal variabel dalam program dan menerima hasil perhitungan.
Misalnya :
a:= 3; b:= 5, memberi nilai awal untuk variabel a dan b
y := 5*a + 2*b, variabel y menerima hasil perhitungan
14.Perintah
Perintah adalah koding yang dikenali sebagai bahasa dalam program. Dengan
menggunakan perintah-perintah khusus sebagai kode program, maka program
akan dapat bekerja sesuai dengan masalah yang akan diselesaikan.
Misalnya :
 Perintah untuk menginput data, misalnya read, readln
 Perintah menghitung atau memproses data, misalnya sqr, sqrt, div, mod
 Perintah untuk menulis teks atau hasil perhitungan program, misalnya write,
writeln
Operator Matematika
Operator matematika digunakan untuk melakukan proses perhitungan
matematika dalam program. Operator tersebut adalah :
Operator Simbol
Contoh
Rumus Program
Penjumlahan + c = a + b c = a + b
Pengurangan - c = b - a c = b - a
Perkalian * c = a x b c = a*b
Pembagian / c = a/b c = a/b
Kurung ( ) c = (a + b)/2 c = (a + b)/2
Hirarki Urutan Operator :
4. Tanda kurung
5. Perkalian dan pembagian
6. Perjumlahan dan pengurangan
Contoh :
No Contoh Hasil
1 Y = 3*3 + (2 + 4)/2 – 3/6 11.5
2 Y = 2 + 3*4 – 3 11
3 Y = (3 + 2)*2/5 2
4 Y = 2/2*4 + 3*4/2 10
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 36
5 Y = ((4-2)/2*3 + 4)/ 2 3.5
Operator Fungsi matematika
Operator Nama Operasi
Contoh
Rumus Program Hasil
Pangkat 2 sqr(x) y=x2
y=sqr(3) 9
Akar Pangkat 2 sqrt(x) y=√x Y=sqrt(25) 5
Sisa Pembagian mod a mod b 8 mod 3 2
Bil bulat Hasil
Pembagian
div a div b 8 div 3 2
Struktur Program Pascal
Bahasa pemrograman pascal ditulis secara terstruktur artinya perintah-perintah
dalam program ditulis secara berurutan mulai dari bagian awal hingga bagian akhir.
Urutan bagian tersebut adalah sebagai berikut :
5. Judul Program
Bagian awal dari program pascal adalah judul program. Judul program ditulis
dengan diawali kata kunci PROGRAM.
Misalnya : Program Rumus_ABC
Jika judul terdiri dari 2 kata atau lebih, maka gunakan tanda hubung bawah
untuk menghubungkannya.
6. Pustaka Program
Program pascal mempunyai pustaka (library) yang berisi kamus atau daftar
perintah-perintah yang akan digunakan dalam program. Kamus tersebut
diaktifkan pada bagian awal program dengan diawali kata kunci uses. Jika
kamus perintah tidak diaktifkan, maka kode program tidak dapat melakukan
tugasnya dengan baik. Kamus yang paling sering digunakan adalah crt yang
berisi perintah dasar program seperti perintah input, proses, dan output.
Contoh : uses crt;
7. Bagian Deklarasi
Bagian deklarasi sebagai tempat untuk menyebutkan semua variabel,
konstanta, fungsi, prosedur yang akan digunakan dalam program.
4. Deklarasi variabel.
Variabel yang digunakan dalam program harus dideklarasikan lebih dahulu
sebelum digunakan dalam program. Jika tidak dideklarasikan, maka akan
terjadi kesalahan (error). Deklarasi variabel selalu diawali dengan kata kunci
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 37
var. Setiap variabel akan menerima dan menyimpan data sesuai dengan
tipe datanya. Antara nama variabel dengan tipe datanya dipisahkan oleh
tanda titik dua (:).
Contoh deklarasi variabel:
VAR nama : String[25];
a,b,c : Integer;
x,y : real;
5. Deklarasi Konstanta
Konstanta adalah data yang nilainya tetap. Deklarasi kontanta selalu diawali
dengan kata kunci const.
const Nama = ‟BUDI‟;
gaji = 1500000;
pajak = 0.1 {10%}
6. Deklarasi lain adalah label, prosedur, fungsi, dan type. Deklarasi ini akan
dijelaskan pada saat materi tersebut dibahas.
Aturan Nama Variabel
 Tidak boleh dimulai dengan angka, misalnya 2x.
 Tidak boleh mengandung simbol operator aritmatika, dan simbol–simbol lain
yang dipergunakan sebagai operator dalam pascal, seperti : koma # @ ^ ! &
titik dll.
 Tidak boleh mengandung spasi atau blank, misalnya nilai x
 Tidak boleh sama dengan nama fungsi dan keyword bahasa pascal,
misalnya read.
8. Blok Program
Bagian dimana kita akan menuliskan bahasa program atau perintah (koding)
yang diawali dengan kata kunci begin dan diakhiri dengan kata kunci end. (end
titik). Perintah tersebut terdiri dari 3 bagian yaitu perintah masukan, perintah
keluaran, dan perintah perhitungan atau proses.
Perintah Masukan
 Read adalah perintah untuk menginput data. Setelah menginput data, kursor
tidak berpindah ke baris berikutnya.
 Readln adalah perintah untuk menginput data. Setelah menginput data,
kursor pindah ke baris barikutnya.
 Contoh :
Read(x) artinya input data x setelah itu posisi kursor tidak berpidah ke baris
berikutnya.
Readln(x) artinya input data x setelah itu posisi kursor berpidah ke baris
berikutnya.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 38
Perintah Keluaran
 Write adalah perintah untuk menuliskan data. Setelah menulis data, kursor
tidak berpindah ke baris baris berikutnya
 Writeln adalah perintah untuk menuliskan data. Setelah menulis data, kursor
pindah ke baris berikutnya
 Contoh :
Write(„ Teks „) artinya tulis kata Teks, setelah itu kursor tidak berpindah ke
baris berikutnya.
Writeln(„ Teks „) artinya tulis kata Teks, setelah itu kursor berpindah ke baris
berikutnya.
Perintah write umumnya digunakan untuk :
 Menuliskan keterangan/informasi kemudian dikuikuti oleh perintah readln
untuk melakukan input data. Keterangan harus diapit oleh tanda petik satu.
Misalnya:
Write(‘Input Nilai x : ‘);
Readln(x);
Perintah write menuliskan keterangan „Input Nilai x :‟ setelah itu kursor tidak
berpindah baris yang sehingga nilai x yang akan diketik/diinput berada pada
baris yang sama. Setelah menginput nilai x, maka kursor kan berpindah ke
baris ke baris berikutnya karena perintah readln(x).
 Menuliskan nilai variabel baik input maupun output. Misalnya :
Write(‘Input Nilai x : ‘);
Readln(x);
y:= 2*x;
writeln(‘Nilai y = ‘,y);
Membuat Baris Kosong
Baris yang kosong sering digunakan untuk membuat jarak antara baris menjadi
lebih jelas. Dalam program ms word dikenal dengan instilah Enter. Perintah
untuk membuat baris kosong dalam program pascal adalah writeln tanpa
diikuti argumen ( writeln; ). Dalam Contoh program, sering ada kata writeln;
tujuannya adalah untuk membuat baris kosong (enter). Jika ada 2 kata writeln;
itu artinya berpindah baris 2 kali.
Menghentikan Proses Program Untuk sementara
Untuk dapat melihat tampilan hasil program dengan baik, maka program perlu
dihentikan untuk sementara. Selama berhenti, kita dapat melihat hasil program,
apakah sudah benar, sudah baik, atau sudah rapi.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 39
Perintah untuk menghentikan proses program untuk sementara adalah readln
tanpa argumen ( readln; ) Setelah berhenti, maka proses program dapat
dilanjutkan lagi dengan menekan sembarang tombol dari keyboard.
Dalam contoh program, selalu ada kata readln; untuk menghentikan tampilan
hasil program. Perintah lain yang dapat menghentikan program untuk sementara
adalah readkey tanpa argumen ( readkey;)
Perintah Perhitungan
 Sqrt adalah perintah untuk menghitung nilai akar pangkat dua dari sebuah
variabel. Misalnya sqrt(x) artinya menghitung nilai akar pangkat dua dari x.
 Sqr adalah perintah untuk menghitung nilai pangkat dua dari sebuah
variabel. Misalnya sqr(x) artinya menghitung nilai pangkat dua dari x.
 Div adalah perintah untuk menghitung pembagian 2 buah bilangan bulat
(integer) kemudian mengambil hasil baginya dan membuang sisa
pembagiannya.
 Mod adalah perintah untuk menghitung pembagian 2 buah bilangan bulat
(integer) kemudian mengambil sisa pembagiannya dan membuang hasil
baginya.
 Rumus atau persamaan matematika. Misalnya y = x2
.
 Dll.
Contoh 3.1
Buatlah program sederhana untuk menampilkan hasil perhitungan dari
persamaan x = a + b dan y = a x b
Penyelesaian
Untuk menyelesaikan persamaan di atas, maka kita akan mendeklarasikan 4
buah variabel yaitu a, b, x, dan y. Tampilkan nilai x dan y dengan 2 bentuk yaitu
x dan y berada pada satu baris dan x dan y berada pada baris yang berbeda.
Algoritma :
10.Mulai
11.Deklarasikan variabel x, y, a, b
12.Input nilai a, b
13.Hitung nilai x = a + b
14.Hitung nilai y = a x b
15.Tulis Hasil x dan y (Tampilan-1)
16.Tulis Hasil x dan y (Tampilan-2)
17.Hentikan proses program untuk sementara
18.Selesai
Flowchart :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 40
Gambar 3.1 Flowchart Contoh 3.1.
Program :
Program Dasar; { Judul Program }
{File : CNTH31.pas }
{Oleh : Simon Patabang }
{=========================}
Uses crt; { Aktifkan kamus crt }
var x , y, a, b : integer; {Deklarasi variabel}
Begin (* Awal program*)
clrscr; {bersihkan layar}
writeln; {pindah baris 1 kali}
writeln ('Contoh Perintah Input output');
writeln('Input nilai a = '); {kursor pindah baris
setelah menulis}
readln(a);
write('Input nilai b = '); {kursor tidak pindah baris
setelah menulis}
readln(b);
x := a + b; {Hitung nilai x}
y := a * b; {Hitung nilai y}
writeln;writeln;{pindah baris 2 kali}
writeln('Hasil tampilan 1 ');
write(' x = ',x); (* Tulis nilai x *)
writeln(' y = ',y); (* Tulis nilai y *)
writeln;writeln; {pindah baris 2 kali}
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 41
writeln('Hasil tampilan 2 ');
writeln(' x = ',x); (* Tulis nilai x *)
write(' y = ',y); (* Tulis nilai y *)
writeln;writeln;
writeln('Tekan sembarang tombol untuk melanjutkan');
readkey; (*Hentikan sementara proses program *)
End. (* Akhir program*)
Hasil Program
Gambar 3.2 Hasil Program Contoh 3.1
Contoh 3.2
Buatlah program untuk menyelesaikan persamaan matematika berdasarkan
algoritma dan flowchart pada Contoh 3.1
Program :
Program Dasar;
{File : CNTH32.pas }
{Oleh : Simon Patabang }
{=========================}
uses crt;
var a,b, y : integer;
Begin
writeln;
clrscr; {Bersihkan layar}
write('Input nilai a =');
readln(a);
write('Input nilai b =');
readln(b);
writeln;
y := 6*a + 2*b; {Proses}
writeln('y = 6a + 2b');
writeln('y = ',y); {Output}
writeln;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 42
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program :
Gambar 3.3 Hasil Program Contoh 3.2
Contoh 3.3
Buatlah program dari algoritma dan flowchart pada Contoh 3.2
Program :
Program Dasar;
{File : CNTH33.pas }
{Oleh : Simon Patabang }
{=========================}
uses crt;
var a,b, x,y : integer;
Begin
clrscr; {Bersihkan layar}
writeln; {Buat baris kosong}
write('Input nilai x = ');
readln(x); {Input nilai x}
writeln;
a := 4*x*X*x; {Proses}
b := 8*x; {Proses}
y := a + b - 2; {Proses}
writeln('y = 4x^3 + 8x - 2');
writeln('y = ',y); {Output}
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 43
Gambar 3.4 Hasil Program Contoh 3.3
Contoh 3.4
Buatlah program dari algoritma dan flowchart pada Contoh 3.3
Program :
Program Dasar;
{File : CNTH34.pas }
{Oleh : Simon Patabang }
{=========================}
uses crt;
var d,m,j,s: integer;
Begin
clrscr; {Bersihkan layar}
write(' Input detik = ');
readln(d);
j:= d div 3600;
s:= d mod 3600;
m:= s div 60;
d:= s mod 60;
writeln;
writeln(' ',j,' jam');
writeln(' ',m,' menit');
writeln(' ',d,' detik');
writeln;
writeln(' Jam : ',j,':',m,':',d);
writeln;
writeln('Tekan sembarang tombol');
readln;
end.
Hasil Program :
Gambar 3.5 Hasil Program Contoh 3.4
Catatan :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 44
Variabel yang digunakan untuk perintah div dan mod harus bertipe integer. Tipe
lain tidak akan dapat diproses atau akan terjadi error type mismatch
Contoh 3.5
Buatlah program dari algoritma dan flowchart pada Contoh 3.3
Program :
Program Dasar;
{File : CNTH35.pas}
{Oleh : Simon Patabang}
uses crt;
var x,y : real;
Begin
clrscr;
writeln;
write('Input nilai x = ');
readln(x);
y := sqr(x) + sqrt(x);
writeln;
writeln('sqr(x)+sqrt(x) = ',y:6:2);
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program :
Gambar 3.6 Hasil Program Contoh 3.5
Catatan :
 Tipe variabel yang berlaku untuk perintah Sqr harus bertipe real.
 Nilai y artinya 2,045 x 101
= 20,45
Contoh 3.6
Buatlah program dari algoritma dan flowchart pada Contoh 3.5
Program :
Program Dasar;
{File : CNTH36.pas}
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 45
{Oleh : Simon Patabang}
uses crt;
var L, p, lb: real;
Begin
clrscr;
writeln;writeln;
p:=10; {Nilai panjang p}
lb:=5; {Nilai lebar lb}
L:= p*lb; {Hitung Luas}
writeln('Panjang = ',p:6:2);
writeln('Lebar = ',lb:6:2);
writeln('Luas = ',L:6:2);
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program :
Gambar 3.7. Hasil Program Contoh 3.6
Contoh 3.7
Buatlah program untuk menghitung z = x2
+ y4
Algoritma :
8. Mulai
9. Deklarasikan variabel x,y,z
10.Input nilai x dan y
11.Hitung nilai z = x2
+ y4
12.Cetak hasil z
13.Tekan sembarang tombol
14.Selesai
Flowchart :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 46
Gambar 3.8. Flowchart Contoh 3.7
Program :
Program Dasar;
{File : CNTH37.pas }
{Oleh : Simon Patabang}
Uses crt; (* Aktifkan kamus crt *)
Var x,y,z : real; {Deklarasikan variabel}
Begin
clrscr;
write('Input x = '); readln(x); {input nilai x}
write('Input y = '); readln(y); { input nilai y}
z := sqr(x) + sqr(y); {Proses, hitung nilai z}
writeln; writeln;
writeln(' z = ', z:6:2); {Output, cetak z }
writeln; writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 47
Gambar 3.9. Hasil Program Contoh 3.7
II. Tipe Data Standart
Tipe data adalah jenis data berupa angka, huruf, karakter, kata, dan kalimat
yang akan di-input dan diproses oleh komputer. Agar program dapat menerima
input sesuai dengan jenis datanya, maka ditentukanlah tipe Standart yang terdiri
dari 3 tipe yaitu :
a) Tipe Ordinal
b) Tipe Real
c) Tipe String
A. Tipe Data Ordinal
Adalah tipe data yang mempunyai nilai yang pasti sesuai dengan data
masukannya. Tipe data ordinal terdiri dari 3 macam yaitu :
1. Integer adalah semua bilangan bulat negatip, nol, dan positip.
2. Char adalah semua huruf, angka, tanda baca, dan simbol lainnya yang ada
pada keyboard. Penulisannya harus diapit oleh tanda pertik satu. Misalnya :
„A‟, „a‟, „3‟, „&‟, „%‟, „+‟, dll.
3. Boolean adalah nilai kebenaran atas suatu pernyataan logika dengan hasil
True (benar) atau False (salah).
Contoh 4.1:
Buatlah program dengan 2 buah variabel a, b bertipe integer, 2 buah
variabel p, q bertipe boolean, satu variabel y bertipe char. Nilai p dan q diperoleh
dengan membandingkan variabel a dan b yaitu p = a<b dan q = a>= b
sedangkan a, b, dan y merupakan data masukan.
Algoritma :
1. Mulai
2. Deklarasikan variabel a,b (integer),y (char),p,q boolean
3. Input data a,b,y
4. P = a<b
5. Q = a>=b
6. Cetak data a,b,y,p,q
7. Hentikan proses
8. Selesai
Flowchart :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 48
Gambar 4.1 Flowchart Contoh 4.1
Program :
Program Tipe_Boolean;
{File : CNTH41.pas }
{Oleh : Simon Patabang }
Uses crt;
Var a,b : integer;
y : char;
p,q : boolean;
Begin
clrscr; {Bersihkan layar}
write('Input bil Integer a = ');
readln(a); {Tentukan nilai a}
write('Input bil Integer b = ');
readln(b); {Tentukan nilai b}
write('Input karakter = ');
readln(y); {Tentukan nilai y}
p:=a<b;
q:=a>=b;
writeln;writeln;
writeln('Apakah a < b = ',p);
writeln('Apakah a >= b = ',q);
writeln('Nilai karakter = ',y);
writeln('Bil integer = ',a,' dan ', b);
Readln;
End.
Hasil Program
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 49
Gambar 4.2 Hasil Program Contoh 4.1
B. Tipe Data Real
Adalah tipe data untuk bilangan percahan atau desimal. Output tipe data real
berbentuk bilangan desimal maka hasil output perlu diformat “jumlah angka di
belakang koma”.
Bentuk perintah format : X:N:D
X = Variabel x
N = Jumlah tempat/karakter yang tersedia
D = Jumlah desimal di belakang koma
Misalnya : x:8:2
artinya tersedia 8 tempat untuk mencetak nilai variabel x dengan 2 angka di
belakang koma.
Contoh 4.2
Buatlah program dengan 3 buah variabel yang menerima data masukan berupa
tipe data real. Cetak ke-3 data tersebut dengan format dan tanpa format.
Algoritma :
1. Mulai
2. Deklarasikan Variabel a,b,c
3. Input data a,b,c
4. Cetak data a,b,c
5. Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 50
Gambar 4.3 Flowchart Contoh 4.2
Program :
Program TipeDataReal;
{File : CNTH42.pas }
{Oleh : Simon Patabang }
Uses crt;
Var a,b,c : real;
Begin
clrscr; {Bersihkan layar}
write(‘Input a = ‘); readln(a);
write(‘Input b = ‘); readln(b);
write(‘Input c = ‘); readln(c);
writeln(‘Nilai a = ‘, a);
writeln(‘Nilai b = ‘, b:6:2);
writeln(‘Nilai c = ‘, c:10:3);
Readln;
End.
Hasil Program
Gambar 4.4 Hasil Program Contoh 4.2
Jika output Bilangan Real tidak diformat, mis 25.6 maka akan menghasilkan
tampilan seperti berikut : 2.5600000000E+1 artinya 2.56 x 101
Aturan Penggunaan Tipe Real dan Integer
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 51
Aturan penggunaan variabel integer dan real dalam operasi matematika seperti
perkalian, pembagian, penjumlahan atau pengurangan perlu diperhatikan dan
diketahui dengan baik karena akan menyebabkan terjadinya kesalahan.
Program akan menampilkan informasi kesalahan atau error dengan pesan
“Type mismatch” pada layar jika tidak memenuhi aturan.
Aturan tersebut adalah :
 Tipe variabel integer tidak dapat menerima data bertipe real tetapi variabel
bertipe real dapat menerima data bertipe real maupun integer. Misalnya var
a, b, dan c bertipe integer sedangkan x, y, dan z real, maka
z := a dan y:= x adalah benar
b := x adalah salah.
Contoh :
a:= 2; x:= 4;
y:= x;
z:= a;
b:= a;
c:= x;
Hasilnya adalah :
y:= 4.00
z:= 2.00
b:= 2
c:= Type mismatch
 Operasi pembagian, perkalian, pejumlahan atau pengurangan antara 2 buah
var bertipe integer dapat diterima oleh variabel bertipe real tetapi pembagian
2 buah var bertipe real tidak dapat diterima oleh variabel bertipe integer.
Misalnya a,b, dan c bertipe integer sedangkan x,y, dan z bertipe real, maka :
x:=a/b atau y:= a*b adalah benar
a:= x/y atau b:= x*y adalah salah
x:= a + b atau y := a – b adalah benar
a:= x + y atau b:= x - y adalah salah
z:= x + a adalah benar
c:= x + a adalah salah
Contoh :
a:= 2; x:= 4;
y:= x/a;
z:= a/x;
b:= a*x;
z:= x + a;
c:= x + a;
c:= a*a;
Hasilnya adalah :
y:= 2.00
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 52
z:= 0.50
b:= Type mismatch
z:= 6.00
c:= Type mismatch
c:= 4
C. Tipe Data String
Adalah kumpulan tipe data yang berbentuk karakter. Panjang maksimum dari
tipe data string adalah 255 karakter.
 Contoh : var nama : string[30] artinya variabel nama dapat menerima
maksimum 30 karakter termasuk spasi.
Contoh 4.3
Buatlah program untuk menerima dan mencetak data nama, alamat, dan kota.
Algoritma :
1. Mulai
2. Deklarasikan Variabel nama, alamat, dan kota bertipe data string
3. Input data nama, alamat, dan kota
4. Cetak data nama, alamat, dan kota
5. Selesai
Flowchart :
Gambar 4.5 Flowchart Contoh 4.3
Program :
Program TipeDataString;
(*File : CNTH43.pas *)
(*Oleh : Simon Patabang*)
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 53
Uses crt;
Var nama, alamat, kota : string[30];
Begin
clrscr;
writeln (‘Data Masukan’);
write(‘Nama : ‘); readln(nama);
write(‘Alamat : ‘); readln(alamat);
write(‘Kota : ‘); readln(kota);
writeln;
writeln (‘Data Keluaran’);
writeln(‘Nama : ‘, nama);
writeln(‘Alamat : ‘, alamat);
writeln(‘Kota : ‘, kota);
readln;
End.
Hasil Program
Gambar 4.6 Hasil Program Contoh 4.3
Fungsi Standart Arimatika
Fungsi standart merupakan perintah yang telah disediakan oleh Pascal untuk
melakukan perhitungan untuk tujuan tertentu. Perintah tersebut siap digunakan oleh
programmer untuk membuat program. Yang perlu diperhatikan adalah masalah tipe
data dari hasil setiap perintah, ada yang bertipe real dan ada juga yang bertipe
integer.
1. Abs digunakan untuk mengubah bilangan negatip menjadi bilangan positip atau
absolut sebuah bilangan, baik untuk bilangan bulat (integer) maupun desimal
(real).
Bentuk Perintah : abs(x)
Argumen x dapat bertipe real atau integer. Hasilnya dapat bertipe real jika
diterima oleh variabel bertipe real dan dapat bertipe integer jika x bertipe integer
dan hasilnya diterima oleh variabel bertipe integer. Misalnya a,b,c bertipe real
dan x,y bertipe integer maka pernyataan :
 x:=abs(y) dan b:=abs(y) adalah benar karena argumen y bertipe integer
 y:=abs(b) adalah salah karena y bertipe integer sedangkan b bertipe real
Contoh :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 54
b:= -4; x := -9;
a := abs(b);
c:= abs(x);
y:= abs(x);
x:=abs(b);
Hasilnya adalah :
a = 4.00
c = 9.00
y = 9
x =Type mismatch
2. Exp digunakan untuk menghitung nilai pangkat bilangan e atau ex
Bentuk Perintah : exp(x)
Argumen x dapat bertipe real atau integer dan hasilnya selalu bertipe real.
Misalnya variabel a, b dan c bertipe real sedangkan x dan y bertipe integer,
maka pernyataan :
 a:=exp(b) dan a:=exp(x) adalah benar karena a bertipe real dan dapat
menerima hasil yang bertipe real.
 y:=exp(b) atau y:=exp(x) adalah salah karena y bertipe integer dan tidak
dapat menerima hasil yang bertipe real.
Contoh :
b:= 4; x := 9;
a := exp(b);
c:= exp(x);
y:= exp(b);
Hasilnya adalah :
a = 54.60
c = 8103.08
y = Type mismatch
3. Ln digunakan untuk menghitung nilai logaritma dengan basis e.
Bentuk Perintah : ln(x)
Sedangkan logaritma berbasis 10 dapat dihitung rumus :
 
ln( )
ln(10)
x
Log x 
Argumen x dapat bertipe real atau integer tetapi hasilnya selalu bertipe real.
Misalnya variabel a, b dan c bertipe real sedangkan x dan y bertipe integer,
maka pernyataan:
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 55
 a:=ln(b) atau a:=ln(x) adalah benar karena a bertipe real dan dapat
menerima hasil yang bertipe real.
 a:=ln(b)/ln(10) atau a:=ln(x)/ln(10) adalah benar karena a bertipe real dan
dapat menerima hasil yang bertipe real.
 y:=ln(b) atau y:=ln(x) adalah salah karena y bertipe integer dan tidak dapat
menerima hasil yang bertipe real.
 y:=ln(b)/ln(10) atau y:=ln(x/ln(10) adalah salah karena y bertipe integer dan
tidak dapat menerima hasil yang bertipe real.
Contoh :
b:= 4; x := 9;
a := ln(b);
c:= ln (x)/ln(10);
y:= ln(b);
Hasilnya adalah :
a = 1.39
c = 0.95
y = Type mismatch
4. Int digunakan untuk mengambil mengambil bilangan bulat dari data bertipe real
dan sisanya dibuang.
Bentuk Perintah : int(x)
Argumen x dapat bertipe real atau integer tetapi hasilnya selalu bertipe real.
Misalnya variabel a, b dan c bertipe real sedangkan x dan y bertipe integer,
maka pernyataan:
 a:=int(b) atau a:=int(x) adalah benar karena a bertipe real dan dapat
menerima hasil yang bertipe real.
 y:=int(b) atau y:=int(x) adalah salah karena y bertipe integer dan tidak dapat
menerima hasil yang bertipe real.
Contoh :
b:= 4.32; x := 9;
a:=int(b);
c:=int(x);
y:=int(x);
Hasilnya adalah :
a = 4.00
c = 9.00
y = Type mismatch
5. Frac digunakan untuk mencari nilai pecahan dalam bentuk desimal dari sebuah
variabel bertipe integer atau pun real. Hasilnya adalah bilangan real.
Bentuk Perintah : frac(x)
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 56
Argumen x hanya dapat bertipe real atau integer dan hasilnya selalau bertipe
real. Misalnya variabel a, b dan c bertipe real sedangkan x bertipe integer,
maka pernyataan:
 a:=frac(b) adalah benar karena a bertipe real dan dapat menerima hasil
yang bertipe real.
 x:= frac(b) adalah salah karena x bertipe integer dan tidak dapat menerima
hasil yang bertipe real.
Contoh :
b:= 4.32; x := 9;
a:=frac(b);
c:=frac(x);
y:=frac(x);
Hasilnya adalah :
a = 0.32
c = 0.00
y = Type mismatch
6. Sqr digunakan untuk menghitung nilau kuadrat dari sebuah argumen.
Bentuk Perintah : sqr(x)
Argumen x dapat bertipe real atau integer dan hasilnya dapat bertipe real atau
integer. Misalnya variabel a dan b bertipe real sedangkan x dan y bertipe
integer, maka pernyataan:
 a:=sqr(b) dan a:=sqr(x) adalah benar karena a bertipe real dan dapat
menerima hasil yang bertipe real ataupun integer. Hasilnya bertipe real.
 y:=sqr(x) adalah benar karena x dan y bertipe integer dan dan hasilnya
bertipe integer.
 x:=sqr(b) adalah salah karena x bertipe integer sedangkan b bertipe real.
Contoh :
b:= 4; x := 9;
a:=sqr(b);
c:=sqr(x);
y:=sqt(x);
x:=sqr(b);
Hasilnya adalah :
a = 2.00
c = 3.00
y = 3
x = Type mismatch
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 57
7. Sqrt digunakan untuk menghitung nilai akar pangkat dua dari sebuah argumen.
Bentuk Perinntah : sqrt(x)
Argumen x dapat bertipe real atau integer tetapi hasilnya selalu bertipe real.
Misalnya variabel a, b dan c bertipe real sedangkan x dan y bertipe integer,
maka pernyataan:
 a:=sqrt(b) atau a:= sqrt(x) adalah benar karena a bertipe real dan dapat
menerima hasil yang bertipe real.
 y:=sqrt(b) atau y:= sqrt(x) adalah salah karena y bertipe integer dan tidak
dapat menerima hasil yang bertipe real.
Contoh :
b:= 4; x := 9;
a:=sqrt(b);
c:=sqrt(x);
y:=sqrt(b)
Hasilnya adalah :
a = 2.00
c = 9.00
y = Type mismatch
8. Round digunakan untuk membulatkan nilai bertipe real ke nilai pembulatan
terdekat.
Bentuk Perintah : round(x)
Argumen x selalu bertipe real atau integer dan hasilnya dapat bertipe integer
atau real.
Contoh :
Var a,b,c : real; x,y,z : integer;
b:= 4.6; x := 9;
a:= round(b);
c:= round(x);
y:= round(b);
z:= round(x);
Hasilnya adalah :
a = 5.00
c = 9.00
y = 5
z = 9
Contoh 4.4
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 58
Buatlah prorgram untuk dengan menggunakan perintah pada no 1 sampai 8 di atas.
Penyelesaian
Dalam program kita akan mencari nilai absolut, eksposnesial, logaritma,
pembulatan dengan int dan round, mengambil nilai pecahan atau desimal dari
bilangan real, dan menghitung nilai akar kuadrat dan akar pangkat dua.
Algoritma
 Mulai
 Deklarasikan variabel real a,b,c,d, p,q,r dan integer x,y, w, z
 Input nilai a, b, x, y
 Hitunglah c = a + b; a=x/y, d=abs(b), p=frac(d), q=int(d), b=sqr(x), r=sqrt(x)
 Cetak hasil perhitungan
 Hentikan proses
 Selesai
Program
Program Tipe_Varibel;
(*File : CNTH44.pas *)
(*Oleh : Simon Patabang*)
uses crt;
var a,b,c,d,p,q,r : real;
x,y,w,z : Integer;
Begin
clrscr;
write(' Integer x = ');readln(x);
write(' Integer y = ');readln(y);
write(' Real a = ');readln(a);
write(' Real b = ');readln(b);
c:= a + b; d:=x/y;
a:=abs(b); p:=frac(d); q:=int(d);
b:=sqr(x); r:=sqrt(x);
z:= x + y;
w:= sqr(y);
writeln;writeln;
writeln(' a + b = ',c:6:2);
writeln(' x / y = ',d:6:2);
writeln(' abs(b) = ',a:6:2);
writeln(' frac(x/y) = ',p:6:2);
writeln(' int(x/y) = ',q:6:2);
writeln(' sqr(x) = ',b:6:2);
writeln(' sqrt(x) = ',r:6:2);
writeln(' x + y = ',z);
writeln(' sqr(y) = ',w);
writeln;writeln;
writeln('Tekan sembarang tombol');
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 59
readkey;
End.
Hasil Program
Gambar 4.7 Hasil Program Contoh 4.4
9. Pi digunakan sebagai pengganti bilangan π atau 22/7. Hasil selalu bertipe real.
Umumnya digunakan dalam perhitungan matematika yang menggunakan
bilangan π. Misalnya luas lingkaran πr2
dengan pernyataan L:=pi*sqr(r).
Variabel L harus bertipe real sedangkan r dapat bertipe real atau integer.
Contoh 4.5
Buatlah program untuk menghitung luas dan keliling lingkaran dimana nilai
masukan adalah jari-jari lingkaran.
Penyelesaian
Rumus :
Luas lingkaran = πr2
dan Keliling lingkaran = 2πr
Algoritma
 Mulai
 Deklarasikan variabel L, K, dan R dengan tipe real
 Input nilai R
 Hitung L dan K
 Cetak Hasil L dan K
 Hentikan proses sementara
 Selesai
Program
Program Tipe_Varibel;
(*File : CNTH45.pas *)
(*Oleh : Simon Patabang*)
uses crt;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 60
var L,K,r : real;
Begin
clrscr;
write(' Input Nilai r = ');readln(r);
L:=pi*sqr(r);
K:=2*pi*r;
writeln;writeln;
writeln(' Luas Lingkaran = ',l:6:2);
writeln(' Keliling Lingkaran = ',k:6:2);
writeln;writeln;
writeln('Tekan sembarang tombol');
readkey;
End.
Hasil Program
Gambar 4.8 Hasil Program Contoh 4.5
10.Mod digunakan untuk mengambil nilai sisa dari hasil pembangian dua buah
bilangan bertipe integer.
Bentuk Perintah : x mod y
Argumen x dan y hanya dapat bertipe integer tetapi hasilnya dapat bertipe real
atau integer. Misalnya variabel a, b, dan c bertipe real sedangkan x, y dan z
bertipe integer, maka pernyataan:
 z:= x mod y atau a:= x mod y adalah benar karena x dan y bertipe integer.
 z:= b mod c atau a:= b mod c adalah salah karena b dan c bertipe real.
Contoh :
x:= 14; y := 3;
z:= x mod y
a:= x mod y
Hasilnya adalah :
z = 2
a = 2.00
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 61
11.Div digunakan untuk mengambil bilangan bulat dari hasil pembangian dua buah
bilangan bertipe integer
Bentuk Perintah : x div y
Argumen x dan y hanya dapat bertipe integer tetapi hasilnya dapat bertipe real
atau integer. Misalnya variabel a, b, dan c bertipe real sedangkan x, y dan z
bertipe integer, maka pernyataan:
 z:= x div y atau a:= x div y adalah benar karena x dan y bertipe integer.
 z:= b div c atau a:= b div c adalah salah karena b dan c bertipe real.
Contoh :
x:= 14; y := 3;
z:= x div y
a:= x div y
Hasilnya adalah :
z = 4
a = 4.00
Contoh 4.6
Buatlah program untuk mencari bilangan bulat dan sisa dari hasil pembagian
antara 2 buah bilangan bulat atau integer.
Penyelesaian
Variabel yang digunakan harus integer. Misalkan a, b, c, dan d adalah tipe
integer.
Algoritma
 Mulai
 Deklarasikan variabel a,b,c, dan d
 Input a dan b
 Hitung sisa hasil bagi a dan b
 Hitung bil bulat hasil bagi a dan b
 Cetak hasilnya
 Hentikan sementara
 Selesai
Program
Program Program Mod_Div;
(*File : CNTH46.pas *)
(*Oleh : Simon Patabang*)
uses crt;
var a,b,c,d : integer;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 62
Begin
clrscr;
write(' Input Nilai a = ');readln(a);
write(' Input Nilai b = ');readln(b);
c:= a mod b;
d:= a div b;
writeln;writeln;
writeln(' Hasil bagi a/b = ',d);
writeln(' Sisa Hasil bagi a/b = ',c);
writeln;writeln;
writeln('Tekan sembarang tombol');
readkey;
End.
Hasil Program
Gambar 4.9 Hasil Program Contoh 4.6
12.Chr digunakan untuk mengkonversi kode ASCII menjadi karakter. Kode ASCII
terdiri dari bilangan bulat mulai dari 0 hingga 255.
Bentuk Perintah : chr(x)
Argumen x bertipe byte dan hasilnya bertipe karater. Misalkan x bertipe byte dan
a bertipe char, maka pernyataan yang benar adalah a:=chr(x)
Contoh :
x:=66;
a:=chr(x)
Hasilnya adalah :
a = B
13. Ord digunakan untuk mengkonversi nilai karakter menjadi kode ASCII.
Bentuk Perintah : ord(x)
Argumen x harus bertipe karakter dan hasilnya bertipe byte. Misalnya variabel a
dan b bertipe byte sedangkan x dan y bertipe char.
Contoh :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 63
a:= 100
x:= „P‟;
y:=chr(a);
b:=ord(x);
Hasilnya adalah :
b = d
y:= 80
Contoh 4.7
Buatlah program untuk mengkonversi sebuah karakter menjadi kode ASCII dan
kode ASCII menjadi sebuah karakter.
Algoritma
 Mulai
 Deklarasikan variabel a, d dengan tipe byte dan x, y dengan tipe char
 Input kode ASCII a dan karakter x
 Cari karakter dari kode ASCII input
 Cari kode ASCII dari karakter input
 Tampilkan hasilnya
 Hentikan sementara
 Selesai
Program
Program Kode_ASCII;
(*File : CNTH47.pas *)
(*Oleh : Simon Patabang*)
uses crt;
var a,b : byte;
x,y : char;
Begin
clrscr;
write(' Kode ASCII = ');readln(a);
write(' Karakter = ');readln(x);
b:= ord(x);
y:= chr(a);
writeln;writeln;
writeln(a,' adalah karakter ',y);
writeln(x,' kode ASCIInya adalah ',b);
writeln;writeln;
writeln('Tekan sembarang tombol');
readkey;
End.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 64
Hasil Program
Gambar 4.10 Hasil Program Contoh 4.7
14. Random digunakan untuk membangkit bilangan acak antara 0 dan 1 atau
antara 0 dan n.
Bentuk Perintah : random(n)
Argumen n bertipe integer, dimana n menyatakan nilai maksimum. Jika n
disebutkan, maka nilai bilangan random antara 0 dan n. Jika n tidak disebutkan
maka bilangan randomnya antara 0 dan 1.
15.Ziseof
16.Upcase
17.Trunc
V. ALGORITMA SELEKSI
IF adalah kontrol seleksi yang digunakan untuk melakukan pengecekan
terhadap sebuah kondisi, apakah benar atau salah. Kontrol seleksi akan memilih
salah satu pilihan dari 2 atau lebih pilihan yang ada. Kontrol seleksi akan
mengambil keputusan ketika melakukan pengecekan terhadap kondisi dari sebuah
variabel.
Jika kondisi variabel tersebut memenuhi syarat yang ditentukan atau bernilai
benar maka program akan memilih suatu bagian pernyataan untuk dikerjakan. Jika
nilai variabel tidak memenuhi syarat yang ditentukan atau bernilai salah, maka
program akan memilih suatu bagian pernyataan yang lain untuk dikerjakan. Cara
kerja seperti itu disebut Algoritma Seleksi, biasa disebut juga algoritma
percabangan.
1. ALGORITMA SELEKSI DENGAN IF
Perintah untuk menyatakan pengambilan keputusan dalam program adalah IF.
Jadi IF digunakan untuk memeriksa suatu kondisi sebagai syarat untuk memilih dan
mengerjakan pilihan yang ada.
Bentuk Perintah If
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 65
if (syarat/kondisi) then
Begin
<pernyataan-1>;
End;
<pernyataan-2>;
:
Jika kondisi/syarat bernilai benar (True), maka kerjakan pernyataan-1 dalam blok
begin-end. Jika bernilai salah (False), maka pernyataan-2 di bawah blok begin-
end akan dikerjakan.
Contoh :
Pernyataan Kondisi Jika n = Nilai Logika
If(n<=10)
7 True
10 True
15 False
Dalam diagram alir, simbol dari algoritma seleksi digambarkan dengan bela ketupat
seperti pada gambar berikut.
Gambar 5.1. Diagram Alir Algoritma Seleksi
Operator Relasi
Operator Relasi digunakan untuk memeriksa satu kondisi/syarat dalam perintah if.
Operator relasi terdiri dari 6 macam yaitu :
Operator
Relasi
Operasi Contoh
= Sama dengan if (n=10) then …..
< Lebih kecil dari if (n<10) then …..
> Lebih besar dari if (n>10) then …..
<> Tidak sama dengan if (n<>10) then …..
<= Lebih kecil sama dengan if (n<=10) then …..
=> Lebih besar sama dengan if (n=>10) then …..
Bentuk Perintah IF
1. If – Then
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 66
Adalah bentuk pilihan dimana hanya ada satu pilihan “pernyataan” yang
harus dikerjakan pada saat kondisi pada If bernilai benar.
Bentuk If-then :
Catatan Penting!!!
 Jika pernyataan dalam blok Begin-End hanya terdiri dari 1 pernyataan, maka
kata Begin-end, boleh dihilangkan.
 Jika pernyataan dalam blok Begin-End terdiri dari beberapa baris
pernyataan (lebih dari 1), maka kata Begin-end, tidak boleh dihilangkan (kata
begin-end harus digunakan)
Misalnya :
If n>10 then writeln (‘Nilai n lebih besar dari 10’);
If n<=10 then
Begin
writeln (‘Nilai n lebih besar dari 10’);
writeln (‘atau Nilai n sama dengan 10’);
End;
Flowchart
Gambar. 5.2. Flowchart If-then
Contoh 5.1
Buatlah program untuk menentukan, apakah masukan bilangan bulat n
adalah bilangan genap atau ganjil dengan menggunakan if - then.
Penyelesaian :
Ciri khas dari bilangan genap adalah jika dibagi dengan 2, maka sisanya 0.
Sedangkan ciri khas bilangan ganjil adalah jika dibagi dengan2, maka
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 67
sisanya 1. Program meminta sebuah masukan bilangan bulat n. Kemudian n
akan dibagi dengan 2 oleh operator mod, misalnya a = n mod 2. Jika a=0,
maka n adalah bilangan bulat. Kemudian a kita cek lagi, apakah nilai a=1.
Jika benar, maka n adalah bilangan ganjil.
Algoritma :
1. Mulai
2. Definisikan variabel n
3. Input bil bulat
4. Hitung sisa hasil bagi : a = n mod 2
5. Cek nilai a, jika a = 0, cetak “N bilangan bulat”
6. Cek nilai a, jika a = 1, cetak “N bilangan ganjil”
7. Hentikan sementara proses program
8. Selesai
Flowchart
Gambar. 5.3 Flowchart Contoh 5.1
Program
Program Ganjil_Genap;
{File : CNTH51.pas }
{Oleh : Simon Patabang}
Uses crt;
Var n,a : integer;
Begin
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 68
Writeln; clrscr;
Write('Input n = '); Readln(n);
Writeln;
a := n mod 2; {Cari sisa hasil bagi n dengan 2}
If a=0 then writeln('N adalah bilangan genap');
If a=1 then writeln('N adalah bilangan ganjil');
Writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program
Gambar 5.4 Hasil Program Contoh 5.1
2. If - Then – Else
Adalah bentuk pilihan dimana ada dua pilihan “pernyataan” yang harus
dipilih salah satunya untuk dikerjakan.
Bentuk If - Then – Else :
 Jika kondisi benar, maka kerjakan blok pernyataan 1.
 Jika kondisi salah, maka kerjakan blok pernyataan 2.
Catatan Penting!!!
Pada setiap baris pernyataan yang mendahului pernyataan kata ELSE tidak
boleh diakhiri dengan tanda titik koma.
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 69
Gambar 5.5 Flowchart If - Then - Else
Misalnya :
If n>10 then
Wrilteln(‘n lebih besar dari 10’)
Else
Begin
Wrilteln(‘n lebih kecil dari 10’);
Wrilteln(‘atau n sama dengan 10’);
End;
Contoh 5.2
Buatlah program untuk kasus Contoh 5.1. dengan menggunakan if - then -
else.
Penyelesaian
Sisa hasil bagi sebuah bilangan asli dengan 2 hanya ada 2 kemungkinan
yaitu 0 atau 1. Hasilnya 0 untuk bilangan genap dan 1 untuk bilangan ganjil.
Dalam hal ini, jika kondisi a=1 tidak memenuhi syarat, maka pasti nilai a=0.
Demikian juga sebaliknya.
Algoritma :
1. Mulai
2. Definisikan variabel n
3. Input bil bulat n
4. Hitung sisa hasil bagi : a = n mod 2
5. Cek nilai a, jika a = 0, cetak “N bilangan bulat”
6. Jika tidak, maka cetak “N bilangan ganjil”
7. Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 70
Gambar 5.6 Flowchart Contoh 5.2
Program
Program Ganjil_Genap;
{File : CNTH52.pas }
{Oleh : Simon Patabang}
Uses crt;
Var n,a : integer;
Begin
Writeln; clrscr;
Write('Input n = '); Readln(n);
Writeln;
a := n mod 2; {Cari sisa hasil bagi n dengan 2}
If a=0 then
writeln('N adalah bilangan genap')
else
writeln('N adalah bilangan ganjil');
Writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 71
Gambar 5.7 Hasil Program Contoh 5.2
Contoh 5.3
Buatlah program dari algoritma dan flowchart penentuan Lulus atau Gagal
pada contoh 3.6
Penyelesaian :
Program akan meminta masukan nilai x kemudian di cek, apakah lebih besar
atau sama dengan 60. Jika benar, maka dinyatakan “Lulus”. Jika salah,
maka dinyatakan “Gagal‟.
Algoritama
1. Mulai
2. Definisikan variabel n
3. Input bil bulat n
4. Cek nilai n, jika n >= 60, cetak “Lulus”
5. Jika tidak, maka cetak “Gagal”
6. Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 72
Gambar 5.8 Flowchart Contoh 5.3
Program :
Program Lulus_Gagal;
{File : CNTH53.pas }
{Oleh : Simon Patabang}
uses crt;
var n : integer;
Begin
clrscr;
write('Input nilai n = ');
readln(n);
if (n>=60) then
writeln('Lulus')
else
writeln('Gagal');
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program :
Gambar 5.9 Hasil Program Contoh 5.3
3. IF - Then – Else If - Else
Adalah bentuk pilihan dimana ada lebih dari 2 pilihan “pernyataan” yang
harus dipilih salah satunya untuk dikerjakan dengan menyeleksi beberapa
kondisi dari sebuah variabel. Pernyataan yang dipilih adalah pernyataan
yang memenuhi syarat atau pernyataan yang bernilai benar.
Bentuk Perintah :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 73
 Jika kondisi1 benar, maka “pernyataan1” akan dikerjakan dan pilihan lain
akan diabaikan (tidak dibaca).
 Jika kondisi1 Salah, maka kondisi2 akan diperiksa. Jika kondisi2 benar,
maka “pernyataan2” akan dikerjakan dan pilihan lain akan diabaikan
(tidak dibaca).
 Jika kondisi2 Salah, maka kondisi berikutnya akan diperiksa. dan
seterusnya.
 Jika kondisi(n-1) Salah, maka pernyataan n akan dikerjakan.
Flowchart
Gambar 5.10 Flowchart If – Then – Else If – Else
Contoh 5.4
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 74
Buatlah program dari algoritma dan flowchart persamaan kuadrad pada
contoh 3.6 dengan menyeleksi kondisi dari variabel d.
Program
Program PersamaanKuadrad;
{File : CNTH53.pas }
{Oleh : Simon Patabang}
uses crt;
var a,b,c,d,x1,x2,p,q : real;
Begin
write('Input nilai a = ');readln(a);
write('Input nilai b = ');readln(b);
write('Input nilai c = ');readln(c);
d:=sqr(b)-4*a*c;
writeln;
writeln('d =',d:6:0);
writeln;
if d>0 then
Begin
x1:= (-b + d)/(2*a);
x2:= (-b - d)/(2*a);
writeln('x1 = ', x1:6:2);
writeln('x2 = ', x2:6:2);
End
else if d=0 then
Begin
x1:= (-b)/(2*a);
x2:= (-b)/(2*a);
writeln('x1 = ', x1:6:2);
writeln('x2 = ', x2:6:2);
End
else
Begin
p:= (-b)/(2*a);
q:= (d)/(2*a);
writeln('x1 = ', p:6:2,' + j ',q:6:2);
writeln('x2 = ', p:6:2,' - j ',q:6:2);
End;
writeln;
writeln('Tekan sembarang tombol untuk keluar');
writeln;
readln;
End.
Hasil Program
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 75
Gambar 5.11 Hasil Program Contoh 5.4
4. Nested If
Adalah bentuk algoritma seleksi, dimana dalam sebuah If terdapat If lain yang
akan menyeleksi kondisi dari sebuah variabel yang berbeda.
Bentuk Perintah :
Penjelasan :
 Jika kondisi variabel A benar, maka pernyataan A-1 akan dikerjakan
 Kemudian Cek kondisi dari variabel B.
 ika kondisi variabel B benar, maka pernyataan B-1 akan dikerjakan.
 Jika kondisi variabel B salah, maka pernyataan B-2 akan dikerjakan.
 Jika kondisi variabel A salah, maka pernyataan A-2 akan dikerjakan.
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 76
Gambar 5.12 Flowchart Nested If
Contoh 5.5
Seorang siswa dapat diterima menjadi Polisi jika memenuhi syarat sebagai
berikut :
• Umur minimum 19 Tahun dan Maksimum 25 Tahun
• Tinggi badan minimal 165 cm
• Nilai Test masuk minimal 70
Buatlah program menentukan seorang siswa “Lulus” atau “Gagal”
Algoritma
1. Mulai
2. Definisikan var umur, tinggi, nilai
3. Input umur, tinggi badan, dan nilai test
4. Cek syarat sebagai berikut :
 Cek umur (19 s/d 25 tahun)
Jika syarat umur benar maka
Cek tinggi badan (minimum 165 cm)
Jika syarat tinggi badan benar maka
Cek nilai ujian (minimum 70)
Jika syarat Nilai ujian benar
Maka cetak “Lulus
 Jika salah satu syarat tidak memenuhi maka Cetak “Gagal”
5. Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 77
Gambar 5.13 Flowchart Contoh 5.5
Program
program Nested_IF;
{File : CNTH55.pas }
{Oleh : Simon Patabang}
uses crt;
var u,t,n : integer;
begin
writeln;writeln;
clrscr;
write('Input Umur = ');
readln(u);
write('Input Tinggi Badan = ');
readln(t);
write('Input Nilai Test = ');
readln(n);
writeln;writeln;
write('Hasil test adalah : ');
If (u>=19) and (u<=25) then
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 78
Begin
if (t>=165) then
begin
if n>=70 then
write('LULUS')
else
write('GAGAL');
end
else
write('GAGAL');
end
else
write('GAGAL');
writeln;writeln;
writeln('Tekan sembarang tombol');
readln;
end.
Hasil Program
Gambar 5.14 Hasil Program Contoh 5.5
Operator Logika
Operator Logika, digunakan untuk membandingkan 2 buah kondisi. Operator logika
bekerja berdasarkan nilai logika true (benar) atau false (salah).
Operator Operasi Contoh
Not Tidak Benar (Bukan) If not (n=100) then …
And
Dan (keduanya benar
maka hasilnya benar)
if ((n<100) and (n>80)) then ….
Or
Atau (salah satu benar
maka hasilnya benar)
if ((n<100) or (n>80)) then ….
Operator Not
Operator Not digunakan untuk menyangkal nilai logika dari suatu pernyataan
kondiri.
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 79
Tabel Kebenaran Not
A Operasi Hasil
True Not A False
False Not A True
Operator And
Digunakan untuk membandingkan 2 buah kondisi logika. Hasilnya akan benar
bila keduanya benar. Hasilnya akan salah bila salah satu dari pernyataan salah.
Tabel Kebenaran AND
A B Operasi Hasil
True True A and B True
True False A and B False
False True A and B False
False False A and B False
Contoh :
Kondisi A And B Jika n = A B Operasi
Hasil Nilai
Logika
Hasil
((n<=100) And
(n>80))
90 T T A and B T Benar
70 T F A and B F Salah
50 T F A and B F Salah
30 T F A and B F Salah
Contoh 5.6
Buatlah program untuk menentukan nilai A, B, C, D, dan E berdasarkan
algoritma dan flowchart pada contoh 3.8.
Program
Program Nilai;
Uses crt;
Var n : real;
Begin
{clrscr;}
write('Input Nilai Angka = ');readln(n);
if (n>85) and (n<=100) then
writeln('Anda mendapat nilai A')
else
if (n >= 70) and (n <= 85) then
writeln('Anda mendapat Nilai B')
else
if (n>= 60) and ( n< 70) then
writeln('Anda mendapat Nilai C')
else
if (n>50) and (n<60) then
writeln('Anda mendapat Nilai D')
else
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 80
if (n>=0) and (n<=50) then
writeln('Anda mendapat Nilai E')
else
writeln('Input Anda Salah');
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
writeln;
End.
Hasil Program
Gambar 5.15 Hasil Program Contoh 5.6
Operator Or
Digunakan untuk membandingkan 2 buah kondisi logika. Hasilnya akan benar
bila salah satu bernilai benar atau keduanya benar. Hasilnya akan salah bila
keduanya salah.
Tabel Kebenaran OR
A B Operasi Hasil
T T A OR B T
F T A OR B T
T F A OR B T
F F A OR B F
Contoh :
Kondisi A or B
Jika n
=
A B Operasi
Hasil Nilai
Logika
Hasil
((n<=85) or 90 F T A OR B T Benar
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 81
(n>70)) 80 T T A OR B T Benar
60 T F A OR B T Benar
30 T F A OR B T Benar
Contoh 5.7.
Buatlah program untuk menjelaskan arti dari nilai huruf yang diinput sebagai
berikut :
Nilai A : artinya sangat baik
Nilai B dan C artinya cukup baik
Nilai D dan E artinya sangat buruk
Algoritma
 Mulai
 Deklarasikan variabel n dengan tipe karakter
 Input nilai huruf
 Cek nilai n:
Jika n=A atau n=a, maka cetak „Nilai Anda Sangat Baik‟
Jika n=B atau n=C, maka cetak „Nilai Anda Cukup Baik‟
Jika n=D atau n=E, maka cetak „Nilai Anda Sangat Buruk‟
 Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 82
Gambar 5.16 Flowchart Contoh 5.7
Program
Program Nilai;
Uses crt;
Var n : char;
Begin
write('Input Nilai Huruf = ');readln(n);
if (n='A') or (n ='a') then
writeln('Nilai Anda Sangat Baik')
else if (n ='B') or (n ='C') then
writeln('Nilai Anda Cukup Baik')
else if (n='D') or ( n='E') then
writeln('Nilai Anda Sangat Buruk')
else
writeln('Data input salah, ulangi!!!');
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
writeln;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 83
End.
Hasil Program
Gambar 5.17 Hasil Program Contoh 5.7
2. ALGORITMA SELEKSI DENGAN CASE – OF
Case-of adalah kontrol seleksi yang digunakan untuk memilih salah satu pilihan
dari daftar pilihan yang ada. Dengan Case-of, kita tidak perlu membuat beberapa
kondisi seperti pada kontrol If ... Then .... Else. Case-of hanya memeriksa satu
variabel kontrol, kemudian memilih salah satu pilihan dari daftar pilihan yang
nilainya sama dengan nilai variabel kontrol. Daftar pilihan dalam Case-of selalu
diakhiri dengan kata kunci end; (end titik koma) sebagai penutup dari daftar pilihan
(Case-of-end)
Bentuk Perintah:
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 84
Gambar 5.18 Flowchart Algoritma Case-of
Catatan Penting!!! :
 Case...Of tidak menggunakan BEGIN tetapi mengunakan END ;
 Variabel kontrol hanya dapat bertipe Integer atau Char.
 Daftar Data Pilihan dapat berupa sebuah konstanta, atau range dari konstanta
yang bertipe Integer atau Char.
Contoh Daftar Data Pilihan tipe integer:
2 : Pilihan dengan satu bilangan bulat
1,3,5 : Pilihan berupa daftar bilangan tertentu
1..5 : Pilihan berupa range bilangan bulat 1 s/d 5
Contoh Daftar Data Pilihan tipe Char (karakter):
‟A‟ : Pilihan berupa satu huruf, mis A
‟C‟,‟F‟ : Pilihan berupa daftar huruf tertentu, mis C, F
‟A‟..‟D‟ : Pilihan berupa range nilai huruf, mis A s/d D
‟ * ‟ : Pilihan berupa simbol karakter , mis *
Catatan Penting!!!
 Data tipe karakter harus diapit oleh tanda petik satu.
 Nilai range hanya menggunakan 2 buah titik diantara nilai awal dan akhir.
Contoh 5.8
Buatlah program untuk menghitung Luas, Volume, dan Keliling sebuah Balok
dengan tampilan Daftar Pilihan sebagai berikut :
Menu Program
1. Hitung Luas Balok
2. Hitung Volume Balok
3. Hitung Keliling Balok
4. Keluar
Pilihan Anda (1/2/3/4)
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 85
Jika anda menginput data panjang, lebar, dan tinggi balok, maka program akan
menampilkan Daftar Pilihan seperti di atas. Jika anda menjawab Pilihan Anda
dengan :
1 artinya program akan menghitung Luas Balok
2 artinya program akan menghitung Volume Balok
3 artinya program akan menghitung Keliling Balok
4 artinya anda keluar dari program.
Algoritma
 Mulai
 Deklarasikan variabel p,l,t, v,ls,k, vk (variabel kontrol)
 Input nilai panjang, lebar, dan tinggi balok
 Tampilkan menu Pilihan
 Input nilai variabel kontrol, vk
 Cek nilai variabel kontrol
Jika 1, maka kerjakan pilihan-1
Jika 2, maka kerjakan pilihan-2
Jika 3, maka kerjakan pilihan-3
Jika 4, maka keluar dari program
 Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 86
Gambar 5.19 Flowchart Contoh 5.8
Program
Program Menu_Pilihan;
Uses crt;
Var p,l,t,v,ls,k : real;
vk : char;
Begin
{ clrscr;}
write('Input Panjang Balok = ');readln(p);
write('Input Lebar Balok = ');readln(l);
write('Input Tinggi Balok = ');readln(t);
writeln; writeln;
writeln(' Menu Program ');
writeln('====================');
writeln('1.Hitung Luas Balok');
writeln('2.Hitung Volume Balok');
writeln('3.Hitung Keliling Balok');
writeln('4.Keluar');
write('Pilihan Anda (1/2/3/4)');readln(vk);
writeln; writeln;
case vk of
'1' : Begin
ls:=p*l;
writeln('Luas = ',ls:6:2);
End;
'2' : Begin
v:=p*l*t;
writeln('Volume = ',v:6:2);
End;
'3' : Begin
k:=2*(P+l+t);
writeln('Keliling = ',k:6:2);
End;
'4' : Begin
Exit; {Keluar dari program}
End;
End;
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
writeln;
End.
Hasil Program
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 87
Gambar 5.20 Hasil Program Contoh 5.8
Contoh 5.9
Buatlah program untuk mencetak keterangan Nilai Huruf sebagai berikut :
A = Sangat Baik
B = Baik
C = Cukup
D = Kurang
E = Gagal
Algoritma
 Mulai
 Deklarasikan variabel nilai dan ket
 Input nilai
 Cek variabel nilai
 Jika nilai=A, kerjakan pernyataan pada pilihan A
 Jika nilai=B, kerjakan pernyataan pada pilihan B
 Jika nilai=C, kerjakan pernyataan pada pilihan C
 Jika nilai=D, kerjakan pernyataan pada pilihan D
 Jika nilai=E, kerjakan pernyataan pada pilihan E
 Cetak keterangan nilai
 Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 88
Gambar 5.21 Folwchart Contoh 5.9
Program
Program Contoh5.2;
uses crt;
Var
Nilai : Char;
Ket : String [12];
Begin
Write ('Masukkan Nilai Huruf (A/B/C/D/E) = ');
Readln(Nilai) ;
Case Nilai Of
'A' : Ket := ' Sangat Baik ' ;
'B' : Ket := ' Baik ' ;
'C' : Ket := ' Cukup ' ;
'D' : Ket := ' Kurang ' ;
'E' : Ket := ' Gagal ' ;
End;
Write (' Nilai Anda = ', Ket) ;
Readln ;
End.
Catatan
Pernyataan pada setiap pilihan (A,B,C,D, dan E) tidak perlu menggunakan blok
Begin-end karena hanya terdiri dari satu baris pernyataan.
Contoh 5.3
Buatlah program dengan menggunakan Case-of untuk menentukan nilai Huruf dan
keterangannya dengan aturan sebagai berikut :
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 89
0 <= N <= 50 mendapat Nilai E (Buruk)
50 < N < 60 mendapat Nilai D (Kurang)
60 <= N < 70 mendapat Nilai C (Cukup)
70 <= N <= 85 mendapat Nilai B (Baik)
85 < N <= 100 mendapat Nilai A (Sangat Baik)
Tampilan hasil keluaran adalah :
Nama : Amir
Nilai : A
Keterangan : Sangat Baik
Algoritma
 Mulai
 Deklarasikan variabel nilai angka n (integer), nilai huruf h (char), nama(string),
ket(string)
 Input nama dan nilai angka
 Cek nilai angka. Jika :
 0 .. 50 mendapat Nilai E (Buruk)
 51 ..59 mendapat Nilai D (Kurang)
 60 .. 69 mendapat Nilai C (Cukup)
 70.. 85 mendapat Nilai B (Baik)
 86 ..100 mendapat Nilai A (Sangat Baik)
 Cetak hasil keluaran
 Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 90
Gambar 5.21 Flowchart Contoh 5.3
Program
Program Nilai;
uses crt;
var n : integer;
h : char;
ket,nama : string[25];
Begin
{ clrscr;}
write('Nama : ');readln(nama);
write('Nilai angka : ');readln(n);
case n of
0..50 : Begin
h := 'E';
ket:= 'Buruk'
End;
51..59 : Begin
h := 'D';
ket:= 'Kurang'
End;
60..69 : Begin
h := 'C';
ket:= 'Cukup'
End;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 91
70..85 : Begin
h := 'B';
ket:= 'Baik'
End;
86..100:Begin
h := 'A';
ket:= 'Sangat Baik';
End;
end;
writeln;
writeln('Nama : ',nama);
writeln('Nilai : ',h);
writeln('Keterangan : ',ket);
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
end.
Hasil Program
Gambar 5.22 Hasil Program Contoh 5.3
Contoh 5.4
Buatlah program dengan menggunakan IF dan Case-of untuk menentukan Hadiah
(H) dari total belanja di Supermarket sebagai berikut :
1 Juta <=Total Belanja<=5 Juta : Televisi
700 ribu <=Total Belanja< 1 juta : Camera
500 ribu <=Total Belanja< 700 ribu : Printer
200 ribu <Total Belanja< 500 ribu : VCD Player
50 ribu <=Total Belanja<= 200 ribu : Baju Kaos
Data masukan adalah Total Belanja (TB). Tampilkan keterangan “Maaf anda
belum beruntung” jika tidak memenuhi syarat di atas.
Penyelesaian:
Algoritma
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 92
 Mulai
 Deklarasikan variabel TB, dan H
 Input data total belanja TB
 Cek nilai TB, Jika :
 1 Juta <=Total Belanja<=5 Juta : Televisi
 700 ribu <=Total Belanja< 1 juta : Kamera
 500 ribu <=Total Belanja< 700 ribu : Printer
 200 ribu <Total Belanja< 500 ribu : VCD Player
 50 ribu <=Total Belanja<= 200 ribu : Baju Kaos
 Cetak info hadiah :
 JIka Total Belanja< 1 juta atau Total Belanja>5 juta, maka tidak
mendapatkan hadiah
 Jika memenuhi salah satu pilihan di atas, maka mendapatkan hadiah
 Selesai
Flowchart
Gambar 5.23 Flowchart Contoh 5.4
Program
Program Nilai;
uses crt;
var tb : integer;
h : string[20];
Begin
clrscr;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 93
write('Jumlah Total Belanja (x1000) = ');readln(tb);
case tb of
50..200 : h := 'Baju Kaos';
201..499 : h := 'VCD Player';
500..699 : h := 'Printer';
700..999 : h := 'Kamera';
1000..5000:h := 'Televisi';
end;
if (tb<50) or (tb>5000) then
Begin
writeln;
writeln('Maaf, Anda tidak beruntung');
End
else
Begin
writeln;
writeln('Anda mendapatkan hadiah ',h);
End;
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
end.
Hasil Program
Gambar 5.24Hasil Program Contoh 5.4
Contoh 5.5
Buatlah program untuk menginput harga pembelian kebutuhan dapur pada sebuah
toko Makmur Jaya. Jika harga barang lebih dari Rp. 150.000,- maka akan
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 94
mendapatkan diskon 2%. Jika harga barang lebih dari Rp. 250.000,- maka akan
mendapatkan diskon 5%. Jika harga barang lebih dari Rp. 500.000,- maka akan
mendapatkan diskon 10%. Di luar ketentuan tersebut, tidak mendapatkan diskon.
Tampilkan informasi Harga Jual, Diskon, dan Harga Bayar, kemudian input Jumlah
uang pembeli dengan tampilan sbb:
Nama Barang : Rice Cooker
Harga : Rp. 500000
Diskon (5%) : Rp. 25000
Bayar : Rp. 475000
Jumlah Uang : 500000
Kemudian cetak Struk Belanja dengan bentuk sbb:
Nama Barang : Rice Cooker
Harga : Rp. 500000
Diskon (5%) : Rp. 25000
Bayar : Rp. 475000
Jumlah Uang : Rp. 500000
Kembalian : Rp. 25000
Penyelesaian
Algoritma
 Mulai
 Deklarasikan variabel harga, diskon, bayar
 Input Harga Barang, harga
 Cek harga. Jika :
 Harga > Rp. 150.000 maka hitung diskon = harga x 2%
 Harga > Rp. 250.000 maka hitung diskon = harga x 5%
 Harga > Rp. 500.000 maka hitung diskon = harga x 10%
 Tampilkan informasi harga pembayaran
 Input Jumlah uang pembayaran
 Cetak Struk Belanja
 Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 95
Gambar 5.25 Flowchart Contoh 5.5
Program
Program Belanja;
Uses crt;
Var harga,uang : real;
diskon,bayar,sisa : real;
nama_barang : string[20];
Begin
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 96
clrscr;
write('Nama Barang = ');readln(nama_barang);
write('Harga = ');readln(harga);
if (harga>500000) then diskon:=harga*0.1
else if (harga>250000) then diskon:=harga*0.05
else if (harga>150000) then diskon:=harga*0.02
else diskon:=0.0;
clrscr;
bayar := harga - diskon;
writeln('Nama Barang : ',nama_barang);
writeln('Harga : Rp.',harga:12:2);
writeln('Diskon : Rp.',diskon:12:2);
writeln('Bayar : Rp.',bayar:12:2);
writeln;
write('Jumlah Uang : Rp.');readln(uang);
sisa:=uang-bayar;
clrscr;
writeln('Struk Belanja Anda');
writeln('===================================');
writeln('Nama Barang : ',nama_barang);
writeln('Harga : Rp.',harga:12:2);
writeln('Diskon : Rp.',diskon:12:2);
writeln('Bayar : Rp.',bayar:12:2);
writeln('===================================');
writeln('Jumlah Uang : Rp.',uang:12:2);
writeln('Sisa Kembalian : Rp.',sisa:12:2);
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
writeln;
End.
Hasil Program
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 97
Gambar 5.26 Hasil Program Contoh 5.5
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 98
VI. ALGORITMA PERULANGAN
Algoritma perulangan atau loop adalah suatu proses yang mengerjakan
pernyataan yang sama secara berulang kali hingga memenuhi syarat batas yang
ditentukan. Perulangan pada umumnya digunakan untuk menyelesaian masalah
dengan metode atau rumus yang sama tetapi datanya selalu berubah-ubah.
Dengan menggunakan algoritam perulangan, maka penulisan kode program yang
panjang akan menjadi efisian dan semakin sederhana.
Dalam program Pascal, algoritma perulangan menggunakan 4 buah perintah
yaitu :
1. For-to-do
2. For-downto-do
3. While-do
4. Repeat-until
1. For-To-Do
For-To-Do adalah perintah perulangan yang digunakan untuk mengerjakan suatu
blok pernyataan secara berulang kali selama kondisi/syarat pada for-to-do bernilai
benar atau memenuhi syarat. Jika kondisi tidak memenuhi syarat, maka blok
pernyataan tidak akan dikerjakan dan program akan mengerjakan pernyataan
setelah kata kunci end dari blok pernyataan.
Bentuk Perintah :
Keterangan
i = variabel kontrol
n1 = nilai awal
n2 = nilai batas, dimana n1<n2
Nilai variabel kontrol i secara otomatis akan bertambah satu mulai dari i=n1 hingga
i=n2. Selama nilai benar, maka pernyataan-1 akan dikerjakan. Jika i bernilai salah
atau i>n2, maka pernyataan-2 akan dikerjakan. Variabel kontrol pada For-to-do
hanya dapat bertipe Integer.
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 99
Gambar 6.1. Flowchart For-To-Do
Misalnya :
n:=0;
for i:=1 to 5 do
Begin
n:=n + i;
End;
m:=n+5;
Perulangan di atas akan mengerjakan pernyataan-1 n = n + i sebanyak 5 kali
karena nilai i dalam for dimulai dari 1 hingga 5. Dalam tiap perulangan, nilai n akan
berubah hingga nilai n=5. Jika n> 5, maka perulangan selesai. Setelah selesai,
maka akan mengerjakan pernyataan-2, m = n + 5.
Hasil proses perulangan adalah sebagai berikut :
Perulangan
ke-i
n = n + i
Hasil
Nilai n
m = n+5
Hasil
Nilai m
1 n := 0 + 1 1
2 n := 1 + 2 3
3 n := 3 + 3 6
4 n := 6 + 4 10
5 n := 10 + 5 15
Selesai m:=15+5 20
Contoh 6.1
Buatlah program untuk mencetak angka 1 hingga n. Nilai n adalah data masukan.
Bentuk tampilan adalah 1 2 3 4 5 … n
Algoritma
1. Mulai
2. Deklarasikan variabel i dan n dengan tipe integer.
3. Input nilai n.
4. Buat perulangan mulai i=1 s/d i=n
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 100
5. Cetak nilai i
6. Ulangi langkah 4
7. Selesai
Flowchart
Gambar 6.2. Flowchart Contoh 6.1
Program :
Program CetakAngka;
{Nama File : CNTH61.prg}
{Oleh : Simon Patabang}
uses crt;
var i,n : integer;
Begin
clrscr;
write('Input nilai n = '); readln(n);
for i:=1 to n do
Begin
write(' ',i); {cetak spasi(jarak) dan nilai i}
End;
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
End.
Hasil Program
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 101
Gambar 6.3. Hasil Program Contoh 6.1
Contoh 6.2
Buatlah program untuk menjumlahkan angka 1 hingga n dengan mengembangkan
program pada contoh 6.1.
Penyelesaian
Proses penjumlahan angka mulai sari 1 hingga n dilakulan dalam loop dengan
pernyataan j := j + i. Setelah perulangan selesai, maka hasil penjumlahan j akan
dicetak.
Algoritma
1. Mulai
2. Deklarasikan variabel i,n, dan j dengan tipe integer.
3. Input nilai n.
4. Definisikan nilai awal jumlah data j = 0.
5. Buat perulangan mulai i=1 s/d i=n
6. Cetak nilai i
7. Hitung j = j + i
8. Ulangi langkah 4
9. Cetak jumlah j
10.Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 102
Gambar 6.4. Flowchart Contoh 6.2
Program
Program Jumlah_Angka;
{Nama File : CNTH62.prg}
{Oleh : Simon Patabang}
uses crt;
var i,n,j : integer;
Begin
clrscr;
j:=0;
write('Input nilai n = '); readln(n);
for i:=1 to n do
Begin
write(' ',i);
j:= j + i;
End;
writeln;
writeln('Jumlah Data = ',j);
writeln;
writeln('Tekan sembarang tombol untuk keluar');
readln;
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 103
End.
Hasil Program
Gambar 6. 5. Hasil Program Contoh 6.2
Contoh 6.3
Buatlah program untuk mencari dan mencetak bilangan Ganjil dari bilangan bulat
antara 1 hingga n. N adalah data masukan. Hitunglah Jumlah dari bilangan ganjil
tersebut.
Penyelesaian
Bilangan ganjil antara 1 hingga n diperoleh dengan cara membagi bilangan tersebut
dengan 2, kemudian ambil sisa pembagiannya. Gunakan perintah mod untuk
mencari sisa pembagian. Jika sisanya satu, maka bilangan tersebut adalah
bilangan ganjil. Jumlahkan bilangan ganjil tersebut dengan bilangan ganjil
sebelumnya.
Algoritma
1. Mulai
2. Deklarasikan variabel i, n, s,j
3. Buat perulangan mulai nilai i=1 hingga n
4. Bagi bilangan i dengan 2 dan ambil sisanya, s= I mod 2
5. Cek sisa nilai variabel s.
6. Jika s=1, maka cetak i
7. Jumlahkan bilangan ganjil, j = j + i
8. Ulangi langkah 3
9. Cetak Jumlah data j
10.Selesai
Flowchart
Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 104
Gambar 6.6. Flowchart Contoh 6.3
Program
Program Bilangan_Ganjil;
{Nama File : CNTH63.prg}
{Oleh : Simon Patabang}
uses crt;
var i,n,s,j : integer;
Begin
clrscr;
write('Input nilai n = '); readln(n);
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal
Dasar pemrograman pascal

More Related Content

What's hot

Persamaan garis lurus(Geometri Analitik Ruang)
Persamaan garis lurus(Geometri Analitik Ruang)Persamaan garis lurus(Geometri Analitik Ruang)
Persamaan garis lurus(Geometri Analitik Ruang)Dyas Arientiyya
 
PD orde2 Tak Homogen 2
PD orde2 Tak Homogen 2PD orde2 Tak Homogen 2
PD orde2 Tak Homogen 2unesa
 
Teorema multinomial dan prinsip sarang merpati
Teorema multinomial dan prinsip sarang merpatiTeorema multinomial dan prinsip sarang merpati
Teorema multinomial dan prinsip sarang merpatiArdika MathEdu
 
Contoh Soal UAN - Fungsi Komposisi Invers
Contoh Soal UAN - Fungsi Komposisi InversContoh Soal UAN - Fungsi Komposisi Invers
Contoh Soal UAN - Fungsi Komposisi InversNaufal Irsyad Arzada
 
Modul 2 keterbagian bilangan bulat
Modul 2   keterbagian bilangan bulatModul 2   keterbagian bilangan bulat
Modul 2 keterbagian bilangan bulatAcika Karunila
 
Homomorfisma grup
Homomorfisma grupHomomorfisma grup
Homomorfisma grupYadi Pura
 
Rpp matematika SMA (trigonometri)
Rpp matematika SMA (trigonometri)Rpp matematika SMA (trigonometri)
Rpp matematika SMA (trigonometri)Heriyanto Asep
 
Rangkuman materi Isometri
Rangkuman materi IsometriRangkuman materi Isometri
Rangkuman materi IsometriNia Matus
 
Vektor - Pertemuan 41- Aljabar Linear
Vektor - Pertemuan 41- Aljabar LinearVektor - Pertemuan 41- Aljabar Linear
Vektor - Pertemuan 41- Aljabar Linearahmad haidaroh
 
Bab 4.-integral-lipat-dua1 2
Bab 4.-integral-lipat-dua1 2Bab 4.-integral-lipat-dua1 2
Bab 4.-integral-lipat-dua1 2Dayga_Hatsu
 
Bahan ajar alin 2 rev 2014 pdf
Bahan ajar alin 2 rev 2014 pdfBahan ajar alin 2 rev 2014 pdf
Bahan ajar alin 2 rev 2014 pdfPawit Ngafani
 
Modul 4 kongruensi linier
Modul 4   kongruensi linierModul 4   kongruensi linier
Modul 4 kongruensi linierAcika Karunila
 
Analisis Vektor ( Bidang )
Analisis Vektor ( Bidang )Analisis Vektor ( Bidang )
Analisis Vektor ( Bidang )Phe Phe
 
Matematika Diskrit - 08 kombinatorial - 03
Matematika Diskrit - 08 kombinatorial - 03Matematika Diskrit - 08 kombinatorial - 03
Matematika Diskrit - 08 kombinatorial - 03KuliahKita
 

What's hot (20)

Persamaan garis lurus(Geometri Analitik Ruang)
Persamaan garis lurus(Geometri Analitik Ruang)Persamaan garis lurus(Geometri Analitik Ruang)
Persamaan garis lurus(Geometri Analitik Ruang)
 
Aturan rantai 2 variable
Aturan rantai 2 variableAturan rantai 2 variable
Aturan rantai 2 variable
 
deret kuasa
deret kuasaderet kuasa
deret kuasa
 
Struktur aljabar-2
Struktur aljabar-2Struktur aljabar-2
Struktur aljabar-2
 
PD orde2 Tak Homogen 2
PD orde2 Tak Homogen 2PD orde2 Tak Homogen 2
PD orde2 Tak Homogen 2
 
Teorema multinomial dan prinsip sarang merpati
Teorema multinomial dan prinsip sarang merpatiTeorema multinomial dan prinsip sarang merpati
Teorema multinomial dan prinsip sarang merpati
 
Contoh Soal UAN - Fungsi Komposisi Invers
Contoh Soal UAN - Fungsi Komposisi InversContoh Soal UAN - Fungsi Komposisi Invers
Contoh Soal UAN - Fungsi Komposisi Invers
 
BARISAN DAN DERET (RPP & LKPD)
BARISAN DAN DERET (RPP & LKPD)BARISAN DAN DERET (RPP & LKPD)
BARISAN DAN DERET (RPP & LKPD)
 
Modul 2 keterbagian bilangan bulat
Modul 2   keterbagian bilangan bulatModul 2   keterbagian bilangan bulat
Modul 2 keterbagian bilangan bulat
 
Homomorfisma grup
Homomorfisma grupHomomorfisma grup
Homomorfisma grup
 
Rpp matematika SMA (trigonometri)
Rpp matematika SMA (trigonometri)Rpp matematika SMA (trigonometri)
Rpp matematika SMA (trigonometri)
 
Rangkuman materi Isometri
Rangkuman materi IsometriRangkuman materi Isometri
Rangkuman materi Isometri
 
Vektor - Pertemuan 41- Aljabar Linear
Vektor - Pertemuan 41- Aljabar LinearVektor - Pertemuan 41- Aljabar Linear
Vektor - Pertemuan 41- Aljabar Linear
 
Bab 4.-integral-lipat-dua1 2
Bab 4.-integral-lipat-dua1 2Bab 4.-integral-lipat-dua1 2
Bab 4.-integral-lipat-dua1 2
 
ANALISIS REAL
ANALISIS REALANALISIS REAL
ANALISIS REAL
 
Bahan ajar alin 2 rev 2014 pdf
Bahan ajar alin 2 rev 2014 pdfBahan ajar alin 2 rev 2014 pdf
Bahan ajar alin 2 rev 2014 pdf
 
Modul 4 kongruensi linier
Modul 4   kongruensi linierModul 4   kongruensi linier
Modul 4 kongruensi linier
 
Analisis Vektor ( Bidang )
Analisis Vektor ( Bidang )Analisis Vektor ( Bidang )
Analisis Vektor ( Bidang )
 
Modul 2 pd linier orde n
Modul 2 pd linier orde nModul 2 pd linier orde n
Modul 2 pd linier orde n
 
Matematika Diskrit - 08 kombinatorial - 03
Matematika Diskrit - 08 kombinatorial - 03Matematika Diskrit - 08 kombinatorial - 03
Matematika Diskrit - 08 kombinatorial - 03
 

Similar to Dasar pemrograman pascal

Diktat penuntun praktikum fortran
Diktat penuntun praktikum fortranDiktat penuntun praktikum fortran
Diktat penuntun praktikum fortranradikaljakas
 
Algoritma & Pemrograman.pptx
Algoritma & Pemrograman.pptxAlgoritma & Pemrograman.pptx
Algoritma & Pemrograman.pptxRijalRipai1
 
Algoritma dan pemogrman.pptx
Algoritma dan pemogrman.pptxAlgoritma dan pemogrman.pptx
Algoritma dan pemogrman.pptxrince10
 
Pertemuan 1 algoritma
Pertemuan 1 algoritmaPertemuan 1 algoritma
Pertemuan 1 algoritmaBraga Rezpect
 
pemrograman dasar.pptx
pemrograman dasar.pptxpemrograman dasar.pptx
pemrograman dasar.pptxssuser98f5ad
 
Perkenalan Algoritma dan Pemrograman
Perkenalan Algoritma dan PemrogramanPerkenalan Algoritma dan Pemrograman
Perkenalan Algoritma dan Pemrogramanbrigidaarie
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANAziz Moeslim
 
Module algoritma
Module algoritma Module algoritma
Module algoritma Rony BolaNk
 
Algoritma pemrograman 01
Algoritma pemrograman 01Algoritma pemrograman 01
Algoritma pemrograman 01Indra Panggalo
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.pptJumain dj
 
2presentasi-sistem-komputer informatika.ppt
2presentasi-sistem-komputer informatika.ppt2presentasi-sistem-komputer informatika.ppt
2presentasi-sistem-komputer informatika.pptHanyRaviAriyanto
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.pptadhearie
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.pptssuserd5a41f1
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.pptCellyPatrecia
 

Similar to Dasar pemrograman pascal (20)

Presentasi1
Presentasi1Presentasi1
Presentasi1
 
Diktat penuntun praktikum fortran
Diktat penuntun praktikum fortranDiktat penuntun praktikum fortran
Diktat penuntun praktikum fortran
 
Algoritma & Pemrograman.pptx
Algoritma & Pemrograman.pptxAlgoritma & Pemrograman.pptx
Algoritma & Pemrograman.pptx
 
Algoritam1
Algoritam1Algoritam1
Algoritam1
 
Algoritma dan pemogrman.pptx
Algoritma dan pemogrman.pptxAlgoritma dan pemogrman.pptx
Algoritma dan pemogrman.pptx
 
Pertemuan 1 algoritma
Pertemuan 1 algoritmaPertemuan 1 algoritma
Pertemuan 1 algoritma
 
pemrograman dasar.pptx
pemrograman dasar.pptxpemrograman dasar.pptx
pemrograman dasar.pptx
 
Perkenalan Algoritma dan Pemrograman
Perkenalan Algoritma dan PemrogramanPerkenalan Algoritma dan Pemrograman
Perkenalan Algoritma dan Pemrograman
 
Berkas
Berkas Berkas
Berkas
 
Makalah struktur komputer mirna
Makalah struktur komputer mirnaMakalah struktur komputer mirna
Makalah struktur komputer mirna
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
 
Module algoritma
Module algoritma Module algoritma
Module algoritma
 
Algoritma pemrograman 01
Algoritma pemrograman 01Algoritma pemrograman 01
Algoritma pemrograman 01
 
Algoritma Pemrogaman
Algoritma PemrogamanAlgoritma Pemrogaman
Algoritma Pemrogaman
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt
 
2presentasi-sistem-komputer informatika.ppt
2presentasi-sistem-komputer informatika.ppt2presentasi-sistem-komputer informatika.ppt
2presentasi-sistem-komputer informatika.ppt
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt
 
2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt2presentasi-sistem-komputer.ppt
2presentasi-sistem-komputer.ppt
 

More from Simon Patabang

6 DAYA PADA RANGKAIAN RLC.pdf
6 DAYA PADA RANGKAIAN RLC.pdf6 DAYA PADA RANGKAIAN RLC.pdf
6 DAYA PADA RANGKAIAN RLC.pdfSimon Patabang
 
ANALISIS PENCARIAN RUTE TERPENDEK PADA JARINGAN KOMPUTER DENGAN MENGGUNAKAN ...
ANALISIS  PENCARIAN RUTE TERPENDEK PADA JARINGAN KOMPUTER DENGAN MENGGUNAKAN ...ANALISIS  PENCARIAN RUTE TERPENDEK PADA JARINGAN KOMPUTER DENGAN MENGGUNAKAN ...
ANALISIS PENCARIAN RUTE TERPENDEK PADA JARINGAN KOMPUTER DENGAN MENGGUNAKAN ...Simon Patabang
 
Analisis penggunaan swer untuk mengatasi masalah jatuh
Analisis penggunaan swer untuk mengatasi masalah jatuhAnalisis penggunaan swer untuk mengatasi masalah jatuh
Analisis penggunaan swer untuk mengatasi masalah jatuhSimon Patabang
 
Analisis pemanfaatan kapasitor daya untuk menambah kemampuan
Analisis pemanfaatan kapasitor daya untuk menambah kemampuanAnalisis pemanfaatan kapasitor daya untuk menambah kemampuan
Analisis pemanfaatan kapasitor daya untuk menambah kemampuanSimon Patabang
 
Lap Akhir IbM Iptek Bagi Masyarakat
Lap Akhir IbM Iptek Bagi MasyarakatLap Akhir IbM Iptek Bagi Masyarakat
Lap Akhir IbM Iptek Bagi MasyarakatSimon Patabang
 
Jurnal Pengabdian 2017 2018
Jurnal Pengabdian 2017 2018Jurnal Pengabdian 2017 2018
Jurnal Pengabdian 2017 2018Simon Patabang
 
Jurnal Pengabdian Tahun 2018 2019
Jurnal  Pengabdian Tahun 2018 2019Jurnal  Pengabdian Tahun 2018 2019
Jurnal Pengabdian Tahun 2018 2019Simon Patabang
 
Modulpraktikum dasar instalasi listrik
Modulpraktikum dasar instalasi listrikModulpraktikum dasar instalasi listrik
Modulpraktikum dasar instalasi listrikSimon Patabang
 
11 perencanaan instalasi listrik rumah bertingkat
11 perencanaan instalasi listrik rumah bertingkat11 perencanaan instalasi listrik rumah bertingkat
11 perencanaan instalasi listrik rumah bertingkatSimon Patabang
 
9 perencanaan instalasi listrik 1 phasa
9 perencanaan instalasi listrik 1 phasa 9 perencanaan instalasi listrik 1 phasa
9 perencanaan instalasi listrik 1 phasa Simon Patabang
 
13 jembatan arus bolak – balik
13 jembatan arus bolak – balik13 jembatan arus bolak – balik
13 jembatan arus bolak – balikSimon Patabang
 
12 rangkaian rlc pararel
12 rangkaian rlc  pararel12 rangkaian rlc  pararel
12 rangkaian rlc pararelSimon Patabang
 
6 rangkaian arus bolak balik
6 rangkaian arus bolak balik6 rangkaian arus bolak balik
6 rangkaian arus bolak balikSimon Patabang
 
5 teorema rangkaian listrik
5 teorema rangkaian listrik5 teorema rangkaian listrik
5 teorema rangkaian listrikSimon Patabang
 
4 metoda analisis rangkaian elektronika
4 metoda analisis rangkaian elektronika4 metoda analisis rangkaian elektronika
4 metoda analisis rangkaian elektronikaSimon Patabang
 
2. hukum dasar rangkaian elektronika
2. hukum dasar rangkaian elektronika2. hukum dasar rangkaian elektronika
2. hukum dasar rangkaian elektronikaSimon Patabang
 

More from Simon Patabang (20)

6 DAYA PADA RANGKAIAN RLC.pdf
6 DAYA PADA RANGKAIAN RLC.pdf6 DAYA PADA RANGKAIAN RLC.pdf
6 DAYA PADA RANGKAIAN RLC.pdf
 
ANALISIS PENCARIAN RUTE TERPENDEK PADA JARINGAN KOMPUTER DENGAN MENGGUNAKAN ...
ANALISIS  PENCARIAN RUTE TERPENDEK PADA JARINGAN KOMPUTER DENGAN MENGGUNAKAN ...ANALISIS  PENCARIAN RUTE TERPENDEK PADA JARINGAN KOMPUTER DENGAN MENGGUNAKAN ...
ANALISIS PENCARIAN RUTE TERPENDEK PADA JARINGAN KOMPUTER DENGAN MENGGUNAKAN ...
 
Analisis penggunaan swer untuk mengatasi masalah jatuh
Analisis penggunaan swer untuk mengatasi masalah jatuhAnalisis penggunaan swer untuk mengatasi masalah jatuh
Analisis penggunaan swer untuk mengatasi masalah jatuh
 
Analisis pemanfaatan kapasitor daya untuk menambah kemampuan
Analisis pemanfaatan kapasitor daya untuk menambah kemampuanAnalisis pemanfaatan kapasitor daya untuk menambah kemampuan
Analisis pemanfaatan kapasitor daya untuk menambah kemampuan
 
Lap Akhir IbM Iptek Bagi Masyarakat
Lap Akhir IbM Iptek Bagi MasyarakatLap Akhir IbM Iptek Bagi Masyarakat
Lap Akhir IbM Iptek Bagi Masyarakat
 
Jurnal Pengabdian 2017 2018
Jurnal Pengabdian 2017 2018Jurnal Pengabdian 2017 2018
Jurnal Pengabdian 2017 2018
 
Jurnal Pengabdian Tahun 2018 2019
Jurnal  Pengabdian Tahun 2018 2019Jurnal  Pengabdian Tahun 2018 2019
Jurnal Pengabdian Tahun 2018 2019
 
Modulpraktikum dasar instalasi listrik
Modulpraktikum dasar instalasi listrikModulpraktikum dasar instalasi listrik
Modulpraktikum dasar instalasi listrik
 
11 perencanaan instalasi listrik rumah bertingkat
11 perencanaan instalasi listrik rumah bertingkat11 perencanaan instalasi listrik rumah bertingkat
11 perencanaan instalasi listrik rumah bertingkat
 
9 perencanaan instalasi listrik 1 phasa
9 perencanaan instalasi listrik 1 phasa 9 perencanaan instalasi listrik 1 phasa
9 perencanaan instalasi listrik 1 phasa
 
10 analisis komponen
10 analisis komponen10 analisis komponen
10 analisis komponen
 
13 jembatan arus bolak – balik
13 jembatan arus bolak – balik13 jembatan arus bolak – balik
13 jembatan arus bolak – balik
 
12 rangkaian rlc pararel
12 rangkaian rlc  pararel12 rangkaian rlc  pararel
12 rangkaian rlc pararel
 
8 rangkaian rlc seri
8 rangkaian rlc seri8 rangkaian rlc seri
8 rangkaian rlc seri
 
8 beban rlc
8 beban rlc8 beban rlc
8 beban rlc
 
7 jenis beban ac
7 jenis beban ac7 jenis beban ac
7 jenis beban ac
 
6 rangkaian arus bolak balik
6 rangkaian arus bolak balik6 rangkaian arus bolak balik
6 rangkaian arus bolak balik
 
5 teorema rangkaian listrik
5 teorema rangkaian listrik5 teorema rangkaian listrik
5 teorema rangkaian listrik
 
4 metoda analisis rangkaian elektronika
4 metoda analisis rangkaian elektronika4 metoda analisis rangkaian elektronika
4 metoda analisis rangkaian elektronika
 
2. hukum dasar rangkaian elektronika
2. hukum dasar rangkaian elektronika2. hukum dasar rangkaian elektronika
2. hukum dasar rangkaian elektronika
 

Recently uploaded

Aksi Nyata PERENCANAAN BERBASIS DATA.pptx
Aksi Nyata PERENCANAAN BERBASIS DATA.pptxAksi Nyata PERENCANAAN BERBASIS DATA.pptx
Aksi Nyata PERENCANAAN BERBASIS DATA.pptxdonny761155
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfNURAFIFAHBINTIJAMALU
 
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuAdab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuKarticha
 
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptxUNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptxFranxisca Kurniawati
 
Diagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiDiagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiOviLarassaty1
 
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlinePPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlineMMario4
 
PPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptPPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptBennyKurniawan42
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxLeniMawarti1
 
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfPelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfEmeldaSpd
 
Estetika Humanisme Diskusi Video Sesi Ke-1.pdf
Estetika Humanisme Diskusi Video Sesi Ke-1.pdfEstetika Humanisme Diskusi Video Sesi Ke-1.pdf
Estetika Humanisme Diskusi Video Sesi Ke-1.pdfHendroGunawan8
 
materi pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptmateri pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptTaufikFadhilah
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxFardanassegaf
 
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaMateri Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaSABDA
 
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimNodd Nittong
 
Silabus Mata Pelajaran Biologi SMA Kelas X.doc
Silabus Mata Pelajaran Biologi SMA Kelas X.docSilabus Mata Pelajaran Biologi SMA Kelas X.doc
Silabus Mata Pelajaran Biologi SMA Kelas X.docNurulAiniFirdasari1
 
RPP PERBAIKAN UNTUK SIMULASI (Recovered).docx
RPP PERBAIKAN UNTUK SIMULASI (Recovered).docxRPP PERBAIKAN UNTUK SIMULASI (Recovered).docx
RPP PERBAIKAN UNTUK SIMULASI (Recovered).docxSyifaDzikron
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfWahyudinST
 
Modul Ajar Bahasa Indonesia Kelas 1 Fase A - [abdiera.com]
Modul Ajar Bahasa Indonesia Kelas 1 Fase A - [abdiera.com]Modul Ajar Bahasa Indonesia Kelas 1 Fase A - [abdiera.com]
Modul Ajar Bahasa Indonesia Kelas 1 Fase A - [abdiera.com]Abdiera
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxg66527130
 
Panduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfPanduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfandriasyulianto57
 

Recently uploaded (20)

Aksi Nyata PERENCANAAN BERBASIS DATA.pptx
Aksi Nyata PERENCANAAN BERBASIS DATA.pptxAksi Nyata PERENCANAAN BERBASIS DATA.pptx
Aksi Nyata PERENCANAAN BERBASIS DATA.pptx
 
slide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdfslide presentation bab 2 sain form 2.pdf
slide presentation bab 2 sain form 2.pdf
 
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamuAdab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
Adab bjjkkkkkkk gggggggghhhhywq dede dulu ya itu yg kamu
 
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptxUNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
UNSUR - UNSUR, LUAS, KELILING LINGKARAN.pptx
 
Diagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran BerdifferensiasiDiagram Fryer Pembelajaran Berdifferensiasi
Diagram Fryer Pembelajaran Berdifferensiasi
 
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi OnlinePPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
PPT PERLINDUNGAN KONSUMEN .Pengertian Transaksi Online
 
PPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.pptPPT uji anova keterangan dan contoh soal.ppt
PPT uji anova keterangan dan contoh soal.ppt
 
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptxKeberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
Keberagaman-Peserta-Didik-dalam-Psikologi-Pendidikan.pptx
 
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdfPelatihan Asesor 2024_KEBIJAKAN DAN  MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
Pelatihan Asesor 2024_KEBIJAKAN DAN MEKANISME AKREDITASI PAUD TAHUN 2024 .pdf
 
Estetika Humanisme Diskusi Video Sesi Ke-1.pdf
Estetika Humanisme Diskusi Video Sesi Ke-1.pdfEstetika Humanisme Diskusi Video Sesi Ke-1.pdf
Estetika Humanisme Diskusi Video Sesi Ke-1.pdf
 
materi pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.pptmateri pembelajaran tentang INTERNET.ppt
materi pembelajaran tentang INTERNET.ppt
 
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptxSBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
SBM_Kelompok-7_Alat dan Media Pembelajaran.pptx
 
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 TesalonikaMateri Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
Materi Kelas Online Ministry Learning Center - Bedah Kitab 1 Tesalonika
 
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin LimAsi Eksklusif Dong - buku untuk para ayah - Robin Lim
Asi Eksklusif Dong - buku untuk para ayah - Robin Lim
 
Silabus Mata Pelajaran Biologi SMA Kelas X.doc
Silabus Mata Pelajaran Biologi SMA Kelas X.docSilabus Mata Pelajaran Biologi SMA Kelas X.doc
Silabus Mata Pelajaran Biologi SMA Kelas X.doc
 
RPP PERBAIKAN UNTUK SIMULASI (Recovered).docx
RPP PERBAIKAN UNTUK SIMULASI (Recovered).docxRPP PERBAIKAN UNTUK SIMULASI (Recovered).docx
RPP PERBAIKAN UNTUK SIMULASI (Recovered).docx
 
Buku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdfBuku Saku Layanan Haji Ramah Lansia 2.pdf
Buku Saku Layanan Haji Ramah Lansia 2.pdf
 
Modul Ajar Bahasa Indonesia Kelas 1 Fase A - [abdiera.com]
Modul Ajar Bahasa Indonesia Kelas 1 Fase A - [abdiera.com]Modul Ajar Bahasa Indonesia Kelas 1 Fase A - [abdiera.com]
Modul Ajar Bahasa Indonesia Kelas 1 Fase A - [abdiera.com]
 
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptxSKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
SKPM Kualiti @ Sekolah 23 Feb 22222023.pptx
 
Panduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdfPanduan Mengisi Dokumen Tindak Lanjut.pdf
Panduan Mengisi Dokumen Tindak Lanjut.pdf
 

Dasar pemrograman pascal

  • 1. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 1 DIKTAT MATA KULIAH DASAR PEMROGRAMAN KOMPUTER BAHASA PEMROGRAMAN PASCAL Penyusun: Simon Patabang Dosen Universitas Atma Jaya Makassar PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS ATMA JAYA MAKASSAR
  • 2. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 2
  • 3. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 3 Kata Pengantar Bahasa pemrograman sudah semakin diminati seiring dengan perkembangan masyarakat yang semakin mengerti tentang pentingnya teknologi informasi. Dengan menguasai konsep dan logika dasar-dasar bahasa pemrograman maka semakin muda untuk mempelajari bahasa pemrograman yang lain. Buku ini ditujukan bagi para siswa SMU dan mahasiswa ingin belajar dasar bahasa pemrograman khususnya bagi yang punya minat untuk mempelajari bahasa pemrograman. Diharapkan para pembaca dapat memperoleh materi tambahan untuk mendalami dasar pemrograman dengan baik. Bahasa program Pascal dapat diperoleh dengan gratis dengan mendownload dari Internet. Bahasa Pascal merupakan bahasa pemrograman yang paling mudah dipelajari karena bersifat terstruktur. Karena itu sangat banyak digunakan sebagai konsep dasar pemrograman di tingkat SMU dan Perguruan Tinggi. Bahasa pemrograman Pascal juga sudah dijadikan materi pelajaran di beberapa SMU dan dalam lomba Olimpiade Matematika dan komputer tingkat SMU. Selain itu, bahasa pemrograman juga menjadi materi kuliah di beberapa fakultas di perguruan tinggi, seperti fakultas Teknik, MIPA, Informatika, dan ada sebagian jurusan di fakultas Ekonomi. Dengan menguasai konsep dan logika pemrograman yang baik, maka akan dapat dengan mudah mempelajari bahasa pemrograman yang berbasis objek seperti Bahasa C, Java, dan bahasa pemrograman berbasis visual seperti Delphi, Visual Basic, dll. Untuk meningkatkan mutu dari materi buku ini, sangat diharapkan adanya saran dan masukan yang bersifat positip dari para pembaca demi untuk pengembangan materi dalam buku ini.
  • 4. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 4 DAFTAR ISI BAB I : Pengenalan Komputer BAB II : Algoritma BAB III : Flowchart BAB IV : Dasar Pemrograman BAB V : Tipe Data Standart BAB VI : Algoritma Penyelesaian Matematika BAB VII : Algoritma Seleksi Data BAB VIII : Algoritma Perulangan BAB IX : Algoritma Sorting Data BAB X : Array/ Larik Tipe Data dan Statement I/O Operator Aritmatika
  • 5. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 5 I. Pengenalan Komputer Apakah itu Komputer? Komputer adalah alat bantu yang berfungsi untuk mengolah data berupa angka dan teks menjadi sebuah informasi. Komponen Komputer Perangkat Keras (Hardware) Adalah komponen elektronik dan fisik yang membentuk sebuah komputer. Perangkat lunak (Software) Adalah komponen komputer berupa program yang berfungsi untuk mengendalikan system kerja dari sebuah komputer, memproses data, dan juga merancang program aplikasi. Contoh  Perangkat Keras 1. Keyboard 2. Monitor 3. Mouse 4. Speaker 5. System Unit 6. Microphone  Perangkat Lunak 1. Program Sistem Komputer 2. Program Aplikasi Komputer 3. Bahasa Pemrograman CARA KERJA SISTEM KOMPUTER Gambar 1.1. Sistem Komputer Bagian Input  Adalah komponen yang berfungsi sebagai alat masukan data atau perintah ke dalam komputer.  Misalnya : 1. Keyboard 2. Mouse 3. Scanner Bagian PROSES  Adalah komponen yang berfungsi untuk mengolah data yang diterima dari input.
  • 6. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 6  Bagian Proses data ini disebut Central Processing Unit (CPU).  Komponen utama dari CPU terdiri dari : 1. Prosesor 2. Memory Prosesor terdiri dari : 1. Control Unit (CU) Bagian yang mengatur atau mengontrol semua lalu lintas data dan perhitungan yang dilakukan selama komputer bekerja. 2. Arithmetic And Logic Unit (ALU) Tugas utama dari ALU adalah melakukan semua perhitungan aritmatika yang terjadi sesuai dengan instruksi program. Memory  Fungsi memory adalah sebagai tempat menyimpan data, program, perintah- perintah program yang digunakan pada saat proses berlangsung.  Menurut letakknya, memori dibagi 2 yaitu : 1. Memory Internal 2. Memory external. 1. Memory Internal Adalah memori yang letaknya berada di dalam system komputer. 1. ROM (Read Only Memory) 2. Chace Memory 3. RAM (Random Access Memory) ROM, adalah memori yang datanya hanya dapat dibaca. Data dalam ROM sudah diisi oleh pabrik pembuatnya. Misalnya sistem waktu dan konfigurasi komputer. Chace Memory, merupakan media penyimpanan dengan berkecepatan tinggi untuk membantu prosesor mengirim dan menerima data dari memori. Memori RAM, semua data dan program yang dimasukkan lewat alat input akan disimpan terlebih dahulu di RAM (Random Access Memory). RAM merupakan memory yang dapat di akses yaitu dapat diisi, diubah, dan diambil datanya. Data dalam RAM dan akan hilang jika komputer mati (volatile). Fungsi Cache Memory  Mempercepat Akses data pada komputer  Meringankan kerja prosessor  Menjembatani perbedaan kecepatan antara Prosesor dan memory utama.  Mempercepat kinerja memory Proses Pengolahan Data
  • 7. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 7 Gambar 1.2. Proses Komputer Memori Eksternal  External Memory adalah memori yang bersifat nonvolatile dimana data yang disimpan di dalamnya tidak akan hilang ketika komputer mati. Dikenal juga dengan nama secondary memory yang berfungsi sebagai media storage dari program dan data untuk jangka waktu yang panjang,.  Contoh : floppy disk(disket), hard disk,dan CD-ROM, DVD, Flash Disk. Bagian Output Peralatan yang berfungsi untuk menampilkan hasil dari pengolahan data. Peralatan Output :  Monitor, Printer dan Speaker, LCD (Liquid Cristal Display ) Bentuk output hasil pengolahan data berupa Teks, Gambar, dan Suara
  • 8. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 8 II. Konsep Pemrograman 1. Algoritma Algoritma adalah langkah-langkah proses yang disusun secara logis dan berurutan untuk menyelesaikan suatu masalah dengan tepat. Algoritma digunakan sebagai panduan langkah demi langkah untuk menuliskan program. Jika algoritma yang dibuat salah, maka penulisan programnya akan salah juga. Karena itu, algoritma sangat penting untuk dipelajari dan dikuasai dengan baik. Jika sudah terbiasa menggunakan algoritma untuk menulis program, maka semakin lama, kita dapat dengan mudah menulis progam, karena konsep algoritma sudah dikuasai dengan baik. Kriteria algoritma adalah sebagai berikut :  Setiap langkah harus jelas dan pasti  Jumlah langkah harus berhingga atau harus selesai.  Ditulis dengan kalimat yang mudah dipahami sehingga tidak menimbulkan arti ganda.  Tuliskan dengan logika yang benar dan terstruktur  Semua operasi atau proses disebutkan dengan jelas. Penyajian Algoritma : Algoritma dapat disajikan dengan dua cara :  Secara Tulisan, yaitu menuliskan deskripsi urutan langkah-langkah penyelesaian masalah  Flowchart, yaitu menggambarkan algoritma dengan simbol-simbol menurut urutan proses Contoh 2.1: Buatlah Algoritma untuk mencari nilai y dari persamaan y = 6a + 2b Penyelesaian : Untuk mendapatkan nilai y, maka nilai a dan b harus diketahui lebih dahulu. Nilai a dan b diperoleh dengan menginput ke dalam program melalui keyboard. Kemudian a dikalikan dengan 6 dan b dikalikan dengan 2. Hasil perkaliannya kemudian dijumlahkan untuk mendapatkan nilai y. Algoritma :  Mulai  Deklarasikan variabel y, a, dan b  Input Nilai a dan b  Hitung nilai y = 6a + 2b  Cetak nilai y  Selesai
  • 9. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 9 Contoh 2.2: Buatlah algoritma untuk menghitung nilai y dari persamaan y = 4x3 + 8x – 2 Penyelesaian : Untuk mendapatkan nilai y, maka kita dapat menyelesaikan secara bertahap dengan menghitung 4x3 dan 8x secara terpisah. Untuk itu diperlukan variabel tambahan misalnya a dan b untuk menyimpan hasil perhitungan tersebut, dimana a menyimpan hasil perhitungan 4x3 dan b menyimpan hasil perhitungan 8x. Algoritmanya adalah :  Mulai  Definisikan variabel y, x, a,b  Input nilai x  Hitung nilai a=4x3  Hitung nilai b=8x  Hitung nilai y=a+b-2  Cetak nilai y  Selesai Contoh 2.3 : Buatlah algoritma untuk mengkonversi bilangan dalam satuan detik menjadi satu satuan jam. Misalnya 30 dikonversi menjadi 0:0:30, 70 menjadi 0:1.10, 3665 menjadi 1:1:5. Penyelesaian : Yang harus diperhatikan adalah konversi sbb : 60 detik = 1 menit 60 menit = 1 jam 1 jam = 60 x 60 detik = 3600 detik Konversi satuan Detik (d) menjadi Jam (j) 1. Hitung satuan jam dari nilai d j = d div 3600, hasilnya adalah satuan jam 2. Hitung sisa detik s = d mod 3600, hasilnya adalah sisa satuan detik 3. Hitung satuan menit dari nilai s m = s div 60, hasilnya adalah satuan menit 4. Hitung sisa detik dari nilai s d = s mod 60 Algoritma  Mulai  Deklarasikan variabel d,m,j,s  Input d (bilangan satuan detik)
  • 10. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 10  Hitung j = d div 3600  Hitung s = d mod 3600  Hitung m = s div 60  Hitung d = s mod 60  Cetak hasilnya J:M:D  Tekan sembarang tombol  Selesai 2. Flowchart Flowchart adalah skema diagram alir dari algoritma yang disusun dalam bentuk bagan secara berurutan. Jadi flowchart menggambarkan urutan penyelesaian masalah. Flowchart digambarkan dengan menggunakan simbol-simbol khusus seperti input, proses, output, dan lain-lain. Tabel Simbol-Simbol Flowchart Digunakan untuk simbol awal dan akhir flowchart Digunakan untuk menyatakan proses masukan dan keluaran Digunakan untuk menyatakan proses perhitungan Digunakan untuk menyatakan proses seleksi atau pengambilan keputusan Digunakan untuk menyatakan proses persiapan program Digunakan untuk menyatakan arah aliran proses Digunakan untuk menyatakan sambungan flowchart pada halaman yang sama Digunakan untuk menyatakan sambungan flowchart pada halaman yang berbeda Digunakan untuk menyatakan output akan ditampilkan lewat monitor Contoh 2.4: Buatlah flowchart dari algoritma pada Contoh 2.1
  • 11. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 11 Gambar 2.2. Flowchart Contoh 2.1 Contoh 2.5 Buatlah flowchart dari algoritma pada Contoh 2.2 Gambar 2.3. Flowchart Contoh 2.2 Contoh 2.6 Buatlah flowchart dari algoritma pada Contoh 2.3
  • 12. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 12 Gambar 2.4. Flowchart Contoh 2.3 Contoh 2.7 Buatlah flowchart untuk menghitung nilai y dari persamaan y = 2x + 6 Penyelesaian : Untuk menggambarkan flowchart, terlebih dahulu kita menuliskan algoritma untuk menghitung nilai y dari persamaan y = x2 + √x. Dalam persamaan terdapat 2 buah variabel yaitu x dan y, dimana nilai variabel x diinput dari keyboard dan nilai y diperoleh dari hasil perhitungan x2 + √x. Algoritmanya adalah :  Mulai  Definisikan variabel y dan x  input nilai x  Hitung nilai y= x2 + √x  Tuliskan hasilnya y  Selesai Flowchart:
  • 13. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 13 Gambar 2.5. Flowchart Contoh 2.7 Contoh 2.8 Buatlah flowchart untuk menghitung luas persegipanjang dengan rumus L = p.lb dalam satuan m. Algoritma :  Mulai  Definisikan variabel L, p, lb dengan tipe real  Tentukan Nilai p, lb sebagai konstanta dengan nilai p=10 m, lb=5 m  Hitung nilai L = p.lb  Cetak nilai L  Selesai Flowchart
  • 14. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 14 Gambar 2.6. Flowchart Contoh 2.8 Contoh 2.9 Buatlah flowchart untuk menentukan apakah Lulus atau Tidak Lulus dengan syarat : Jika Nilai Lebih besar atau sama dengan 60, maka dinyatakan Lulus. Jika kurang dari 60, maka dinyatakan Tidak Lulus. Algoritma :  Deklarasikan variabel Nilai, mis x  Input nilai x  Cek nilai x Jika x >= 60, cetak “Lulus “ Jika tidak atau x < 60, cetak ”Gagal “  Selesai Flowchart Gambar 2.7. Flowchart Contoh 2.9 Contoh 2.10 Buatlah flowchart untuk menghitung nilai x1 dan x2 dari persamaan kuadrat y = Ax2 + Bx + C Penyelesaian : Persamaan kuadrat didefinisikan sebagai berikut y = Ax2 + Bx + C yang mempunyai 2 buah akar penyelesaian yaitu x1 dan x2.
  • 15. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 15 Rumus untuk mencari x1 dan x2 : 2 12 2 – 4b x b a ac   Dimana b2 – 4ac disebut Diskriminan (D) , maka : D = b2 – 4ac Nilai x1 dan x2 ditentukan oleh nilai D sebagai berikut : 1. Jika D > 0 artinya nilai D adalah bilangan positip 12 2 b D x a    , maka x1 dan x2 adalah bilangan real 2. Jika D = 0, artinya nilai D sama dengan 0 1 2 2 b x x a    , maka x1 dan x2 adalah bilangan real 3. Jika D < 0, artinya nilai D adalah bilangan negatip 12 ( ) 2 b D x a     , x1 dan x2 adalah bilangan imaginer dimana 1 j  maka : 12 2 b j D x a    Berdasarkan analisa di atas, maka dapat disusun algoritma sebagai berikut :  Mulai  Deklarasikan variabel a,b,c,d,x1,x2  Input nilai a,b,c  Hitung nilai d = b2 – 4ac  Cek nilai d sebagai berikut : o Jika d>0 maka hitung x1 dan x2 1 2 b D x a    dan 2 2 b D x a    o Jika d=0 maka hitung x1 dan x2 1 2 2 b x x a    o Jika d<0 maka hitung x1 dan x2
  • 16. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 16 1 2 b j D x a    dan 2 2 b j D x a     Cetak nilail x1 dan x2  Selesai Flowchart Gambar 2.8. Flowchart Contoh 2.10 Contoh 2.11 Buatlah flowchart untuk menentukan nilai sebagai berikut : 0 <= N <= 50 mendapat Nilai E 50 < N < 60 mendapat Nilai D 60 <= N < 70 mendapat Nilai C 70 <= N <= 85 mendapat Nilai B 85 < N <= 100 mendapat Nilai A Penyelesaian : Algoritma 1. Definisikan Variabel N 2. Tentukan Nilai N
  • 17. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 17 3. Cek Nilai N, Jika :  0 <= N <= 50 Tulis Nilai E, Selesai  50 < N < 60 Tulis Nilai D, Selesai  60 <= N < 70 Tulis Nilai C, Selesai  70 <= N <= 85 Tulis Nilai B, Selesai  85 < N <= 100 Tulis Nilai A, Selesai Flowchart Gambar 2.9. Flowchart Contoh 2.11 Contoh 2.12
  • 18. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 18 Dealer Motor Sahabat menawarkan kredit Motor kepada para pegawai dan guru dengan syarat memiliki pendapatan tetap, pendapatan tambahan, dan pendapatan keluarga. Untuk mendapatkan kredit motor, maka harus memenuhi syarat bahwa :  Pendapatan tetap dihitung penuh, pendapatan tambahan dihitung setengah dan pendapatan keluarga (suami atau istri) dihitung sepertiga.  Apabila jumlah total pendapatan tersebut lebih besar atau sama dengan Rp 1.000.000 ,0- maka akan mendapat kredit VESPA.  Jika kurang dari Rp 1.000.000 tetapi masih lebih besar dari Rp 500.000,00-, maka akan mendapat kredit HONDA, selain itu tak layak mendapat kredit. Di akhir laporan total berapa yang mendapatkan kredit HONDA dan berapa yang mendapatkan kredit VESPA. Buatlah flowchart atas kasus Kredit Motor tersebut di atas. Analisa kasus : a= pendapatan tetap b= pendapatan tambahan c= pendapatan keluarga d= a + b + c Jika d>=1.000.000 maka mendapat kredit vespa d<1.000.000 dan d>500.000 maka mendapat kredit Honda Algoritma :  Mulai  Deklarasikan variabel a,b,c,d  Input nilai a,b, dan c  Hitung jumlah total d = a + 1/2b + 1/3c  Cek nilai d : Jika d>=1.000.000, mendapatkan kredit Vespa Jika 500.000<d<1.000.000, mendapatkan kredit Honda Jika d<=500.000, tidak layak mendapatkan kredit.  Selesai Flowchart :
  • 19. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 19 Gambar 2.10. Flowchart Contoh 2.12
  • 20. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 20 III. Dasar Pemrograman Aturan Bahasa Pascal Program Pascal ditulis dengan menggunakan aturan penulisan yang harus diikuti agar program dapat berjalan dengan baik. Penulisan yang tidak sesuai dengan aturan yang ditentukan akan menyebabkan terjadinya kesalahan. Nama File : 1. Nama file terdiri dari maksimum 8 karakter. Jika lebih, maka kelebihannya akan dipotong oleh program secara otomatis. 2. Nama file program mempunyai ekstensi PAS. 3. Nama file tidak boleh menggunakan spasi. Misalnya contoh 1.pas (salah) 4. Nama file boleh menggunakan tanda hubung bawah. Misalnya contoh_1.pas (benar) 5. Nama file tidak boleh diawali dengan angka. Misalnya 2prog.pas (salah) 6. Tidak boleh mengandung karakter yang tidak lazim, misalnya : * , ! # ^ dst. Dasar Bahasa Pemrograman Pascal Dasar bahasa pemrograman pascal ditulis dengan menggunakan beberapa aturan yang terdiri dari 4 komponen utama yaitu : 1. Komentar/Penjelasan Komentar atau penjelasan tambahan dalam program ditulis dalam tanda kurung. Ada 2 bentuk tanda kurung yang dapat digunakan yaitu :  Diawali dengan simbol (* (buka kurung bintang) dan diakhiri dengan tanda *) (bintang tutup kurung) Contoh : (*Program Input Data*)  Diawali dengan tanda kurung buka kurawal { dan diakihiri dengan tanda kurung tutup kurawal }. Contoh : {Program Input Data} 2. Penulisan Program Setiap baris program harus diakhiri dengan tanda titik koma ( ; ). Tujuannya untuk memberi tanda bahwa baris perintah tersebut sudah berakhir agar program dapat membacara tiap baris perintah dengan benar. Jika tidak diberi tanda titik koma, maka program akan memberi pesan kesalahan (error) bahwa baris tersebut belum menggunakan titik koma. Kode program dapat ditulis dengan bantuan program notepad dari Windows tetapi harus disimpan dengan ekstensi .pas. Misalnya contoh.pas. File program harus disimpan pada folder dimana program pascal dapat membaca program yang dibuat. 3. Huruf Besar dan Kecil
  • 21. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 21 Pascal tidak membedakan huruf besar atau kecil dalam penulisan perintah, Artinya penulisan perintah dengan huruf besar dan huruf kecil dianggap sama. Misalnya :  Y sama dengan y  x sama dengan X  p sama dengan P  N sama dengan n 4. Variabel Variabel adalah tempat menyimpan data dalam memori dimana nilainya dapat berubah-ubah. Variabel dapat didefinisikan dengan huruf, kata, dan gabungan huruf atau kata dengan angka. Misalnya : a, b, c, x, y, a1, a2, nama, nama1, nama2, dst 5. Tipe Data Dalam program pascal dikenal beberapa tipe data dimana setiap tipe harus disesuaikan dengan variabelnya. Misalnya:  Bilangan bulat dideklarasikan dengan tipe integer.  Bilangan pecahan atau decimal dideklarasikan dengan tipe real  Data berupa huruf dideklarasikan dengan tipe char  Data berupa kata dideklarasikan dengan tipe string 6. Operator Sama Dengan Operator tanda sama dengan dalam program Pascal ada 2 yaitu :  Operator = (sama dengan), digunakan untuk memberi nilai tetapan kepada sebuah variabel pada deklarasi konstanta. Misalnya : const x = 3, y = „P‟, menentukan nilai tetapan untuk variabel x dan y.  Operator := (Titik dua sama dengan), digunakan untuk menentukan nilai awal variabel dalam program dan menerima hasil perhitungan. Misalnya : a:= 3; b:= 5, memberi nilai awal untuk variabel a dan b y := 5*a + 2*b, variabel y menerima hasil perhitungan 7. Perintah Perintah adalah koding yang dikenali sebagai bahasa dalam program. Dengan menggunakan perintah-perintah khusus sebagai kode program, maka program akan dapat bekerja sesuai dengan masalah yang akan diselesaikan. Misalnya :  Perintah untuk menginput data, misalnya read, readln  Perintah menghitung atau memproses data, misalnya sqr, sqrt, div, mod
  • 22. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 22  Perintah untuk menulis teks atau hasil perhitungan program, misalnya write, writeln Operator Matematika Operator matematika digunakan untuk melakukan proses perhitungan matematika dalam program. Operator tersebut adalah : Operator Simbol Contoh Rumus Program Penjumlahan + c = a + b c = a + b Pengurangan - c = b - a c = b - a Perkalian * c = a x b c = a*b Pembagian / c = a/b c = a/b Kurung ( ) c = (a + b)/2 c = (a + b)/2 Hirarki Urutan Operator : 1. Tanda kurung 2. Perkalian dan pembagian 3. Perjumlahan dan pengurangan Contoh : No Contoh Hasil 1 Y = 3*3 + (2 + 4)/2 – 3/6 11.5 2 Y = 2 + 3*4 – 3 11 3 Y = (3 + 2)*2/5 2 4 Y = 2/2*4 + 3*4/2 10 5 Y = ((4-2)/2*3 + 4)/ 2 3.5 Operator Fungsi matematika Operator Nama Operasi Contoh Rumus Program Hasil Pangkat 2 sqr(x) y=x2 y=sqr(3) 9 Akar Pangkat 2 sqrt(x) y=√x Y=sqrt(25) 5 Sisa Pembagian mod a mod b 8 mod 3 2 Bil bulat Hasil Pembagian div a div b 8 div 3 2 Struktur Program Pascal Bahasa pemrograman pascal ditulis secara terstruktur artinya perintah-perintah dalam program ditulis secara berurutan mulai dari bagian awal hingga bagian akhir. Urutan bagian tersebut adalah sebagai berikut : 1. Judul Program
  • 23. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 23 Bagian awal dari program pascal adalah judul program. Judul program ditulis dengan diawali kata kunci PROGRAM. Misalnya : Program Rumus_ABC Jika judul terdiri dari 2 kata atau lebih, maka gunakan tanda hubung bawah untuk menghubungkannya. 2. Pustaka Program Program pascal mempunyai pustaka (library) yang berisi kamus atau daftar perintah-perintah yang akan digunakan dalam program. Kamus tersebut diaktifkan pada bagian awal program dengan diawali kata kunci uses. Jika kamus perintah tidak diaktifkan, maka kode program tidak dapat melakukan tugasnya dengan baik. Kamus yang paling sering digunakan adalah crt yang berisi perintah dasar program seperti perintah input, proses, dan output. Contoh : uses crt; 3. Bagian Deklarasi Bagian deklarasi sebagai tempat untuk menyebutkan semua variabel, konstanta, fungsi, prosedur yang akan digunakan dalam program. 1. Deklarasi variabel. Variabel yang digunakan dalam program harus dideklarasikan lebih dahulu sebelum digunakan dalam program. Jika tidak dideklarasikan, maka akan terjadi kesalahan (error). Deklarasi variabel selalu diawali dengan kata kunci var. Setiap variabel akan menerima dan menyimpan data sesuai dengan tipe datanya. Antara nama variabel dengan tipe datanya dipisahkan oleh tanda titik dua (:). Contoh deklarasi variabel: VAR nama : String[25]; a,b,c : Integer; x,y : real; 2. Deklarasi Konstanta Konstanta adalah data yang nilainya tetap. Deklarasi kontanta selalu diawali dengan kata kunci const. const Nama = ‟BUDI‟; gaji = 1500000; pajak = 0.1 {10%} 3. Deklarasi lain adalah label, prosedur, fungsi, dan type. Deklarasi ini akan dijelaskan pada saat materi tersebut dibahas.
  • 24. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 24 Aturan Nama Variabel  Tidak boleh dimulai dengan angka, misalnya 2x.  Tidak boleh mengandung simbol operator aritmatika, dan simbol–simbol lain yang dipergunakan sebagai operator dalam pascal, seperti : koma # @ ^ ! & titik dll.  Tidak boleh mengandung spasi atau blank, misalnya nilai x  Tidak boleh sama dengan nama fungsi dan keyword bahasa pascal, misalnya read. 4. Blok Program Bagian dimana kita akan menuliskan bahasa program atau perintah (koding) yang diawali dengan kata kunci begin dan diakhiri dengan kata kunci end. (end titik). Perintah tersebut terdiri dari 3 bagian yaitu perintah masukan, perintah keluaran, dan perintah perhitungan atau proses. Perintah Masukan  Read adalah perintah untuk menginput data. Setelah menginput data, kursor tidak berpindah ke baris berikutnya.  Readln adalah perintah untuk menginput data. Setelah menginput data, kursor pindah ke baris barikutnya.  Contoh : Read(x) artinya input data x setelah itu posisi kursor tidak berpidah ke baris berikutnya. Readln(x) artinya input data x setelah itu posisi kursor berpidah ke baris berikutnya. Perintah Keluaran  Write adalah perintah untuk menuliskan data. Setelah menulis data, kursor tidak berpindah ke baris baris berikutnya  Writeln adalah perintah untuk menuliskan data. Setelah menulis data, kursor pindah ke baris berikutnya  Contoh : Write(„ Teks „) artinya tulis kata Teks, setelah itu kursor tidak berpindah ke baris berikutnya. Writeln(„ Teks „) artinya tulis kata Teks, setelah itu kursor berpindah ke baris berikutnya. Perintah write umumnya digunakan untuk :  Menuliskan keterangan/informasi kemudian dikuikuti oleh perintah readln untuk melakukan input data. Keterangan harus diapit oleh tanda petik satu. Misalnya: Write(‘Input Nilai x : ‘); Readln(x);
  • 25. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 25 Perintah write menuliskan keterangan „Input Nilai x :‟ setelah itu kursor tidak berpindah baris yang sehingga nilai x yang akan diketik/diinput berada pada baris yang sama. Setelah menginput nilai x, maka kursor kan berpindah ke baris ke baris berikutnya karena perintah readln(x).  Menuliskan nilai variabel baik input maupun output. Misalnya : Write(‘Input Nilai x : ‘); Readln(x); y:= 2*x; writeln(‘Nilai y = ‘,y); Membuat Baris Kosong Baris yang kosong sering digunakan untuk membuat jarak antara baris menjadi lebih jelas. Dalam program ms word dikenal dengan instilah Enter. Perintah untuk membuat baris kosong dalam program pascal adalah writeln tanpa diikuti argumen ( writeln; ). Dalam Contoh program, sering ada kata writeln; tujuannya adalah untuk membuat baris kosong (enter). Jika ada 2 kata writeln; itu artinya berpindah baris 2 kali. Menghentikan Proses Program Untuk sementara Untuk dapat melihat tampilan hasil program dengan baik, maka program perlu dihentikan untuk sementara. Selama berhenti, kita dapat melihat hasil program, apakah sudah benar, sudah baik, atau sudah rapi. Perintah untuk menghentikan proses program untuk sementara adalah readln tanpa argumen ( readln; ) Setelah berhenti, maka proses program dapat dilanjutkan lagi dengan menekan sembarang tombol dari keyboard. Dalam contoh program, selalu ada kata readln; untuk menghentikan tampilan hasil program. Perintah lain yang dapat menghentikan program untuk sementara adalah readkey tanpa argumen ( readkey;) Perintah Perhitungan  Sqrt adalah perintah untuk menghitung nilai akar pangkat dua dari sebuah variabel. Misalnya sqrt(x) artinya menghitung nilai akar pangkat dua dari x.  Sqr adalah perintah untuk menghitung nilai pangkat dua dari sebuah variabel. Misalnya sqr(x) artinya menghitung nilai pangkat dua dari x.  Div adalah perintah untuk menghitung pembagian 2 buah bilangan bulat (integer) kemudian mengambil hasil baginya dan membuang sisa pembagiannya.  Mod adalah perintah untuk menghitung pembagian 2 buah bilangan bulat (integer) kemudian mengambil sisa pembagiannya dan membuang hasil baginya.  Rumus atau persamaan matematika. Misalnya y = x2 .  Dll.
  • 26. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 26 Contoh 3.1 Buatlah program sederhana untuk menampilkan hasil perhitungan dari persamaan x = a + b dan y = a x b Penyelesaian Untuk menyelesaikan persamaan di atas, maka kita akan mendeklarasikan 4 buah variabel yaitu a, b, x, dan y. Tampilkan nilai x dan y dengan 2 bentuk yaitu x dan y berada pada satu baris dan x dan y berada pada baris yang berbeda. Algoritma : 1. Mulai 2. Deklarasikan variabel x, y, a, b 3. Input nilai a, b 4. Hitung nilai x = a + b 5. Hitung nilai y = a x b 6. Tulis Hasil x dan y (Tampilan-1) 7. Tulis Hasil x dan y (Tampilan-2) 8. Hentikan proses program untuk sementara 9. Selesai Flowchart : Gambar 3.1 Flowchart Contoh 3.1. Program :
  • 27. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 27 Program Dasar; { Judul Program } {File : CNTH31.pas } {Oleh : Simon Patabang } {=========================} Uses crt; { Aktifkan kamus crt } var x , y, a, b : integer; {Deklarasi variabel} Begin (* Awal program*) clrscr; {bersihkan layar} writeln; {pindah baris 1 kali} writeln ('Contoh Perintah Input output'); writeln('Input nilai a = '); {kursor pindah baris setelah menulis} readln(a); write('Input nilai b = '); {kursor tidak pindah baris setelah menulis} readln(b); x := a + b; {Hitung nilai x} y := a * b; {Hitung nilai y} writeln;writeln;{pindah baris 2 kali} writeln('Hasil tampilan 1 '); write(' x = ',x); (* Tulis nilai x *) writeln(' y = ',y); (* Tulis nilai y *) writeln;writeln; {pindah baris 2 kali} writeln('Hasil tampilan 2 '); writeln(' x = ',x); (* Tulis nilai x *) write(' y = ',y); (* Tulis nilai y *) writeln;writeln; writeln('Tekan sembarang tombol untuk melanjutkan'); readkey; (*Hentikan sementara proses program *) End. (* Akhir program*) Hasil Program Gambar 3.2 Hasil Program Contoh 3.1 Contoh 3.2
  • 28. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 28 Buatlah program untuk menyelesaikan persamaan matematika berdasarkan algoritma dan flowchart pada Contoh 3.1 Program : Program Dasar; {File : CNTH32.pas } {Oleh : Simon Patabang } {=========================} uses crt; var a,b, y : integer; Begin writeln; clrscr; {Bersihkan layar} write('Input nilai a ='); readln(a); write('Input nilai b ='); readln(b); writeln; y := 6*a + 2*b; {Proses} writeln('y = 6a + 2b'); writeln('y = ',y); {Output} writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program : Gambar 3.3 Hasil Program Contoh 3.2 Contoh 3.3 Buatlah program dari algoritma dan flowchart pada Contoh 3.2 Program : Program Dasar; {File : CNTH33.pas } {Oleh : Simon Patabang } {=========================} uses crt; var a,b, x,y : integer;
  • 29. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 29 Begin clrscr; {Bersihkan layar} writeln; {Buat baris kosong} write('Input nilai x = '); readln(x); {Input nilai x} writeln; a := 4*x*X*x; {Proses} b := 8*x; {Proses} y := a + b - 2; {Proses} writeln('y = 4x^3 + 8x - 2'); writeln('y = ',y); {Output} writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program : Gambar 3.4 Hasil Program Contoh 3.3 Contoh 3.4 Buatlah program dari algoritma dan flowchart pada Contoh 3.3 Program : Program Dasar; {File : CNTH34.pas } {Oleh : Simon Patabang } {=========================} uses crt; var d,m,j,s: integer; Begin clrscr; {Bersihkan layar} write(' Input detik = '); readln(d); j:= d div 3600; s:= d mod 3600; m:= s div 60; d:= s mod 60;
  • 30. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 30 writeln; writeln(' ',j,' jam'); writeln(' ',m,' menit'); writeln(' ',d,' detik'); writeln; writeln(' Jam : ',j,':',m,':',d); writeln; writeln('Tekan sembarang tombol'); readln; end. Hasil Program : Gambar 3.5 Hasil Program Contoh 3.4 Catatan : Variabel yang digunakan untuk perintah div dan mod harus bertipe integer. Tipe lain tidak akan dapat diproses atau akan terjadi error type mismatch Contoh 3.5 Buatlah program dari algoritma dan flowchart pada Contoh 3.3 Program : Program Dasar; {File : CNTH35.pas} {Oleh : Simon Patabang} uses crt; var x,y : real; Begin clrscr; writeln; write('Input nilai x = '); readln(x); y := sqr(x) + sqrt(x); writeln; writeln('sqr(x)+sqrt(x) = ',y:6:2); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln;
  • 31. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 31 End. Hasil Program : Gambar 3.6 Hasil Program Contoh 3.5 Catatan :  Tipe variabel yang berlaku untuk perintah Sqr harus bertipe real.  Nilai y artinya 2,045 x 101 = 20,45 Contoh 3.6 Buatlah program dari algoritma dan flowchart pada Contoh 3.5 Program : Program Dasar; {File : CNTH36.pas} {Oleh : Simon Patabang} uses crt; var L, p, lb: real; Begin clrscr; writeln;writeln; p:=10; {Nilai panjang p} lb:=5; {Nilai lebar lb} L:= p*lb; {Hitung Luas} writeln('Panjang = ',p:6:2); writeln('Lebar = ',lb:6:2); writeln('Luas = ',L:6:2); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program :
  • 32. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 32 Gambar 3.7. Hasil Program Contoh 3.6 Contoh 3.7 Buatlah program untuk menghitung z = x2 + y4 Algoritma : 1. Mulai 2. Deklarasikan variabel x,y,z 3. Input nilai x dan y 4. Hitung nilai z = x2 + y4 5. Cetak hasil z 6. Tekan sembarang tombol 7. Selesai Flowchart : Gambar 3.8. Flowchart Contoh 3.7 Program : Program Dasar; {File : CNTH37.pas } {Oleh : Simon Patabang} Uses crt; (* Aktifkan kamus crt *) Var x,y,z : real; {Deklarasikan variabel} Begin clrscr; write('Input x = '); readln(x); {input nilai x}
  • 33. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 33 write('Input y = '); readln(y); { input nilai y} z := sqr(x) + sqr(y); {Proses, hitung nilai z} writeln; writeln; writeln(' z = ', z:6:2); {Output, cetak z } writeln; writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program Gambar 3.9. Hasil Program Contoh 3.7 IV. Dasar Pemrograman Aturan Bahasa Pascal Program Pascal ditulis dengan menggunakan aturan penulisan yang harus diikuti agar program dapat berjalan dengan baik. Penulisan yang tidak sesuai dengan aturan yang ditentukan akan menyebabkan terjadinya kesalahan. Nama File : 7. Nama file terdiri dari maksimum 8 karakter. Jika lebih, maka kelebihannya akan dipotong oleh program secara otomatis. 8. Nama file program mempunyai ekstensi PAS. 9. Nama file tidak boleh menggunakan spasi. Misalnya contoh 1.pas (salah) 10.Nama file boleh menggunakan tanda hubung bawah. Misalnya contoh_1.pas (benar) 11.Nama file tidak boleh diawali dengan angka. Misalnya 2prog.pas (salah) 12.Tidak boleh mengandung karakter yang tidak lazim, misalnya : * , ! # ^ dst. Dasar Bahasa Pemrograman Pascal Dasar bahasa pemrograman pascal ditulis dengan menggunakan beberapa aturan yang terdiri dari 4 komponen utama yaitu : 8. Komentar/Penjelasan Komentar atau penjelasan tambahan dalam program ditulis dalam tanda kurung. Ada 2 bentuk tanda kurung yang dapat digunakan yaitu :
  • 34. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 34  Diawali dengan simbol (* (buka kurung bintang) dan diakhiri dengan tanda *) (bintang tutup kurung) Contoh : (*Program Input Data*)  Diawali dengan tanda kurung buka kurawal { dan diakihiri dengan tanda kurung tutup kurawal }. Contoh : {Program Input Data} 9. Penulisan Program Setiap baris program harus diakhiri dengan tanda titik koma ( ; ). Tujuannya untuk memberi tanda bahwa baris perintah tersebut sudah berakhir agar program dapat membacara tiap baris perintah dengan benar. Jika tidak diberi tanda titik koma, maka program akan memberi pesan kesalahan (error) bahwa baris tersebut belum menggunakan titik koma. Kode program dapat ditulis dengan bantuan program notepad dari Windows tetapi harus disimpan dengan ekstensi .pas. Misalnya contoh.pas. File program harus disimpan pada folder dimana program pascal dapat membaca program yang dibuat. 10.Huruf Besar dan Kecil Pascal tidak membedakan huruf besar atau kecil dalam penulisan perintah, Artinya penulisan perintah dengan huruf besar dan huruf kecil dianggap sama. Misalnya :  Y sama dengan y  x sama dengan X  p sama dengan P  N sama dengan n 11.Variabel Variabel adalah tempat menyimpan data dalam memori dimana nilainya dapat berubah-ubah. Variabel dapat didefinisikan dengan huruf, kata, dan gabungan huruf atau kata dengan angka. Misalnya : a, b, c, x, y, a1, a2, nama, nama1, nama2, dst 12.Tipe Data Dalam program pascal dikenal beberapa tipe data dimana setiap tipe harus disesuaikan dengan variabelnya. Misalnya:  Bilangan bulat dideklarasikan dengan tipe integer.  Bilangan pecahan atau decimal dideklarasikan dengan tipe real  Data berupa huruf dideklarasikan dengan tipe char  Data berupa kata dideklarasikan dengan tipe string 13.Operator Sama Dengan Operator tanda sama dengan dalam program Pascal ada 2 yaitu :
  • 35. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 35  Operator = (sama dengan), digunakan untuk memberi nilai tetapan kepada sebuah variabel pada deklarasi konstanta. Misalnya : const x = 3, y = „P‟, menentukan nilai tetapan untuk variabel x dan y.  Operator := (Titik dua sama dengan), digunakan untuk menentukan nilai awal variabel dalam program dan menerima hasil perhitungan. Misalnya : a:= 3; b:= 5, memberi nilai awal untuk variabel a dan b y := 5*a + 2*b, variabel y menerima hasil perhitungan 14.Perintah Perintah adalah koding yang dikenali sebagai bahasa dalam program. Dengan menggunakan perintah-perintah khusus sebagai kode program, maka program akan dapat bekerja sesuai dengan masalah yang akan diselesaikan. Misalnya :  Perintah untuk menginput data, misalnya read, readln  Perintah menghitung atau memproses data, misalnya sqr, sqrt, div, mod  Perintah untuk menulis teks atau hasil perhitungan program, misalnya write, writeln Operator Matematika Operator matematika digunakan untuk melakukan proses perhitungan matematika dalam program. Operator tersebut adalah : Operator Simbol Contoh Rumus Program Penjumlahan + c = a + b c = a + b Pengurangan - c = b - a c = b - a Perkalian * c = a x b c = a*b Pembagian / c = a/b c = a/b Kurung ( ) c = (a + b)/2 c = (a + b)/2 Hirarki Urutan Operator : 4. Tanda kurung 5. Perkalian dan pembagian 6. Perjumlahan dan pengurangan Contoh : No Contoh Hasil 1 Y = 3*3 + (2 + 4)/2 – 3/6 11.5 2 Y = 2 + 3*4 – 3 11 3 Y = (3 + 2)*2/5 2 4 Y = 2/2*4 + 3*4/2 10
  • 36. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 36 5 Y = ((4-2)/2*3 + 4)/ 2 3.5 Operator Fungsi matematika Operator Nama Operasi Contoh Rumus Program Hasil Pangkat 2 sqr(x) y=x2 y=sqr(3) 9 Akar Pangkat 2 sqrt(x) y=√x Y=sqrt(25) 5 Sisa Pembagian mod a mod b 8 mod 3 2 Bil bulat Hasil Pembagian div a div b 8 div 3 2 Struktur Program Pascal Bahasa pemrograman pascal ditulis secara terstruktur artinya perintah-perintah dalam program ditulis secara berurutan mulai dari bagian awal hingga bagian akhir. Urutan bagian tersebut adalah sebagai berikut : 5. Judul Program Bagian awal dari program pascal adalah judul program. Judul program ditulis dengan diawali kata kunci PROGRAM. Misalnya : Program Rumus_ABC Jika judul terdiri dari 2 kata atau lebih, maka gunakan tanda hubung bawah untuk menghubungkannya. 6. Pustaka Program Program pascal mempunyai pustaka (library) yang berisi kamus atau daftar perintah-perintah yang akan digunakan dalam program. Kamus tersebut diaktifkan pada bagian awal program dengan diawali kata kunci uses. Jika kamus perintah tidak diaktifkan, maka kode program tidak dapat melakukan tugasnya dengan baik. Kamus yang paling sering digunakan adalah crt yang berisi perintah dasar program seperti perintah input, proses, dan output. Contoh : uses crt; 7. Bagian Deklarasi Bagian deklarasi sebagai tempat untuk menyebutkan semua variabel, konstanta, fungsi, prosedur yang akan digunakan dalam program. 4. Deklarasi variabel. Variabel yang digunakan dalam program harus dideklarasikan lebih dahulu sebelum digunakan dalam program. Jika tidak dideklarasikan, maka akan terjadi kesalahan (error). Deklarasi variabel selalu diawali dengan kata kunci
  • 37. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 37 var. Setiap variabel akan menerima dan menyimpan data sesuai dengan tipe datanya. Antara nama variabel dengan tipe datanya dipisahkan oleh tanda titik dua (:). Contoh deklarasi variabel: VAR nama : String[25]; a,b,c : Integer; x,y : real; 5. Deklarasi Konstanta Konstanta adalah data yang nilainya tetap. Deklarasi kontanta selalu diawali dengan kata kunci const. const Nama = ‟BUDI‟; gaji = 1500000; pajak = 0.1 {10%} 6. Deklarasi lain adalah label, prosedur, fungsi, dan type. Deklarasi ini akan dijelaskan pada saat materi tersebut dibahas. Aturan Nama Variabel  Tidak boleh dimulai dengan angka, misalnya 2x.  Tidak boleh mengandung simbol operator aritmatika, dan simbol–simbol lain yang dipergunakan sebagai operator dalam pascal, seperti : koma # @ ^ ! & titik dll.  Tidak boleh mengandung spasi atau blank, misalnya nilai x  Tidak boleh sama dengan nama fungsi dan keyword bahasa pascal, misalnya read. 8. Blok Program Bagian dimana kita akan menuliskan bahasa program atau perintah (koding) yang diawali dengan kata kunci begin dan diakhiri dengan kata kunci end. (end titik). Perintah tersebut terdiri dari 3 bagian yaitu perintah masukan, perintah keluaran, dan perintah perhitungan atau proses. Perintah Masukan  Read adalah perintah untuk menginput data. Setelah menginput data, kursor tidak berpindah ke baris berikutnya.  Readln adalah perintah untuk menginput data. Setelah menginput data, kursor pindah ke baris barikutnya.  Contoh : Read(x) artinya input data x setelah itu posisi kursor tidak berpidah ke baris berikutnya. Readln(x) artinya input data x setelah itu posisi kursor berpidah ke baris berikutnya.
  • 38. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 38 Perintah Keluaran  Write adalah perintah untuk menuliskan data. Setelah menulis data, kursor tidak berpindah ke baris baris berikutnya  Writeln adalah perintah untuk menuliskan data. Setelah menulis data, kursor pindah ke baris berikutnya  Contoh : Write(„ Teks „) artinya tulis kata Teks, setelah itu kursor tidak berpindah ke baris berikutnya. Writeln(„ Teks „) artinya tulis kata Teks, setelah itu kursor berpindah ke baris berikutnya. Perintah write umumnya digunakan untuk :  Menuliskan keterangan/informasi kemudian dikuikuti oleh perintah readln untuk melakukan input data. Keterangan harus diapit oleh tanda petik satu. Misalnya: Write(‘Input Nilai x : ‘); Readln(x); Perintah write menuliskan keterangan „Input Nilai x :‟ setelah itu kursor tidak berpindah baris yang sehingga nilai x yang akan diketik/diinput berada pada baris yang sama. Setelah menginput nilai x, maka kursor kan berpindah ke baris ke baris berikutnya karena perintah readln(x).  Menuliskan nilai variabel baik input maupun output. Misalnya : Write(‘Input Nilai x : ‘); Readln(x); y:= 2*x; writeln(‘Nilai y = ‘,y); Membuat Baris Kosong Baris yang kosong sering digunakan untuk membuat jarak antara baris menjadi lebih jelas. Dalam program ms word dikenal dengan instilah Enter. Perintah untuk membuat baris kosong dalam program pascal adalah writeln tanpa diikuti argumen ( writeln; ). Dalam Contoh program, sering ada kata writeln; tujuannya adalah untuk membuat baris kosong (enter). Jika ada 2 kata writeln; itu artinya berpindah baris 2 kali. Menghentikan Proses Program Untuk sementara Untuk dapat melihat tampilan hasil program dengan baik, maka program perlu dihentikan untuk sementara. Selama berhenti, kita dapat melihat hasil program, apakah sudah benar, sudah baik, atau sudah rapi.
  • 39. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 39 Perintah untuk menghentikan proses program untuk sementara adalah readln tanpa argumen ( readln; ) Setelah berhenti, maka proses program dapat dilanjutkan lagi dengan menekan sembarang tombol dari keyboard. Dalam contoh program, selalu ada kata readln; untuk menghentikan tampilan hasil program. Perintah lain yang dapat menghentikan program untuk sementara adalah readkey tanpa argumen ( readkey;) Perintah Perhitungan  Sqrt adalah perintah untuk menghitung nilai akar pangkat dua dari sebuah variabel. Misalnya sqrt(x) artinya menghitung nilai akar pangkat dua dari x.  Sqr adalah perintah untuk menghitung nilai pangkat dua dari sebuah variabel. Misalnya sqr(x) artinya menghitung nilai pangkat dua dari x.  Div adalah perintah untuk menghitung pembagian 2 buah bilangan bulat (integer) kemudian mengambil hasil baginya dan membuang sisa pembagiannya.  Mod adalah perintah untuk menghitung pembagian 2 buah bilangan bulat (integer) kemudian mengambil sisa pembagiannya dan membuang hasil baginya.  Rumus atau persamaan matematika. Misalnya y = x2 .  Dll. Contoh 3.1 Buatlah program sederhana untuk menampilkan hasil perhitungan dari persamaan x = a + b dan y = a x b Penyelesaian Untuk menyelesaikan persamaan di atas, maka kita akan mendeklarasikan 4 buah variabel yaitu a, b, x, dan y. Tampilkan nilai x dan y dengan 2 bentuk yaitu x dan y berada pada satu baris dan x dan y berada pada baris yang berbeda. Algoritma : 10.Mulai 11.Deklarasikan variabel x, y, a, b 12.Input nilai a, b 13.Hitung nilai x = a + b 14.Hitung nilai y = a x b 15.Tulis Hasil x dan y (Tampilan-1) 16.Tulis Hasil x dan y (Tampilan-2) 17.Hentikan proses program untuk sementara 18.Selesai Flowchart :
  • 40. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 40 Gambar 3.1 Flowchart Contoh 3.1. Program : Program Dasar; { Judul Program } {File : CNTH31.pas } {Oleh : Simon Patabang } {=========================} Uses crt; { Aktifkan kamus crt } var x , y, a, b : integer; {Deklarasi variabel} Begin (* Awal program*) clrscr; {bersihkan layar} writeln; {pindah baris 1 kali} writeln ('Contoh Perintah Input output'); writeln('Input nilai a = '); {kursor pindah baris setelah menulis} readln(a); write('Input nilai b = '); {kursor tidak pindah baris setelah menulis} readln(b); x := a + b; {Hitung nilai x} y := a * b; {Hitung nilai y} writeln;writeln;{pindah baris 2 kali} writeln('Hasil tampilan 1 '); write(' x = ',x); (* Tulis nilai x *) writeln(' y = ',y); (* Tulis nilai y *) writeln;writeln; {pindah baris 2 kali}
  • 41. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 41 writeln('Hasil tampilan 2 '); writeln(' x = ',x); (* Tulis nilai x *) write(' y = ',y); (* Tulis nilai y *) writeln;writeln; writeln('Tekan sembarang tombol untuk melanjutkan'); readkey; (*Hentikan sementara proses program *) End. (* Akhir program*) Hasil Program Gambar 3.2 Hasil Program Contoh 3.1 Contoh 3.2 Buatlah program untuk menyelesaikan persamaan matematika berdasarkan algoritma dan flowchart pada Contoh 3.1 Program : Program Dasar; {File : CNTH32.pas } {Oleh : Simon Patabang } {=========================} uses crt; var a,b, y : integer; Begin writeln; clrscr; {Bersihkan layar} write('Input nilai a ='); readln(a); write('Input nilai b ='); readln(b); writeln; y := 6*a + 2*b; {Proses} writeln('y = 6a + 2b'); writeln('y = ',y); {Output} writeln;
  • 42. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 42 writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program : Gambar 3.3 Hasil Program Contoh 3.2 Contoh 3.3 Buatlah program dari algoritma dan flowchart pada Contoh 3.2 Program : Program Dasar; {File : CNTH33.pas } {Oleh : Simon Patabang } {=========================} uses crt; var a,b, x,y : integer; Begin clrscr; {Bersihkan layar} writeln; {Buat baris kosong} write('Input nilai x = '); readln(x); {Input nilai x} writeln; a := 4*x*X*x; {Proses} b := 8*x; {Proses} y := a + b - 2; {Proses} writeln('y = 4x^3 + 8x - 2'); writeln('y = ',y); {Output} writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program :
  • 43. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 43 Gambar 3.4 Hasil Program Contoh 3.3 Contoh 3.4 Buatlah program dari algoritma dan flowchart pada Contoh 3.3 Program : Program Dasar; {File : CNTH34.pas } {Oleh : Simon Patabang } {=========================} uses crt; var d,m,j,s: integer; Begin clrscr; {Bersihkan layar} write(' Input detik = '); readln(d); j:= d div 3600; s:= d mod 3600; m:= s div 60; d:= s mod 60; writeln; writeln(' ',j,' jam'); writeln(' ',m,' menit'); writeln(' ',d,' detik'); writeln; writeln(' Jam : ',j,':',m,':',d); writeln; writeln('Tekan sembarang tombol'); readln; end. Hasil Program : Gambar 3.5 Hasil Program Contoh 3.4 Catatan :
  • 44. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 44 Variabel yang digunakan untuk perintah div dan mod harus bertipe integer. Tipe lain tidak akan dapat diproses atau akan terjadi error type mismatch Contoh 3.5 Buatlah program dari algoritma dan flowchart pada Contoh 3.3 Program : Program Dasar; {File : CNTH35.pas} {Oleh : Simon Patabang} uses crt; var x,y : real; Begin clrscr; writeln; write('Input nilai x = '); readln(x); y := sqr(x) + sqrt(x); writeln; writeln('sqr(x)+sqrt(x) = ',y:6:2); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program : Gambar 3.6 Hasil Program Contoh 3.5 Catatan :  Tipe variabel yang berlaku untuk perintah Sqr harus bertipe real.  Nilai y artinya 2,045 x 101 = 20,45 Contoh 3.6 Buatlah program dari algoritma dan flowchart pada Contoh 3.5 Program : Program Dasar; {File : CNTH36.pas}
  • 45. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 45 {Oleh : Simon Patabang} uses crt; var L, p, lb: real; Begin clrscr; writeln;writeln; p:=10; {Nilai panjang p} lb:=5; {Nilai lebar lb} L:= p*lb; {Hitung Luas} writeln('Panjang = ',p:6:2); writeln('Lebar = ',lb:6:2); writeln('Luas = ',L:6:2); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program : Gambar 3.7. Hasil Program Contoh 3.6 Contoh 3.7 Buatlah program untuk menghitung z = x2 + y4 Algoritma : 8. Mulai 9. Deklarasikan variabel x,y,z 10.Input nilai x dan y 11.Hitung nilai z = x2 + y4 12.Cetak hasil z 13.Tekan sembarang tombol 14.Selesai Flowchart :
  • 46. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 46 Gambar 3.8. Flowchart Contoh 3.7 Program : Program Dasar; {File : CNTH37.pas } {Oleh : Simon Patabang} Uses crt; (* Aktifkan kamus crt *) Var x,y,z : real; {Deklarasikan variabel} Begin clrscr; write('Input x = '); readln(x); {input nilai x} write('Input y = '); readln(y); { input nilai y} z := sqr(x) + sqr(y); {Proses, hitung nilai z} writeln; writeln; writeln(' z = ', z:6:2); {Output, cetak z } writeln; writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program
  • 47. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 47 Gambar 3.9. Hasil Program Contoh 3.7 II. Tipe Data Standart Tipe data adalah jenis data berupa angka, huruf, karakter, kata, dan kalimat yang akan di-input dan diproses oleh komputer. Agar program dapat menerima input sesuai dengan jenis datanya, maka ditentukanlah tipe Standart yang terdiri dari 3 tipe yaitu : a) Tipe Ordinal b) Tipe Real c) Tipe String A. Tipe Data Ordinal Adalah tipe data yang mempunyai nilai yang pasti sesuai dengan data masukannya. Tipe data ordinal terdiri dari 3 macam yaitu : 1. Integer adalah semua bilangan bulat negatip, nol, dan positip. 2. Char adalah semua huruf, angka, tanda baca, dan simbol lainnya yang ada pada keyboard. Penulisannya harus diapit oleh tanda pertik satu. Misalnya : „A‟, „a‟, „3‟, „&‟, „%‟, „+‟, dll. 3. Boolean adalah nilai kebenaran atas suatu pernyataan logika dengan hasil True (benar) atau False (salah). Contoh 4.1: Buatlah program dengan 2 buah variabel a, b bertipe integer, 2 buah variabel p, q bertipe boolean, satu variabel y bertipe char. Nilai p dan q diperoleh dengan membandingkan variabel a dan b yaitu p = a<b dan q = a>= b sedangkan a, b, dan y merupakan data masukan. Algoritma : 1. Mulai 2. Deklarasikan variabel a,b (integer),y (char),p,q boolean 3. Input data a,b,y 4. P = a<b 5. Q = a>=b 6. Cetak data a,b,y,p,q 7. Hentikan proses 8. Selesai Flowchart :
  • 48. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 48 Gambar 4.1 Flowchart Contoh 4.1 Program : Program Tipe_Boolean; {File : CNTH41.pas } {Oleh : Simon Patabang } Uses crt; Var a,b : integer; y : char; p,q : boolean; Begin clrscr; {Bersihkan layar} write('Input bil Integer a = '); readln(a); {Tentukan nilai a} write('Input bil Integer b = '); readln(b); {Tentukan nilai b} write('Input karakter = '); readln(y); {Tentukan nilai y} p:=a<b; q:=a>=b; writeln;writeln; writeln('Apakah a < b = ',p); writeln('Apakah a >= b = ',q); writeln('Nilai karakter = ',y); writeln('Bil integer = ',a,' dan ', b); Readln; End. Hasil Program
  • 49. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 49 Gambar 4.2 Hasil Program Contoh 4.1 B. Tipe Data Real Adalah tipe data untuk bilangan percahan atau desimal. Output tipe data real berbentuk bilangan desimal maka hasil output perlu diformat “jumlah angka di belakang koma”. Bentuk perintah format : X:N:D X = Variabel x N = Jumlah tempat/karakter yang tersedia D = Jumlah desimal di belakang koma Misalnya : x:8:2 artinya tersedia 8 tempat untuk mencetak nilai variabel x dengan 2 angka di belakang koma. Contoh 4.2 Buatlah program dengan 3 buah variabel yang menerima data masukan berupa tipe data real. Cetak ke-3 data tersebut dengan format dan tanpa format. Algoritma : 1. Mulai 2. Deklarasikan Variabel a,b,c 3. Input data a,b,c 4. Cetak data a,b,c 5. Selesai Flowchart
  • 50. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 50 Gambar 4.3 Flowchart Contoh 4.2 Program : Program TipeDataReal; {File : CNTH42.pas } {Oleh : Simon Patabang } Uses crt; Var a,b,c : real; Begin clrscr; {Bersihkan layar} write(‘Input a = ‘); readln(a); write(‘Input b = ‘); readln(b); write(‘Input c = ‘); readln(c); writeln(‘Nilai a = ‘, a); writeln(‘Nilai b = ‘, b:6:2); writeln(‘Nilai c = ‘, c:10:3); Readln; End. Hasil Program Gambar 4.4 Hasil Program Contoh 4.2 Jika output Bilangan Real tidak diformat, mis 25.6 maka akan menghasilkan tampilan seperti berikut : 2.5600000000E+1 artinya 2.56 x 101 Aturan Penggunaan Tipe Real dan Integer
  • 51. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 51 Aturan penggunaan variabel integer dan real dalam operasi matematika seperti perkalian, pembagian, penjumlahan atau pengurangan perlu diperhatikan dan diketahui dengan baik karena akan menyebabkan terjadinya kesalahan. Program akan menampilkan informasi kesalahan atau error dengan pesan “Type mismatch” pada layar jika tidak memenuhi aturan. Aturan tersebut adalah :  Tipe variabel integer tidak dapat menerima data bertipe real tetapi variabel bertipe real dapat menerima data bertipe real maupun integer. Misalnya var a, b, dan c bertipe integer sedangkan x, y, dan z real, maka z := a dan y:= x adalah benar b := x adalah salah. Contoh : a:= 2; x:= 4; y:= x; z:= a; b:= a; c:= x; Hasilnya adalah : y:= 4.00 z:= 2.00 b:= 2 c:= Type mismatch  Operasi pembagian, perkalian, pejumlahan atau pengurangan antara 2 buah var bertipe integer dapat diterima oleh variabel bertipe real tetapi pembagian 2 buah var bertipe real tidak dapat diterima oleh variabel bertipe integer. Misalnya a,b, dan c bertipe integer sedangkan x,y, dan z bertipe real, maka : x:=a/b atau y:= a*b adalah benar a:= x/y atau b:= x*y adalah salah x:= a + b atau y := a – b adalah benar a:= x + y atau b:= x - y adalah salah z:= x + a adalah benar c:= x + a adalah salah Contoh : a:= 2; x:= 4; y:= x/a; z:= a/x; b:= a*x; z:= x + a; c:= x + a; c:= a*a; Hasilnya adalah : y:= 2.00
  • 52. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 52 z:= 0.50 b:= Type mismatch z:= 6.00 c:= Type mismatch c:= 4 C. Tipe Data String Adalah kumpulan tipe data yang berbentuk karakter. Panjang maksimum dari tipe data string adalah 255 karakter.  Contoh : var nama : string[30] artinya variabel nama dapat menerima maksimum 30 karakter termasuk spasi. Contoh 4.3 Buatlah program untuk menerima dan mencetak data nama, alamat, dan kota. Algoritma : 1. Mulai 2. Deklarasikan Variabel nama, alamat, dan kota bertipe data string 3. Input data nama, alamat, dan kota 4. Cetak data nama, alamat, dan kota 5. Selesai Flowchart : Gambar 4.5 Flowchart Contoh 4.3 Program : Program TipeDataString; (*File : CNTH43.pas *) (*Oleh : Simon Patabang*)
  • 53. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 53 Uses crt; Var nama, alamat, kota : string[30]; Begin clrscr; writeln (‘Data Masukan’); write(‘Nama : ‘); readln(nama); write(‘Alamat : ‘); readln(alamat); write(‘Kota : ‘); readln(kota); writeln; writeln (‘Data Keluaran’); writeln(‘Nama : ‘, nama); writeln(‘Alamat : ‘, alamat); writeln(‘Kota : ‘, kota); readln; End. Hasil Program Gambar 4.6 Hasil Program Contoh 4.3 Fungsi Standart Arimatika Fungsi standart merupakan perintah yang telah disediakan oleh Pascal untuk melakukan perhitungan untuk tujuan tertentu. Perintah tersebut siap digunakan oleh programmer untuk membuat program. Yang perlu diperhatikan adalah masalah tipe data dari hasil setiap perintah, ada yang bertipe real dan ada juga yang bertipe integer. 1. Abs digunakan untuk mengubah bilangan negatip menjadi bilangan positip atau absolut sebuah bilangan, baik untuk bilangan bulat (integer) maupun desimal (real). Bentuk Perintah : abs(x) Argumen x dapat bertipe real atau integer. Hasilnya dapat bertipe real jika diterima oleh variabel bertipe real dan dapat bertipe integer jika x bertipe integer dan hasilnya diterima oleh variabel bertipe integer. Misalnya a,b,c bertipe real dan x,y bertipe integer maka pernyataan :  x:=abs(y) dan b:=abs(y) adalah benar karena argumen y bertipe integer  y:=abs(b) adalah salah karena y bertipe integer sedangkan b bertipe real Contoh :
  • 54. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 54 b:= -4; x := -9; a := abs(b); c:= abs(x); y:= abs(x); x:=abs(b); Hasilnya adalah : a = 4.00 c = 9.00 y = 9 x =Type mismatch 2. Exp digunakan untuk menghitung nilai pangkat bilangan e atau ex Bentuk Perintah : exp(x) Argumen x dapat bertipe real atau integer dan hasilnya selalu bertipe real. Misalnya variabel a, b dan c bertipe real sedangkan x dan y bertipe integer, maka pernyataan :  a:=exp(b) dan a:=exp(x) adalah benar karena a bertipe real dan dapat menerima hasil yang bertipe real.  y:=exp(b) atau y:=exp(x) adalah salah karena y bertipe integer dan tidak dapat menerima hasil yang bertipe real. Contoh : b:= 4; x := 9; a := exp(b); c:= exp(x); y:= exp(b); Hasilnya adalah : a = 54.60 c = 8103.08 y = Type mismatch 3. Ln digunakan untuk menghitung nilai logaritma dengan basis e. Bentuk Perintah : ln(x) Sedangkan logaritma berbasis 10 dapat dihitung rumus :   ln( ) ln(10) x Log x  Argumen x dapat bertipe real atau integer tetapi hasilnya selalu bertipe real. Misalnya variabel a, b dan c bertipe real sedangkan x dan y bertipe integer, maka pernyataan:
  • 55. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 55  a:=ln(b) atau a:=ln(x) adalah benar karena a bertipe real dan dapat menerima hasil yang bertipe real.  a:=ln(b)/ln(10) atau a:=ln(x)/ln(10) adalah benar karena a bertipe real dan dapat menerima hasil yang bertipe real.  y:=ln(b) atau y:=ln(x) adalah salah karena y bertipe integer dan tidak dapat menerima hasil yang bertipe real.  y:=ln(b)/ln(10) atau y:=ln(x/ln(10) adalah salah karena y bertipe integer dan tidak dapat menerima hasil yang bertipe real. Contoh : b:= 4; x := 9; a := ln(b); c:= ln (x)/ln(10); y:= ln(b); Hasilnya adalah : a = 1.39 c = 0.95 y = Type mismatch 4. Int digunakan untuk mengambil mengambil bilangan bulat dari data bertipe real dan sisanya dibuang. Bentuk Perintah : int(x) Argumen x dapat bertipe real atau integer tetapi hasilnya selalu bertipe real. Misalnya variabel a, b dan c bertipe real sedangkan x dan y bertipe integer, maka pernyataan:  a:=int(b) atau a:=int(x) adalah benar karena a bertipe real dan dapat menerima hasil yang bertipe real.  y:=int(b) atau y:=int(x) adalah salah karena y bertipe integer dan tidak dapat menerima hasil yang bertipe real. Contoh : b:= 4.32; x := 9; a:=int(b); c:=int(x); y:=int(x); Hasilnya adalah : a = 4.00 c = 9.00 y = Type mismatch 5. Frac digunakan untuk mencari nilai pecahan dalam bentuk desimal dari sebuah variabel bertipe integer atau pun real. Hasilnya adalah bilangan real. Bentuk Perintah : frac(x)
  • 56. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 56 Argumen x hanya dapat bertipe real atau integer dan hasilnya selalau bertipe real. Misalnya variabel a, b dan c bertipe real sedangkan x bertipe integer, maka pernyataan:  a:=frac(b) adalah benar karena a bertipe real dan dapat menerima hasil yang bertipe real.  x:= frac(b) adalah salah karena x bertipe integer dan tidak dapat menerima hasil yang bertipe real. Contoh : b:= 4.32; x := 9; a:=frac(b); c:=frac(x); y:=frac(x); Hasilnya adalah : a = 0.32 c = 0.00 y = Type mismatch 6. Sqr digunakan untuk menghitung nilau kuadrat dari sebuah argumen. Bentuk Perintah : sqr(x) Argumen x dapat bertipe real atau integer dan hasilnya dapat bertipe real atau integer. Misalnya variabel a dan b bertipe real sedangkan x dan y bertipe integer, maka pernyataan:  a:=sqr(b) dan a:=sqr(x) adalah benar karena a bertipe real dan dapat menerima hasil yang bertipe real ataupun integer. Hasilnya bertipe real.  y:=sqr(x) adalah benar karena x dan y bertipe integer dan dan hasilnya bertipe integer.  x:=sqr(b) adalah salah karena x bertipe integer sedangkan b bertipe real. Contoh : b:= 4; x := 9; a:=sqr(b); c:=sqr(x); y:=sqt(x); x:=sqr(b); Hasilnya adalah : a = 2.00 c = 3.00 y = 3 x = Type mismatch
  • 57. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 57 7. Sqrt digunakan untuk menghitung nilai akar pangkat dua dari sebuah argumen. Bentuk Perinntah : sqrt(x) Argumen x dapat bertipe real atau integer tetapi hasilnya selalu bertipe real. Misalnya variabel a, b dan c bertipe real sedangkan x dan y bertipe integer, maka pernyataan:  a:=sqrt(b) atau a:= sqrt(x) adalah benar karena a bertipe real dan dapat menerima hasil yang bertipe real.  y:=sqrt(b) atau y:= sqrt(x) adalah salah karena y bertipe integer dan tidak dapat menerima hasil yang bertipe real. Contoh : b:= 4; x := 9; a:=sqrt(b); c:=sqrt(x); y:=sqrt(b) Hasilnya adalah : a = 2.00 c = 9.00 y = Type mismatch 8. Round digunakan untuk membulatkan nilai bertipe real ke nilai pembulatan terdekat. Bentuk Perintah : round(x) Argumen x selalu bertipe real atau integer dan hasilnya dapat bertipe integer atau real. Contoh : Var a,b,c : real; x,y,z : integer; b:= 4.6; x := 9; a:= round(b); c:= round(x); y:= round(b); z:= round(x); Hasilnya adalah : a = 5.00 c = 9.00 y = 5 z = 9 Contoh 4.4
  • 58. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 58 Buatlah prorgram untuk dengan menggunakan perintah pada no 1 sampai 8 di atas. Penyelesaian Dalam program kita akan mencari nilai absolut, eksposnesial, logaritma, pembulatan dengan int dan round, mengambil nilai pecahan atau desimal dari bilangan real, dan menghitung nilai akar kuadrat dan akar pangkat dua. Algoritma  Mulai  Deklarasikan variabel real a,b,c,d, p,q,r dan integer x,y, w, z  Input nilai a, b, x, y  Hitunglah c = a + b; a=x/y, d=abs(b), p=frac(d), q=int(d), b=sqr(x), r=sqrt(x)  Cetak hasil perhitungan  Hentikan proses  Selesai Program Program Tipe_Varibel; (*File : CNTH44.pas *) (*Oleh : Simon Patabang*) uses crt; var a,b,c,d,p,q,r : real; x,y,w,z : Integer; Begin clrscr; write(' Integer x = ');readln(x); write(' Integer y = ');readln(y); write(' Real a = ');readln(a); write(' Real b = ');readln(b); c:= a + b; d:=x/y; a:=abs(b); p:=frac(d); q:=int(d); b:=sqr(x); r:=sqrt(x); z:= x + y; w:= sqr(y); writeln;writeln; writeln(' a + b = ',c:6:2); writeln(' x / y = ',d:6:2); writeln(' abs(b) = ',a:6:2); writeln(' frac(x/y) = ',p:6:2); writeln(' int(x/y) = ',q:6:2); writeln(' sqr(x) = ',b:6:2); writeln(' sqrt(x) = ',r:6:2); writeln(' x + y = ',z); writeln(' sqr(y) = ',w); writeln;writeln; writeln('Tekan sembarang tombol');
  • 59. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 59 readkey; End. Hasil Program Gambar 4.7 Hasil Program Contoh 4.4 9. Pi digunakan sebagai pengganti bilangan π atau 22/7. Hasil selalu bertipe real. Umumnya digunakan dalam perhitungan matematika yang menggunakan bilangan π. Misalnya luas lingkaran πr2 dengan pernyataan L:=pi*sqr(r). Variabel L harus bertipe real sedangkan r dapat bertipe real atau integer. Contoh 4.5 Buatlah program untuk menghitung luas dan keliling lingkaran dimana nilai masukan adalah jari-jari lingkaran. Penyelesaian Rumus : Luas lingkaran = πr2 dan Keliling lingkaran = 2πr Algoritma  Mulai  Deklarasikan variabel L, K, dan R dengan tipe real  Input nilai R  Hitung L dan K  Cetak Hasil L dan K  Hentikan proses sementara  Selesai Program Program Tipe_Varibel; (*File : CNTH45.pas *) (*Oleh : Simon Patabang*) uses crt;
  • 60. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 60 var L,K,r : real; Begin clrscr; write(' Input Nilai r = ');readln(r); L:=pi*sqr(r); K:=2*pi*r; writeln;writeln; writeln(' Luas Lingkaran = ',l:6:2); writeln(' Keliling Lingkaran = ',k:6:2); writeln;writeln; writeln('Tekan sembarang tombol'); readkey; End. Hasil Program Gambar 4.8 Hasil Program Contoh 4.5 10.Mod digunakan untuk mengambil nilai sisa dari hasil pembangian dua buah bilangan bertipe integer. Bentuk Perintah : x mod y Argumen x dan y hanya dapat bertipe integer tetapi hasilnya dapat bertipe real atau integer. Misalnya variabel a, b, dan c bertipe real sedangkan x, y dan z bertipe integer, maka pernyataan:  z:= x mod y atau a:= x mod y adalah benar karena x dan y bertipe integer.  z:= b mod c atau a:= b mod c adalah salah karena b dan c bertipe real. Contoh : x:= 14; y := 3; z:= x mod y a:= x mod y Hasilnya adalah : z = 2 a = 2.00
  • 61. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 61 11.Div digunakan untuk mengambil bilangan bulat dari hasil pembangian dua buah bilangan bertipe integer Bentuk Perintah : x div y Argumen x dan y hanya dapat bertipe integer tetapi hasilnya dapat bertipe real atau integer. Misalnya variabel a, b, dan c bertipe real sedangkan x, y dan z bertipe integer, maka pernyataan:  z:= x div y atau a:= x div y adalah benar karena x dan y bertipe integer.  z:= b div c atau a:= b div c adalah salah karena b dan c bertipe real. Contoh : x:= 14; y := 3; z:= x div y a:= x div y Hasilnya adalah : z = 4 a = 4.00 Contoh 4.6 Buatlah program untuk mencari bilangan bulat dan sisa dari hasil pembagian antara 2 buah bilangan bulat atau integer. Penyelesaian Variabel yang digunakan harus integer. Misalkan a, b, c, dan d adalah tipe integer. Algoritma  Mulai  Deklarasikan variabel a,b,c, dan d  Input a dan b  Hitung sisa hasil bagi a dan b  Hitung bil bulat hasil bagi a dan b  Cetak hasilnya  Hentikan sementara  Selesai Program Program Program Mod_Div; (*File : CNTH46.pas *) (*Oleh : Simon Patabang*) uses crt; var a,b,c,d : integer;
  • 62. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 62 Begin clrscr; write(' Input Nilai a = ');readln(a); write(' Input Nilai b = ');readln(b); c:= a mod b; d:= a div b; writeln;writeln; writeln(' Hasil bagi a/b = ',d); writeln(' Sisa Hasil bagi a/b = ',c); writeln;writeln; writeln('Tekan sembarang tombol'); readkey; End. Hasil Program Gambar 4.9 Hasil Program Contoh 4.6 12.Chr digunakan untuk mengkonversi kode ASCII menjadi karakter. Kode ASCII terdiri dari bilangan bulat mulai dari 0 hingga 255. Bentuk Perintah : chr(x) Argumen x bertipe byte dan hasilnya bertipe karater. Misalkan x bertipe byte dan a bertipe char, maka pernyataan yang benar adalah a:=chr(x) Contoh : x:=66; a:=chr(x) Hasilnya adalah : a = B 13. Ord digunakan untuk mengkonversi nilai karakter menjadi kode ASCII. Bentuk Perintah : ord(x) Argumen x harus bertipe karakter dan hasilnya bertipe byte. Misalnya variabel a dan b bertipe byte sedangkan x dan y bertipe char. Contoh :
  • 63. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 63 a:= 100 x:= „P‟; y:=chr(a); b:=ord(x); Hasilnya adalah : b = d y:= 80 Contoh 4.7 Buatlah program untuk mengkonversi sebuah karakter menjadi kode ASCII dan kode ASCII menjadi sebuah karakter. Algoritma  Mulai  Deklarasikan variabel a, d dengan tipe byte dan x, y dengan tipe char  Input kode ASCII a dan karakter x  Cari karakter dari kode ASCII input  Cari kode ASCII dari karakter input  Tampilkan hasilnya  Hentikan sementara  Selesai Program Program Kode_ASCII; (*File : CNTH47.pas *) (*Oleh : Simon Patabang*) uses crt; var a,b : byte; x,y : char; Begin clrscr; write(' Kode ASCII = ');readln(a); write(' Karakter = ');readln(x); b:= ord(x); y:= chr(a); writeln;writeln; writeln(a,' adalah karakter ',y); writeln(x,' kode ASCIInya adalah ',b); writeln;writeln; writeln('Tekan sembarang tombol'); readkey; End.
  • 64. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 64 Hasil Program Gambar 4.10 Hasil Program Contoh 4.7 14. Random digunakan untuk membangkit bilangan acak antara 0 dan 1 atau antara 0 dan n. Bentuk Perintah : random(n) Argumen n bertipe integer, dimana n menyatakan nilai maksimum. Jika n disebutkan, maka nilai bilangan random antara 0 dan n. Jika n tidak disebutkan maka bilangan randomnya antara 0 dan 1. 15.Ziseof 16.Upcase 17.Trunc V. ALGORITMA SELEKSI IF adalah kontrol seleksi yang digunakan untuk melakukan pengecekan terhadap sebuah kondisi, apakah benar atau salah. Kontrol seleksi akan memilih salah satu pilihan dari 2 atau lebih pilihan yang ada. Kontrol seleksi akan mengambil keputusan ketika melakukan pengecekan terhadap kondisi dari sebuah variabel. Jika kondisi variabel tersebut memenuhi syarat yang ditentukan atau bernilai benar maka program akan memilih suatu bagian pernyataan untuk dikerjakan. Jika nilai variabel tidak memenuhi syarat yang ditentukan atau bernilai salah, maka program akan memilih suatu bagian pernyataan yang lain untuk dikerjakan. Cara kerja seperti itu disebut Algoritma Seleksi, biasa disebut juga algoritma percabangan. 1. ALGORITMA SELEKSI DENGAN IF Perintah untuk menyatakan pengambilan keputusan dalam program adalah IF. Jadi IF digunakan untuk memeriksa suatu kondisi sebagai syarat untuk memilih dan mengerjakan pilihan yang ada. Bentuk Perintah If
  • 65. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 65 if (syarat/kondisi) then Begin <pernyataan-1>; End; <pernyataan-2>; : Jika kondisi/syarat bernilai benar (True), maka kerjakan pernyataan-1 dalam blok begin-end. Jika bernilai salah (False), maka pernyataan-2 di bawah blok begin- end akan dikerjakan. Contoh : Pernyataan Kondisi Jika n = Nilai Logika If(n<=10) 7 True 10 True 15 False Dalam diagram alir, simbol dari algoritma seleksi digambarkan dengan bela ketupat seperti pada gambar berikut. Gambar 5.1. Diagram Alir Algoritma Seleksi Operator Relasi Operator Relasi digunakan untuk memeriksa satu kondisi/syarat dalam perintah if. Operator relasi terdiri dari 6 macam yaitu : Operator Relasi Operasi Contoh = Sama dengan if (n=10) then ….. < Lebih kecil dari if (n<10) then ….. > Lebih besar dari if (n>10) then ….. <> Tidak sama dengan if (n<>10) then ….. <= Lebih kecil sama dengan if (n<=10) then ….. => Lebih besar sama dengan if (n=>10) then ….. Bentuk Perintah IF 1. If – Then
  • 66. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 66 Adalah bentuk pilihan dimana hanya ada satu pilihan “pernyataan” yang harus dikerjakan pada saat kondisi pada If bernilai benar. Bentuk If-then : Catatan Penting!!!  Jika pernyataan dalam blok Begin-End hanya terdiri dari 1 pernyataan, maka kata Begin-end, boleh dihilangkan.  Jika pernyataan dalam blok Begin-End terdiri dari beberapa baris pernyataan (lebih dari 1), maka kata Begin-end, tidak boleh dihilangkan (kata begin-end harus digunakan) Misalnya : If n>10 then writeln (‘Nilai n lebih besar dari 10’); If n<=10 then Begin writeln (‘Nilai n lebih besar dari 10’); writeln (‘atau Nilai n sama dengan 10’); End; Flowchart Gambar. 5.2. Flowchart If-then Contoh 5.1 Buatlah program untuk menentukan, apakah masukan bilangan bulat n adalah bilangan genap atau ganjil dengan menggunakan if - then. Penyelesaian : Ciri khas dari bilangan genap adalah jika dibagi dengan 2, maka sisanya 0. Sedangkan ciri khas bilangan ganjil adalah jika dibagi dengan2, maka
  • 67. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 67 sisanya 1. Program meminta sebuah masukan bilangan bulat n. Kemudian n akan dibagi dengan 2 oleh operator mod, misalnya a = n mod 2. Jika a=0, maka n adalah bilangan bulat. Kemudian a kita cek lagi, apakah nilai a=1. Jika benar, maka n adalah bilangan ganjil. Algoritma : 1. Mulai 2. Definisikan variabel n 3. Input bil bulat 4. Hitung sisa hasil bagi : a = n mod 2 5. Cek nilai a, jika a = 0, cetak “N bilangan bulat” 6. Cek nilai a, jika a = 1, cetak “N bilangan ganjil” 7. Hentikan sementara proses program 8. Selesai Flowchart Gambar. 5.3 Flowchart Contoh 5.1 Program Program Ganjil_Genap; {File : CNTH51.pas } {Oleh : Simon Patabang} Uses crt; Var n,a : integer; Begin
  • 68. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 68 Writeln; clrscr; Write('Input n = '); Readln(n); Writeln; a := n mod 2; {Cari sisa hasil bagi n dengan 2} If a=0 then writeln('N adalah bilangan genap'); If a=1 then writeln('N adalah bilangan ganjil'); Writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program Gambar 5.4 Hasil Program Contoh 5.1 2. If - Then – Else Adalah bentuk pilihan dimana ada dua pilihan “pernyataan” yang harus dipilih salah satunya untuk dikerjakan. Bentuk If - Then – Else :  Jika kondisi benar, maka kerjakan blok pernyataan 1.  Jika kondisi salah, maka kerjakan blok pernyataan 2. Catatan Penting!!! Pada setiap baris pernyataan yang mendahului pernyataan kata ELSE tidak boleh diakhiri dengan tanda titik koma. Flowchart
  • 69. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 69 Gambar 5.5 Flowchart If - Then - Else Misalnya : If n>10 then Wrilteln(‘n lebih besar dari 10’) Else Begin Wrilteln(‘n lebih kecil dari 10’); Wrilteln(‘atau n sama dengan 10’); End; Contoh 5.2 Buatlah program untuk kasus Contoh 5.1. dengan menggunakan if - then - else. Penyelesaian Sisa hasil bagi sebuah bilangan asli dengan 2 hanya ada 2 kemungkinan yaitu 0 atau 1. Hasilnya 0 untuk bilangan genap dan 1 untuk bilangan ganjil. Dalam hal ini, jika kondisi a=1 tidak memenuhi syarat, maka pasti nilai a=0. Demikian juga sebaliknya. Algoritma : 1. Mulai 2. Definisikan variabel n 3. Input bil bulat n 4. Hitung sisa hasil bagi : a = n mod 2 5. Cek nilai a, jika a = 0, cetak “N bilangan bulat” 6. Jika tidak, maka cetak “N bilangan ganjil” 7. Selesai Flowchart
  • 70. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 70 Gambar 5.6 Flowchart Contoh 5.2 Program Program Ganjil_Genap; {File : CNTH52.pas } {Oleh : Simon Patabang} Uses crt; Var n,a : integer; Begin Writeln; clrscr; Write('Input n = '); Readln(n); Writeln; a := n mod 2; {Cari sisa hasil bagi n dengan 2} If a=0 then writeln('N adalah bilangan genap') else writeln('N adalah bilangan ganjil'); Writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program
  • 71. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 71 Gambar 5.7 Hasil Program Contoh 5.2 Contoh 5.3 Buatlah program dari algoritma dan flowchart penentuan Lulus atau Gagal pada contoh 3.6 Penyelesaian : Program akan meminta masukan nilai x kemudian di cek, apakah lebih besar atau sama dengan 60. Jika benar, maka dinyatakan “Lulus”. Jika salah, maka dinyatakan “Gagal‟. Algoritama 1. Mulai 2. Definisikan variabel n 3. Input bil bulat n 4. Cek nilai n, jika n >= 60, cetak “Lulus” 5. Jika tidak, maka cetak “Gagal” 6. Selesai Flowchart
  • 72. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 72 Gambar 5.8 Flowchart Contoh 5.3 Program : Program Lulus_Gagal; {File : CNTH53.pas } {Oleh : Simon Patabang} uses crt; var n : integer; Begin clrscr; write('Input nilai n = '); readln(n); if (n>=60) then writeln('Lulus') else writeln('Gagal'); writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program : Gambar 5.9 Hasil Program Contoh 5.3 3. IF - Then – Else If - Else Adalah bentuk pilihan dimana ada lebih dari 2 pilihan “pernyataan” yang harus dipilih salah satunya untuk dikerjakan dengan menyeleksi beberapa kondisi dari sebuah variabel. Pernyataan yang dipilih adalah pernyataan yang memenuhi syarat atau pernyataan yang bernilai benar. Bentuk Perintah :
  • 73. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 73  Jika kondisi1 benar, maka “pernyataan1” akan dikerjakan dan pilihan lain akan diabaikan (tidak dibaca).  Jika kondisi1 Salah, maka kondisi2 akan diperiksa. Jika kondisi2 benar, maka “pernyataan2” akan dikerjakan dan pilihan lain akan diabaikan (tidak dibaca).  Jika kondisi2 Salah, maka kondisi berikutnya akan diperiksa. dan seterusnya.  Jika kondisi(n-1) Salah, maka pernyataan n akan dikerjakan. Flowchart Gambar 5.10 Flowchart If – Then – Else If – Else Contoh 5.4
  • 74. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 74 Buatlah program dari algoritma dan flowchart persamaan kuadrad pada contoh 3.6 dengan menyeleksi kondisi dari variabel d. Program Program PersamaanKuadrad; {File : CNTH53.pas } {Oleh : Simon Patabang} uses crt; var a,b,c,d,x1,x2,p,q : real; Begin write('Input nilai a = ');readln(a); write('Input nilai b = ');readln(b); write('Input nilai c = ');readln(c); d:=sqr(b)-4*a*c; writeln; writeln('d =',d:6:0); writeln; if d>0 then Begin x1:= (-b + d)/(2*a); x2:= (-b - d)/(2*a); writeln('x1 = ', x1:6:2); writeln('x2 = ', x2:6:2); End else if d=0 then Begin x1:= (-b)/(2*a); x2:= (-b)/(2*a); writeln('x1 = ', x1:6:2); writeln('x2 = ', x2:6:2); End else Begin p:= (-b)/(2*a); q:= (d)/(2*a); writeln('x1 = ', p:6:2,' + j ',q:6:2); writeln('x2 = ', p:6:2,' - j ',q:6:2); End; writeln; writeln('Tekan sembarang tombol untuk keluar'); writeln; readln; End. Hasil Program
  • 75. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 75 Gambar 5.11 Hasil Program Contoh 5.4 4. Nested If Adalah bentuk algoritma seleksi, dimana dalam sebuah If terdapat If lain yang akan menyeleksi kondisi dari sebuah variabel yang berbeda. Bentuk Perintah : Penjelasan :  Jika kondisi variabel A benar, maka pernyataan A-1 akan dikerjakan  Kemudian Cek kondisi dari variabel B.  ika kondisi variabel B benar, maka pernyataan B-1 akan dikerjakan.  Jika kondisi variabel B salah, maka pernyataan B-2 akan dikerjakan.  Jika kondisi variabel A salah, maka pernyataan A-2 akan dikerjakan. Flowchart
  • 76. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 76 Gambar 5.12 Flowchart Nested If Contoh 5.5 Seorang siswa dapat diterima menjadi Polisi jika memenuhi syarat sebagai berikut : • Umur minimum 19 Tahun dan Maksimum 25 Tahun • Tinggi badan minimal 165 cm • Nilai Test masuk minimal 70 Buatlah program menentukan seorang siswa “Lulus” atau “Gagal” Algoritma 1. Mulai 2. Definisikan var umur, tinggi, nilai 3. Input umur, tinggi badan, dan nilai test 4. Cek syarat sebagai berikut :  Cek umur (19 s/d 25 tahun) Jika syarat umur benar maka Cek tinggi badan (minimum 165 cm) Jika syarat tinggi badan benar maka Cek nilai ujian (minimum 70) Jika syarat Nilai ujian benar Maka cetak “Lulus  Jika salah satu syarat tidak memenuhi maka Cetak “Gagal” 5. Selesai Flowchart
  • 77. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 77 Gambar 5.13 Flowchart Contoh 5.5 Program program Nested_IF; {File : CNTH55.pas } {Oleh : Simon Patabang} uses crt; var u,t,n : integer; begin writeln;writeln; clrscr; write('Input Umur = '); readln(u); write('Input Tinggi Badan = '); readln(t); write('Input Nilai Test = '); readln(n); writeln;writeln; write('Hasil test adalah : '); If (u>=19) and (u<=25) then
  • 78. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 78 Begin if (t>=165) then begin if n>=70 then write('LULUS') else write('GAGAL'); end else write('GAGAL'); end else write('GAGAL'); writeln;writeln; writeln('Tekan sembarang tombol'); readln; end. Hasil Program Gambar 5.14 Hasil Program Contoh 5.5 Operator Logika Operator Logika, digunakan untuk membandingkan 2 buah kondisi. Operator logika bekerja berdasarkan nilai logika true (benar) atau false (salah). Operator Operasi Contoh Not Tidak Benar (Bukan) If not (n=100) then … And Dan (keduanya benar maka hasilnya benar) if ((n<100) and (n>80)) then …. Or Atau (salah satu benar maka hasilnya benar) if ((n<100) or (n>80)) then …. Operator Not Operator Not digunakan untuk menyangkal nilai logika dari suatu pernyataan kondiri.
  • 79. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 79 Tabel Kebenaran Not A Operasi Hasil True Not A False False Not A True Operator And Digunakan untuk membandingkan 2 buah kondisi logika. Hasilnya akan benar bila keduanya benar. Hasilnya akan salah bila salah satu dari pernyataan salah. Tabel Kebenaran AND A B Operasi Hasil True True A and B True True False A and B False False True A and B False False False A and B False Contoh : Kondisi A And B Jika n = A B Operasi Hasil Nilai Logika Hasil ((n<=100) And (n>80)) 90 T T A and B T Benar 70 T F A and B F Salah 50 T F A and B F Salah 30 T F A and B F Salah Contoh 5.6 Buatlah program untuk menentukan nilai A, B, C, D, dan E berdasarkan algoritma dan flowchart pada contoh 3.8. Program Program Nilai; Uses crt; Var n : real; Begin {clrscr;} write('Input Nilai Angka = ');readln(n); if (n>85) and (n<=100) then writeln('Anda mendapat nilai A') else if (n >= 70) and (n <= 85) then writeln('Anda mendapat Nilai B') else if (n>= 60) and ( n< 70) then writeln('Anda mendapat Nilai C') else if (n>50) and (n<60) then writeln('Anda mendapat Nilai D') else
  • 80. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 80 if (n>=0) and (n<=50) then writeln('Anda mendapat Nilai E') else writeln('Input Anda Salah'); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; writeln; End. Hasil Program Gambar 5.15 Hasil Program Contoh 5.6 Operator Or Digunakan untuk membandingkan 2 buah kondisi logika. Hasilnya akan benar bila salah satu bernilai benar atau keduanya benar. Hasilnya akan salah bila keduanya salah. Tabel Kebenaran OR A B Operasi Hasil T T A OR B T F T A OR B T T F A OR B T F F A OR B F Contoh : Kondisi A or B Jika n = A B Operasi Hasil Nilai Logika Hasil ((n<=85) or 90 F T A OR B T Benar
  • 81. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 81 (n>70)) 80 T T A OR B T Benar 60 T F A OR B T Benar 30 T F A OR B T Benar Contoh 5.7. Buatlah program untuk menjelaskan arti dari nilai huruf yang diinput sebagai berikut : Nilai A : artinya sangat baik Nilai B dan C artinya cukup baik Nilai D dan E artinya sangat buruk Algoritma  Mulai  Deklarasikan variabel n dengan tipe karakter  Input nilai huruf  Cek nilai n: Jika n=A atau n=a, maka cetak „Nilai Anda Sangat Baik‟ Jika n=B atau n=C, maka cetak „Nilai Anda Cukup Baik‟ Jika n=D atau n=E, maka cetak „Nilai Anda Sangat Buruk‟  Selesai Flowchart
  • 82. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 82 Gambar 5.16 Flowchart Contoh 5.7 Program Program Nilai; Uses crt; Var n : char; Begin write('Input Nilai Huruf = ');readln(n); if (n='A') or (n ='a') then writeln('Nilai Anda Sangat Baik') else if (n ='B') or (n ='C') then writeln('Nilai Anda Cukup Baik') else if (n='D') or ( n='E') then writeln('Nilai Anda Sangat Buruk') else writeln('Data input salah, ulangi!!!'); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; writeln;
  • 83. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 83 End. Hasil Program Gambar 5.17 Hasil Program Contoh 5.7 2. ALGORITMA SELEKSI DENGAN CASE – OF Case-of adalah kontrol seleksi yang digunakan untuk memilih salah satu pilihan dari daftar pilihan yang ada. Dengan Case-of, kita tidak perlu membuat beberapa kondisi seperti pada kontrol If ... Then .... Else. Case-of hanya memeriksa satu variabel kontrol, kemudian memilih salah satu pilihan dari daftar pilihan yang nilainya sama dengan nilai variabel kontrol. Daftar pilihan dalam Case-of selalu diakhiri dengan kata kunci end; (end titik koma) sebagai penutup dari daftar pilihan (Case-of-end) Bentuk Perintah: Flowchart
  • 84. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 84 Gambar 5.18 Flowchart Algoritma Case-of Catatan Penting!!! :  Case...Of tidak menggunakan BEGIN tetapi mengunakan END ;  Variabel kontrol hanya dapat bertipe Integer atau Char.  Daftar Data Pilihan dapat berupa sebuah konstanta, atau range dari konstanta yang bertipe Integer atau Char. Contoh Daftar Data Pilihan tipe integer: 2 : Pilihan dengan satu bilangan bulat 1,3,5 : Pilihan berupa daftar bilangan tertentu 1..5 : Pilihan berupa range bilangan bulat 1 s/d 5 Contoh Daftar Data Pilihan tipe Char (karakter): ‟A‟ : Pilihan berupa satu huruf, mis A ‟C‟,‟F‟ : Pilihan berupa daftar huruf tertentu, mis C, F ‟A‟..‟D‟ : Pilihan berupa range nilai huruf, mis A s/d D ‟ * ‟ : Pilihan berupa simbol karakter , mis * Catatan Penting!!!  Data tipe karakter harus diapit oleh tanda petik satu.  Nilai range hanya menggunakan 2 buah titik diantara nilai awal dan akhir. Contoh 5.8 Buatlah program untuk menghitung Luas, Volume, dan Keliling sebuah Balok dengan tampilan Daftar Pilihan sebagai berikut : Menu Program 1. Hitung Luas Balok 2. Hitung Volume Balok 3. Hitung Keliling Balok 4. Keluar Pilihan Anda (1/2/3/4)
  • 85. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 85 Jika anda menginput data panjang, lebar, dan tinggi balok, maka program akan menampilkan Daftar Pilihan seperti di atas. Jika anda menjawab Pilihan Anda dengan : 1 artinya program akan menghitung Luas Balok 2 artinya program akan menghitung Volume Balok 3 artinya program akan menghitung Keliling Balok 4 artinya anda keluar dari program. Algoritma  Mulai  Deklarasikan variabel p,l,t, v,ls,k, vk (variabel kontrol)  Input nilai panjang, lebar, dan tinggi balok  Tampilkan menu Pilihan  Input nilai variabel kontrol, vk  Cek nilai variabel kontrol Jika 1, maka kerjakan pilihan-1 Jika 2, maka kerjakan pilihan-2 Jika 3, maka kerjakan pilihan-3 Jika 4, maka keluar dari program  Selesai Flowchart
  • 86. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 86 Gambar 5.19 Flowchart Contoh 5.8 Program Program Menu_Pilihan; Uses crt; Var p,l,t,v,ls,k : real; vk : char; Begin { clrscr;} write('Input Panjang Balok = ');readln(p); write('Input Lebar Balok = ');readln(l); write('Input Tinggi Balok = ');readln(t); writeln; writeln; writeln(' Menu Program '); writeln('===================='); writeln('1.Hitung Luas Balok'); writeln('2.Hitung Volume Balok'); writeln('3.Hitung Keliling Balok'); writeln('4.Keluar'); write('Pilihan Anda (1/2/3/4)');readln(vk); writeln; writeln; case vk of '1' : Begin ls:=p*l; writeln('Luas = ',ls:6:2); End; '2' : Begin v:=p*l*t; writeln('Volume = ',v:6:2); End; '3' : Begin k:=2*(P+l+t); writeln('Keliling = ',k:6:2); End; '4' : Begin Exit; {Keluar dari program} End; End; writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; writeln; End. Hasil Program
  • 87. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 87 Gambar 5.20 Hasil Program Contoh 5.8 Contoh 5.9 Buatlah program untuk mencetak keterangan Nilai Huruf sebagai berikut : A = Sangat Baik B = Baik C = Cukup D = Kurang E = Gagal Algoritma  Mulai  Deklarasikan variabel nilai dan ket  Input nilai  Cek variabel nilai  Jika nilai=A, kerjakan pernyataan pada pilihan A  Jika nilai=B, kerjakan pernyataan pada pilihan B  Jika nilai=C, kerjakan pernyataan pada pilihan C  Jika nilai=D, kerjakan pernyataan pada pilihan D  Jika nilai=E, kerjakan pernyataan pada pilihan E  Cetak keterangan nilai  Selesai Flowchart
  • 88. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 88 Gambar 5.21 Folwchart Contoh 5.9 Program Program Contoh5.2; uses crt; Var Nilai : Char; Ket : String [12]; Begin Write ('Masukkan Nilai Huruf (A/B/C/D/E) = '); Readln(Nilai) ; Case Nilai Of 'A' : Ket := ' Sangat Baik ' ; 'B' : Ket := ' Baik ' ; 'C' : Ket := ' Cukup ' ; 'D' : Ket := ' Kurang ' ; 'E' : Ket := ' Gagal ' ; End; Write (' Nilai Anda = ', Ket) ; Readln ; End. Catatan Pernyataan pada setiap pilihan (A,B,C,D, dan E) tidak perlu menggunakan blok Begin-end karena hanya terdiri dari satu baris pernyataan. Contoh 5.3 Buatlah program dengan menggunakan Case-of untuk menentukan nilai Huruf dan keterangannya dengan aturan sebagai berikut :
  • 89. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 89 0 <= N <= 50 mendapat Nilai E (Buruk) 50 < N < 60 mendapat Nilai D (Kurang) 60 <= N < 70 mendapat Nilai C (Cukup) 70 <= N <= 85 mendapat Nilai B (Baik) 85 < N <= 100 mendapat Nilai A (Sangat Baik) Tampilan hasil keluaran adalah : Nama : Amir Nilai : A Keterangan : Sangat Baik Algoritma  Mulai  Deklarasikan variabel nilai angka n (integer), nilai huruf h (char), nama(string), ket(string)  Input nama dan nilai angka  Cek nilai angka. Jika :  0 .. 50 mendapat Nilai E (Buruk)  51 ..59 mendapat Nilai D (Kurang)  60 .. 69 mendapat Nilai C (Cukup)  70.. 85 mendapat Nilai B (Baik)  86 ..100 mendapat Nilai A (Sangat Baik)  Cetak hasil keluaran  Selesai Flowchart
  • 90. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 90 Gambar 5.21 Flowchart Contoh 5.3 Program Program Nilai; uses crt; var n : integer; h : char; ket,nama : string[25]; Begin { clrscr;} write('Nama : ');readln(nama); write('Nilai angka : ');readln(n); case n of 0..50 : Begin h := 'E'; ket:= 'Buruk' End; 51..59 : Begin h := 'D'; ket:= 'Kurang' End; 60..69 : Begin h := 'C'; ket:= 'Cukup' End;
  • 91. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 91 70..85 : Begin h := 'B'; ket:= 'Baik' End; 86..100:Begin h := 'A'; ket:= 'Sangat Baik'; End; end; writeln; writeln('Nama : ',nama); writeln('Nilai : ',h); writeln('Keterangan : ',ket); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; end. Hasil Program Gambar 5.22 Hasil Program Contoh 5.3 Contoh 5.4 Buatlah program dengan menggunakan IF dan Case-of untuk menentukan Hadiah (H) dari total belanja di Supermarket sebagai berikut : 1 Juta <=Total Belanja<=5 Juta : Televisi 700 ribu <=Total Belanja< 1 juta : Camera 500 ribu <=Total Belanja< 700 ribu : Printer 200 ribu <Total Belanja< 500 ribu : VCD Player 50 ribu <=Total Belanja<= 200 ribu : Baju Kaos Data masukan adalah Total Belanja (TB). Tampilkan keterangan “Maaf anda belum beruntung” jika tidak memenuhi syarat di atas. Penyelesaian: Algoritma
  • 92. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 92  Mulai  Deklarasikan variabel TB, dan H  Input data total belanja TB  Cek nilai TB, Jika :  1 Juta <=Total Belanja<=5 Juta : Televisi  700 ribu <=Total Belanja< 1 juta : Kamera  500 ribu <=Total Belanja< 700 ribu : Printer  200 ribu <Total Belanja< 500 ribu : VCD Player  50 ribu <=Total Belanja<= 200 ribu : Baju Kaos  Cetak info hadiah :  JIka Total Belanja< 1 juta atau Total Belanja>5 juta, maka tidak mendapatkan hadiah  Jika memenuhi salah satu pilihan di atas, maka mendapatkan hadiah  Selesai Flowchart Gambar 5.23 Flowchart Contoh 5.4 Program Program Nilai; uses crt; var tb : integer; h : string[20]; Begin clrscr;
  • 93. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 93 write('Jumlah Total Belanja (x1000) = ');readln(tb); case tb of 50..200 : h := 'Baju Kaos'; 201..499 : h := 'VCD Player'; 500..699 : h := 'Printer'; 700..999 : h := 'Kamera'; 1000..5000:h := 'Televisi'; end; if (tb<50) or (tb>5000) then Begin writeln; writeln('Maaf, Anda tidak beruntung'); End else Begin writeln; writeln('Anda mendapatkan hadiah ',h); End; writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; end. Hasil Program Gambar 5.24Hasil Program Contoh 5.4 Contoh 5.5 Buatlah program untuk menginput harga pembelian kebutuhan dapur pada sebuah toko Makmur Jaya. Jika harga barang lebih dari Rp. 150.000,- maka akan
  • 94. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 94 mendapatkan diskon 2%. Jika harga barang lebih dari Rp. 250.000,- maka akan mendapatkan diskon 5%. Jika harga barang lebih dari Rp. 500.000,- maka akan mendapatkan diskon 10%. Di luar ketentuan tersebut, tidak mendapatkan diskon. Tampilkan informasi Harga Jual, Diskon, dan Harga Bayar, kemudian input Jumlah uang pembeli dengan tampilan sbb: Nama Barang : Rice Cooker Harga : Rp. 500000 Diskon (5%) : Rp. 25000 Bayar : Rp. 475000 Jumlah Uang : 500000 Kemudian cetak Struk Belanja dengan bentuk sbb: Nama Barang : Rice Cooker Harga : Rp. 500000 Diskon (5%) : Rp. 25000 Bayar : Rp. 475000 Jumlah Uang : Rp. 500000 Kembalian : Rp. 25000 Penyelesaian Algoritma  Mulai  Deklarasikan variabel harga, diskon, bayar  Input Harga Barang, harga  Cek harga. Jika :  Harga > Rp. 150.000 maka hitung diskon = harga x 2%  Harga > Rp. 250.000 maka hitung diskon = harga x 5%  Harga > Rp. 500.000 maka hitung diskon = harga x 10%  Tampilkan informasi harga pembayaran  Input Jumlah uang pembayaran  Cetak Struk Belanja  Selesai Flowchart
  • 95. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 95 Gambar 5.25 Flowchart Contoh 5.5 Program Program Belanja; Uses crt; Var harga,uang : real; diskon,bayar,sisa : real; nama_barang : string[20]; Begin
  • 96. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 96 clrscr; write('Nama Barang = ');readln(nama_barang); write('Harga = ');readln(harga); if (harga>500000) then diskon:=harga*0.1 else if (harga>250000) then diskon:=harga*0.05 else if (harga>150000) then diskon:=harga*0.02 else diskon:=0.0; clrscr; bayar := harga - diskon; writeln('Nama Barang : ',nama_barang); writeln('Harga : Rp.',harga:12:2); writeln('Diskon : Rp.',diskon:12:2); writeln('Bayar : Rp.',bayar:12:2); writeln; write('Jumlah Uang : Rp.');readln(uang); sisa:=uang-bayar; clrscr; writeln('Struk Belanja Anda'); writeln('==================================='); writeln('Nama Barang : ',nama_barang); writeln('Harga : Rp.',harga:12:2); writeln('Diskon : Rp.',diskon:12:2); writeln('Bayar : Rp.',bayar:12:2); writeln('==================================='); writeln('Jumlah Uang : Rp.',uang:12:2); writeln('Sisa Kembalian : Rp.',sisa:12:2); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; writeln; End. Hasil Program
  • 97. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 97 Gambar 5.26 Hasil Program Contoh 5.5
  • 98. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 98 VI. ALGORITMA PERULANGAN Algoritma perulangan atau loop adalah suatu proses yang mengerjakan pernyataan yang sama secara berulang kali hingga memenuhi syarat batas yang ditentukan. Perulangan pada umumnya digunakan untuk menyelesaian masalah dengan metode atau rumus yang sama tetapi datanya selalu berubah-ubah. Dengan menggunakan algoritam perulangan, maka penulisan kode program yang panjang akan menjadi efisian dan semakin sederhana. Dalam program Pascal, algoritma perulangan menggunakan 4 buah perintah yaitu : 1. For-to-do 2. For-downto-do 3. While-do 4. Repeat-until 1. For-To-Do For-To-Do adalah perintah perulangan yang digunakan untuk mengerjakan suatu blok pernyataan secara berulang kali selama kondisi/syarat pada for-to-do bernilai benar atau memenuhi syarat. Jika kondisi tidak memenuhi syarat, maka blok pernyataan tidak akan dikerjakan dan program akan mengerjakan pernyataan setelah kata kunci end dari blok pernyataan. Bentuk Perintah : Keterangan i = variabel kontrol n1 = nilai awal n2 = nilai batas, dimana n1<n2 Nilai variabel kontrol i secara otomatis akan bertambah satu mulai dari i=n1 hingga i=n2. Selama nilai benar, maka pernyataan-1 akan dikerjakan. Jika i bernilai salah atau i>n2, maka pernyataan-2 akan dikerjakan. Variabel kontrol pada For-to-do hanya dapat bertipe Integer. Flowchart
  • 99. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 99 Gambar 6.1. Flowchart For-To-Do Misalnya : n:=0; for i:=1 to 5 do Begin n:=n + i; End; m:=n+5; Perulangan di atas akan mengerjakan pernyataan-1 n = n + i sebanyak 5 kali karena nilai i dalam for dimulai dari 1 hingga 5. Dalam tiap perulangan, nilai n akan berubah hingga nilai n=5. Jika n> 5, maka perulangan selesai. Setelah selesai, maka akan mengerjakan pernyataan-2, m = n + 5. Hasil proses perulangan adalah sebagai berikut : Perulangan ke-i n = n + i Hasil Nilai n m = n+5 Hasil Nilai m 1 n := 0 + 1 1 2 n := 1 + 2 3 3 n := 3 + 3 6 4 n := 6 + 4 10 5 n := 10 + 5 15 Selesai m:=15+5 20 Contoh 6.1 Buatlah program untuk mencetak angka 1 hingga n. Nilai n adalah data masukan. Bentuk tampilan adalah 1 2 3 4 5 … n Algoritma 1. Mulai 2. Deklarasikan variabel i dan n dengan tipe integer. 3. Input nilai n. 4. Buat perulangan mulai i=1 s/d i=n
  • 100. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 100 5. Cetak nilai i 6. Ulangi langkah 4 7. Selesai Flowchart Gambar 6.2. Flowchart Contoh 6.1 Program : Program CetakAngka; {Nama File : CNTH61.prg} {Oleh : Simon Patabang} uses crt; var i,n : integer; Begin clrscr; write('Input nilai n = '); readln(n); for i:=1 to n do Begin write(' ',i); {cetak spasi(jarak) dan nilai i} End; writeln; writeln('Tekan sembarang tombol untuk keluar'); readln; End. Hasil Program
  • 101. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 101 Gambar 6.3. Hasil Program Contoh 6.1 Contoh 6.2 Buatlah program untuk menjumlahkan angka 1 hingga n dengan mengembangkan program pada contoh 6.1. Penyelesaian Proses penjumlahan angka mulai sari 1 hingga n dilakulan dalam loop dengan pernyataan j := j + i. Setelah perulangan selesai, maka hasil penjumlahan j akan dicetak. Algoritma 1. Mulai 2. Deklarasikan variabel i,n, dan j dengan tipe integer. 3. Input nilai n. 4. Definisikan nilai awal jumlah data j = 0. 5. Buat perulangan mulai i=1 s/d i=n 6. Cetak nilai i 7. Hitung j = j + i 8. Ulangi langkah 4 9. Cetak jumlah j 10.Selesai Flowchart
  • 102. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 102 Gambar 6.4. Flowchart Contoh 6.2 Program Program Jumlah_Angka; {Nama File : CNTH62.prg} {Oleh : Simon Patabang} uses crt; var i,n,j : integer; Begin clrscr; j:=0; write('Input nilai n = '); readln(n); for i:=1 to n do Begin write(' ',i); j:= j + i; End; writeln; writeln('Jumlah Data = ',j); writeln; writeln('Tekan sembarang tombol untuk keluar'); readln;
  • 103. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 103 End. Hasil Program Gambar 6. 5. Hasil Program Contoh 6.2 Contoh 6.3 Buatlah program untuk mencari dan mencetak bilangan Ganjil dari bilangan bulat antara 1 hingga n. N adalah data masukan. Hitunglah Jumlah dari bilangan ganjil tersebut. Penyelesaian Bilangan ganjil antara 1 hingga n diperoleh dengan cara membagi bilangan tersebut dengan 2, kemudian ambil sisa pembagiannya. Gunakan perintah mod untuk mencari sisa pembagian. Jika sisanya satu, maka bilangan tersebut adalah bilangan ganjil. Jumlahkan bilangan ganjil tersebut dengan bilangan ganjil sebelumnya. Algoritma 1. Mulai 2. Deklarasikan variabel i, n, s,j 3. Buat perulangan mulai nilai i=1 hingga n 4. Bagi bilangan i dengan 2 dan ambil sisanya, s= I mod 2 5. Cek sisa nilai variabel s. 6. Jika s=1, maka cetak i 7. Jumlahkan bilangan ganjil, j = j + i 8. Ulangi langkah 3 9. Cetak Jumlah data j 10.Selesai Flowchart
  • 104. Diktat Mata Kuliah Dasar Pemrograman Komputer – FT-UAJM Page 104 Gambar 6.6. Flowchart Contoh 6.3 Program Program Bilangan_Ganjil; {Nama File : CNTH63.prg} {Oleh : Simon Patabang} uses crt; var i,n,s,j : integer; Begin clrscr; write('Input nilai n = '); readln(n);