BAB I
ALGORITMA PEMROGRAMAN
b. Algoritma
Untuk masalah dengan instansiasi yang kecil, kita dapat menemukan solusinya dengan mudah dan
cepat. Bagaimana kalau instansiasi masalah berukuran besar? Misalnya pada masalah pengurutan, jika n =
1000 jelas tidak mudah mengurutkan data sebanyak itu. Oleh karena itu, kita perlu menuliskan prosedur yang
berisi langkah-langkah pengurutan sehingga prosedur tersebut dapat “dijalankan” oleh sebuah pemroses
(komputer, manusia, robot, dan sebagainya) untuk menghasilkan solusi setiap instansiasi masalah
pengurutan. Kita katakana langkah-langkah pengurutan itu untuk memecahkan masalah. Kita katakana
langkah-langkah pengurutan itu untuk memecahkan masalah. Prosedur yang berisi langkah-langkah
penyelesaian masalah disebut algoritma.
Terdapat beberapa definisi lain dari algoritma – tetapi prinsipnya senada dengan definisi yang diungkapkan
di atas – yang kita kutip berbagai literature, antara lain:
Algoritma adalah deretan langkah-langkah komputasi yang mentransformasikan data masukan menjadi
keluaran [COR92].
Algoritma adalah deretan instruksi yang jelas untuk memecahkan masalah, yaitu untuk memperoleh
keluaran yang diinginkan dari suatu masukan dalam jumlah waktu yang terbatas[LEV03].
Algoritma adalah prosedur komputasi yang terdifinisi dengan baik yang menggunakan beberapa nilai
sebagai masukan dan menghasilkan beberapa nilai yang disebut keluaran. Jadi, algoritma adalah deretan
langkah komputasi yang mentransformasikan masukan menjadi keluaran [COR89].
c. Sejarah Algoritma
Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah yang aneh. Orang hanya
menemukan kata algorism yang berarti proses menghitung dengan angka arab. Anda dikatakan algorist jika
Anda menghitung menggunakan angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun
hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang
berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja far Muhammad Ibnu Musa Al-Khuwarizmi.
Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al
Jabar Wal-Muqabala yang artinya Buku pemugaran dan pengurangan (The book of restoration and
reduction). Dari judul buku itu kita juga memperoleh akar kata Aljabar (Algebra). Perubahan kata dari
algorism menjadi algorithm muncul karena kata algorism sering dikelirukan dengan arithmetic, sehingga
akhiran sm berubah menjadi thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa,
maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara
umum, sehingga kehilangan makna kata aslinya. Dalam bahasa Indonesia, kata algorithm diserap menjadi
algoritma.
Proses
Input Output
Pengolahan Data
Memory
1) Input
Bagian ini merupakan proses untuk memasukkan data ke komputer melalui device yang ada misalnya
keyboard, mouse, scanner dll. Program melakukan proses membaca data yang akan diolah dari device
tersebut.
2) Output
Bagian ini merupakan proses untuk menampilkan data yang telah diolah, melaporkan hasil pegolahan data
melalui device seperti monitor, printer dll. Program melakukan proses mencetak data ke device tersebut.
3) Proses
Bagian ini merupakan proses mengolah data yang diinputkan dengan nenerapkan metode-metode, teknik-
teknik, algoritma-algoritma yang ada. Proses ini menghasilkan data output yang akan dioutputkan kepada
pengguna program.
Paradigma Pemrograman :
1) Pemrograman Prosedural
a) Berdasarkan urutan-urutan, sekuensial
b) Program adalah suatu rangkaian prosedur untuk memanipulasi data. Prosedur merupakan kumpulan
instruksi yang dikerjakan secara berurutan.
c) Harus mengingat prosedur mana yang sudah dipanggil dan apa yang sudah diubah.
2) Pemrograman Fungsional
a) Berdasarkan teori fungsi matematika
b) Fungsi merupakan dasar utama program.
3) Pemrograman Terstruktur
a) Secara berurutan dan terstrukrtur.
b) Program dapat dibagai-bagi menjadi prosedur dan fungsi.
c) Contoh: PASCAL dan C
4) Pemrograman Modular
a) Pemrograman ini membentuk banyak modul.
b) Modul merupakan kumpulan dari prosedur dan fungsi yang berdiri sendiri
c) Sebuah program dapat merupakan kumpulan modul-modul.
d) Contoh: MODULA-2 atau ADA
5) Pemrograman Berorientasi Obyek
a) Pemrograman berdasarkan prinsip obyek, dimana obyek memiliki data/variabel/property dan
method/event/prosedur yang dapat dimanipulasi
b) Contoh: C++, Object Pascal, dan Java.
6) Pemrograman Berorientasi Fungsi
a) Pemrograman ini berfokus pada suatu fungsi tertentu saja. Sangat tergantung pada tujuan pembuatan
bahasa pemrograman ini.
b) Contoh: SQL (Structured Query Language), HTML, XML dan lain-lain.
7) Pemrograman Deklaratif
a) Pemrograman ini mendeskripsikan suatu masalah dengan pernyataan daripada memecahkan masalah
dengan implementasi algoritma.
b) Contoh: PROLOG
Berdasarkan pada apakah notasi bahasa pemrograman lebih dekat ke mesin atau ke bahasa manusia, maka
bahasa pemrograman dikelompokkan atas dua macam:
1) Bahasa tingkat rendah. Bahasa jenis ini dirancang agar setiap instruksinya langsung dikerjakan oleh
komputer, tanpa harus melalui penerjemah (translator). Contohnya adalah bahasa mesin. CPU mengambil
instruksi dari memori, langsung mengerti dan langsung mengerjakan operasinya. Bahasa tingkat rendah
bersifat primitif, sangat sederhana, orientasinya lebih dekat ke mesin, dan sulit dipahami manusia.
Sedangkan bahasa rakitan dimasukkan ke dalam kelompok ini karena alasan notasi yang dipakai dalam
bahasa ini lebih dekat ke mesin, meskipun untuk melaksanakan instruksinya masih perlu penerjemahan ke
dalam bahasa mesin.
2) Bahasa tingkat tinggi, yang membuat pemrograman lebih mudah dipahami, lebih manusiawi , dan
berorientasi ke bahasa manusia (bahasa Inggris).Hanya saja, program dalam bahasa tingkat tinggi tidak
dapat langsung dilaksanakan oleh komputer. Ia perlu diterjemahkan terlebih dahulu oleh sebuah translator
bahasa (yang disebut kompilator atau compiler) ke dalam bahasa mesin sebelum akhirnya dieksekusi oleh
CPU. Contoh bahasa tingkat tinggi adalah Pascal, PL/I, Ada, Cobol, Basic, Fortran, C, PHP, C++, dan
sebagainya.
Pernyataan
Kalikan a dengan 2
Menggambarkan aksi mengalikan a dengan 2 dan hasil perkalian disimpan di dalam peubah a lagi.
b. Kontruksi Dasar
Algoritma berisi langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut dapat berupa
runtunan aksi, pemilihan aksi, pengulangan aksi. Ketiga jenis langkah tersebut membentuk kontruksi suatu
algoritma. Jadi, sebuah algoritma dapat dibangun dari tiga buah kontruksi atau struktur dasar, yaitu
runtunan (sequence), pemilihan (selection), dan pengulangan (repetition).
1) Runtunan
Sebuah runtunan terdiri dari satu atau lebih pernyataan, setiap pernyataan dtulis dalam satu baris atau
dipisahkan dengan tanda titik koma. Tiap pernyataan dikerjakan secara berurutan (sekuensial) sesuai
dengan urutannya didalam teks algoritma, yaitu sebuah instruksi dilaksanakan setelah instruksi
sebelumnya selesai dilaksanakan. Urutan intruksi menentukan keadaan akhir algoritma. Bila urutannya
diubah, maka hasil akhirnya mungkin juga berubah. Runtunan satu atau lebih pernyataan dinamakan
pernyataan-gabungan (compound statements).
Contoh runtunan.
s1, s2, s3, s4, s5
mula-mula proses melaksanakan pernyataan s1, pernyataan s2 dilaksanakan setelah pernyataan s1 selesai.
Selanjutnya, pernyataan s3 dilaksanakan setelah pernyataan s2 selesai. Demikian seterusnya sampai
pernyataan terakhir s5 dilaksanakan. Setelah pernyataan s5 selesai dilaksanakan, algoritma berhenti.
2) Pemilihan
Pemrograman Dasar kelas X semester 1 dan 2 | 4
Wahyu Sumantri Sutiar, S.T. SMK PGRI 1 KOTA SUKABUMI
If kondisi then
Aksi
Dalam bahasa indonesia, if berarti ”jika” dan then artinya ”maka”;
Kondisi adalah persyaratan yang dapat bernilai benar atau salah; aksi sesudah kata then hanya
dilaksanakan apabila kondisi bernilai benar. Sebaliknya, jika kondisi salah, maka aksi tidak dilaksanakan.
Contoh :
If air di dalam ketel mendidih then
Matikan api kompor
Struktur pemilihan if-then hanya memberikan satu pilihan aksi bila kondisi (persayaratan) dipenuhi
(bernilai benar), dan tidak memberi pilihan aksi lain bila kondisi bernilaii salah. Bentuk pemilihan yang
lebih umum ialah memilih satu ari dua buah aksi bergantung pada nilai kondisinya:
If kondisi then
Aksi 1
Else
Aksi 2
Else artinya ”kalau tidak”. Bila kondisi terpenuhi, aksi 1 akan dikerjakan, tetapi kalau tidak (yaitu kondisi
salah), aksi 2 yang akan dikerjakan. Misalnya pada pernyataan berikut:
If lampu a nyala then
Tekan tombol merah
Else
Tekan tombol biru
3) Pengulangan
Salah satu kelebihan komputer adalah kemampuannya untuk mengerjakan pekerjaan yang sama berulang
kali tanpa kenal lelah. Ini berbeda dengan manusia yang cepat lelah bila mengerjakan pekerjaan yang
sama berulang-ulang. Tidak hanya lelah, tetapi juga cepat bosan.
Contoh: menuliskan sebuah kalimat ”saya berjanji tidak akan nakal dan malas lagi” yang sama sebanyak
100 kali?
Aksi
Until Kondisi
Latihan
1. Sebutkan tiga struktur dasar algoritma
2. Buat algoritma secara deskriptif menggunakan perintah pemilihan tentang sikap yang harus dilakukan bila
menemui pengatur lalu lintas di jalan raya.
3. Buat algoritma secara deskriptif menggunakan perintah For...do untuk menuliskan kalimat ”Hallo World”
sebanyak 10 kali
4. Buat algoritma secara deskriptif menggunakan perintah While...Do untuk menuliskan kalimat ”Hallo
World” sebanyak 10 kali
5. Buat algoritma secara deskriptif menggunakan perintah Repeat...Until untuk menuliskan kalimat ”Hallo
World” sebanyak 10 kali
Sebagai contoh :
X = 50; // X bernilai 50
c. Konstanta
Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah. Hampir sama dengan
variabel, konstanta juga digunakan untuk penyimpanan nilaisementara. Namun perbedaan konstanta dengan
Pemrograman Dasar kelas X semester 1 dan 2 | 6
Wahyu Sumantri Sutiar, S.T. SMK PGRI 1 KOTA SUKABUMI
variabel adalah pada konstanta tidak dapat mengubah nilainya jika sudah dideklarasikan. Cara
pendeklarasiannya pun berbeda dengan variabel. Pada konstanta digunakan keyword “const” untuk
mendeklarasikan variable.
Sebagai Contoh
Const phi=3.14
Const y=’hallo world’
d. Operator
Operator adalah simbol yang digunakan dalam program untuk melakukan suatu operasi. Operator
berguna untuk melakukan suatu operasi pada suatu nilai. Operator pada Pascal sangatlah umum sehingga
mudah untuk dipahami. Disini kita akan membahas operator yang sering digunakan.
Test formatif
1. Tentukan salah atau benar pada nama-nama variabel berikut ini. Jika salah cobalah berikan alasan.
a. nama.guru
b. NamaGuru
c. 2x
d. harga/buku
e. hargaPerBuku
1. Tentukan tipe data yang cocok untuk hal-hal berikut ini (perhatikan ini bukan nama variabel) dan jelaskan
alasannya.
a. Jumlah murid
b. Berat badan
c. Tinggi badan
d. Nama siswa
e. Tempat lahir
f. Tanggal lahir
4. Pertemuan 4 : Pseudocode
Notasi Algoritmik yang baik adalah notasi yang mudah dibaca dan mudah pula ditransalasikan ke dalam
notasi bahasa pemrograman. Notasi algoritmik berupa pseudo-code mempunyai korespondensi dengan notasi
bahasa pemrograman sehingga proses penerjemahan dari pseudo-code ke kode program menjadi lebih
mudah.
Algoritmik:
Write (x,y)
Bahasa pascal
Pemrograman Dasar kelas X semester 1 dan 2 | 7
Wahyu Sumantri Sutiar, S.T. SMK PGRI 1 KOTA SUKABUMI
Write (x,y)
Algoritmik
min←x
Bahasa Pascal
Min:=x;
Algoritmik
Read (min)
Bahasa Pascal
Write (’masukan nila x: ’);
Read (min);
Contoh :
Algoritmik Bahasa pascal
{program penjumlahan} Program penjumlahan;
Deklarasi Uses crt;
A:integer Var A,B,C:integer;
B:integer Begin
C:integer A:=1
Algoritma B:=1
A←1 C:=A+B
B←1 write(C)
C←A+B end.
write(C)
Latihan praktek:
Pada suatu penginapan memiliki perhitungan pembayaran nginap sebagai berikut :
Jumlah bayar dihitung dari lama menginap dikali dengan harga kamar per hari.
Program nginap
Deklarasi
Lm : integer
Hk : real
Algoritma
Write (‘Lama menginap : ‘)
Read (lm)
Write (‘Harga kamar per hari : ‘)
Read (hk)
jml←lm*hk
Test formatif
Proses program yang dikehendaki:
Pemrograman Dasar kelas X semester 1 dan 2 | 8
Wahyu Sumantri Sutiar, S.T. SMK PGRI 1 KOTA SUKABUMI
Masukan
- Banyaknya barang yang dibeli (nama variable qty)
- Harga satuan barang (nama variable hrgbrg)
Rumus
Jumlah bayar (nama variable jmlbyr) dihitung dari banyaknya barang yang dibeli dikali harga satuan
barang
Keluaran
- Jumlah bayar
Tampilan dilayar
Banyaknya barang :
Harga satuan :
Jumlah bayar :
Terjemahkanlah studi kasus tersebut kedalam bentuk algoritma dan kedalam bahasa pemrograman pascal?
Catatan : data banyak barang, harga satuan diinput sedangkan jumlah bayar otomatis
GARIS ALIR
Arah aliran program
(FLOW LINE)
PREDEFINED
Permulaan sub program/proses
PROCESS
menjalankan sub program
(SUB PROGRAM)
Perbandingan pernyataan,
DECISION penyeleksian data yang memberikan
pilihan untuk langkah selanjutnya
Dari contoh algoritma di atas tentang menentukan apakah suatu bilangan adalah bilangan ganjil atau bilangan
genap, flowchart dari program adalah sebagai berikut :
Start A
Input
Bilangan
Apakah T
Sisa =
0
Hitung sisa Y
bagi antara
Cetak Cetak
bilangan
Genap Ganjil
dengan 2
End
A
Test Formatif
1. Buat flowchart atau langkah-langkah mematikan komputer yang benar
2. Buat flowchart diagnosis komputer yang mengalami kerusakan
3. Buat flowchart pengetesan jaringan komputer
BAB II
ALGORITMA PERCABANGAN
Uraian Materi
1. Pertemuan 1: percabangan 1 kondisi
Notasi algoritmik untuk analisis dengan satu kasus adalah dengan menggunakan kontruksi IF THEN
(jika – maka) dalam bentuk pernyataan:
If kondisi then
aksi
endif
Pernyataan diatas berarti bahwa aksi hanya dilaksanakan bila kondisi bernilai benar (true). Bila kondisi salah
(false), tidak ada aksi apa pun yang dikerjakan. Kata endif sengaja kita tambahkan untuk mempertegas awal
dan akhir IF-THEN.
Program genap
Deklarasi
X : integer
Algoritma
Read (x)
If x mod 2 = 0 then
Write (‘genap’)
endif
Latihan praktek:
Pada suatu hotel memiliki perhitungan tentang pembayaran menginap yaitu:
Jumlah bayar dihitung dari lama menginap dikali dengan harga kamar/hari. Jika jumlah bayar diatas sama
dengan 100000, maka mendapat potongan 10%, jika tidak potongan tidak dapat. Total akhir bayar dihitung
dari jumlah bayar dikurangi potongan.
Program nginap
Deklarasi
Lm:integer
Hk:real
Jml:real
Byrakh:real
Algoritma
Write (‘Lama menginap: ‘)
Pemrograman Dasar kelas X semester 1 dan 2 | 11
Wahyu Sumantri Sutiar, S.T. SMK PGRI 1 KOTA SUKABUMI
Read (lm)
Write (‘Harga kamar per hari: ‘)
Read (hk)
Jml←lm*hk
Buat flowchart untuk algoritma di atas dan terjemahkan kedalam bahasa pemrograman pascal?
Test formatif;
Proses program yang dikehendaki:
Masukan
- Nama siswa (nana variable namasis)
- Nilai c (nama variable nilaic)
Rumus
Keterangan nilai (nama variable KETNIL) ditentukan dari nilai ujian C, jika nilai C diatas sama
dengan 56, maka variable KETNIL berisi “lulus”, jika tidak variable KETNIL berisi “gagal”
Keluaran
- Keterangan nilai
Tampilan di layar
Nama siswa :
Nilai c :
Keterampilan nilai :
Terjemahkanlah studi kasus tersebut kedalam bentuk algoritma, flowchart dan kedalam bahasa pemrograman
pascal?
Catatan : nama siswa dan nilai c di input sedangkan keterangan otomatis
If kondisi then
Aksi1
else
aksi2
endif
Program genap
Deklarasi
X : integer
Algoritma
Read (x)
If x mod 2 = 0 then
Write (‘genap’)
Else
Write (‘ganjil’)
endif
Latihan praktek:
Pada suatu hotel memiliki perhitungan tentang pembayaran menginap yaitu:
Jumlah bayar dihitung dari lama menginap dikali dengan harga kamar/hari. Jika jumlah bayar diatas sama
dengan 200000, maka mendapat potongan 20% dan keterangan “Dapat Discount”, jika tidak maka
keterangan “Tidak Dapat Discount”. Total akhir bayar dihitung dari jumlah bayar dikurangi potongan.
Program nginap
Deklarasi
Lm:integer
Hk:real
Jml:real
Byrakh:real
Ket:string
Algoritma
Write (‘Lama menginap : ‘)
Read (lm)
Write (‘Harga kamar per hari : ‘)
Read (hk)
Jml←lm*hk
Else
byrakh←jml
Ket← ‘Tidak dapat discount’
Endif
Write (‘Jumlah bayar : ‘,jml)
Write (‘Keterangan : ‘,ket)
Write (‘Total bayar akhir : ‘,byrakh)
Test formatif
Proses program yang dikehendaki:
Masukan
- Nama karyawan (nama variable namakry)
- Gaji pokok (nama variable gapok)
- Jumlah jam kerja (nama variable jmljamk)
Rumus
Gaji pokok (nama variable gator) dihitung dari gaji pokok dikali jumlah jam kerja. Jika gaji kotor
diatas sama dengan 500000 dikenakan pajak (nama variable tax) 5% dan pada variable keterangan
(nama variable ket) diisi “pajak”, sebaliknya jika gaji kotor dibawah 500000, tidak dikenakan pajak
dan variable keterangan diisi “Bebas Pajak”, gaji bersih yang diterima (nama variablenya gjterima)
dihitung dari gaji kotor yang diterima (nama variable gjterima) dihitung dari gaji kotor dikurangi
pajak
Keluaran
- Jumlah bayar
Tampilan di layar
Nama karyawan :
Gaji pokok :
Jumlah jam kerja :
Gaji kotor :
Pajak :
Gaji bersih :
Keterangan :
Terjemahkanlah studi kasus tersebut kedalam bentuk algoritma, flowchart dan kedalam bahasa pemrograman
pascal?
Catatan : nama karyawan, gaji pokok dan jumlah jam kerja di input sedangkan gaji kotor, pajak, gaji bersih
dan keterangan otomatis.
If kondisi1 then
Aksi1
Else
If kondisi2 then
Aksi2
Else
If kondisi3 then
Aksi2
Endif
Endif
Endif
Program genap
Deklarasi
X : integer
Algoritma
Read (x)
If x > 0 then
Write (‘negatif’)
Else
If x < 0 then
Write (‘positif’)
Else
If x = 0 then
Write (‘nol’)
Endif
endif
endif
Latihan praktek :
Pada suatu hotel memiliki perhitungan tentang pembayaran menginap yaitu:
Jumlah bayar dihitung dari lama menginap dikali dengan harga kamar/hari. Ketentuan discount dapat dilihat
pada tabel dibawah ini.
Program nginap
Deklarasi
Lm:integer
Hk:real
Jml:real
Byrakh:real
Ket:string
Algoritma
Read (lm)
Read (hk)
Jml←lm*hk
Test formatif :
Proses program yang dikehendaki
Masukan
- Nomor induk mahasiswa (nama variable nim)
- Nama siswa (nama variable namasis)
- Nilai C (nama variable nilai_c)
Rumus
Nilai mutu huruf (nama variable index) ditentukan dari tabel di bawah ini
Keterangan nilai (nama variable KETNIL) ditentukan dari nilai ujian C, jika nila C diatas sama
dengan 56, maka variable KETNIL berisi “LULUS”, jika tidak variable KETNIL berisi “GAGAL”
Keluaran
Mutu huruf dan Keterangan Nilai
Tampilan dilayar
Mutu huruf :
Keterangan nilai :
Terjemahkanlah studi kasus tersebut kedalam bentuk algoritma, flowchart dan kedalam bahasa pemrograman
pascal?
Catatan : nomor induk mahasiswa, nama siswa dan nilai C diinput sedangkan mutu huruf, keterangan
otomatis
Program genap
Deklarasi
X : integer
Algoritma
Read (x)
Case x mod 2
0 : write (‘genap’)
1 : write (‘ganjil’)
Endcase
Program genap
Deklarasi
X : integer
Algoritma
Read (x)
If x > 0 then
Write (‘negatif’)
Else
If x < 0 then
Write (‘positif’)
Else
If x = 0 then
Write (‘nol’)
Endif
endif
endif
Program empatpersegipanjang
Deklarasi
Nomormenu:integer
Panjang,lebar:real
Luas,keliling,diagonal:real
Algoritma
Write (‘Menu empat persegi panjang’)
Write (‘1. Hitung luas’)
Write (‘2. Hitung keliling’)
Write (‘3. Hitung panjang diagonal’)
Write (‘4. Keluar program’)
Write (‘Masukan pilihan anda [1/2/3/4] : ’)
Read (nomormenu)
Case nomormenu
1: read (panjang, lebar)
luas←panjang*lebar
write (luas)
2: read (panjang, lebar)
keliling←2*panjang+2*lebar
write (keliling)
3: Read (panjang, lebar)
diagonal←sqrt(panjang*panjang+lebar*lebar)
write (diagonal)
4: write (‘keluar program… sampai jumpa’)
endcase
Latihan praktek :
Program nginap
Deklarasi
Lm : integer
X : char
Hk : real
Jml : real
Byrakh : real
Algoritma
Write (‘lama menginap : ‘)
Read (lm)
Write (‘harga kamar per hari : ‘)
Read (hk)
jml←lm*hk
while true do
write (‘jumlah beli : ‘,jml)
write (‘<<<< Pilihan >>>>’)
write (‘1. 300000 – keatas’)
write (‘2. 200000 < jml <= 300000’)
write (‘3. 100000 < jml <= 200000’)
write (‘4. Kebawah – 100000’)
write (‘4. Selesai’)
write (‘Pilihan anda: ‘)
read (x)
depend on (x)
x = ‘1’: byrakh←jml-(jml*0.3)
x = ‘2’: byrakh←jml-(jml*0.2)
x = ‘3’: byrakh←jml-(jml*0.1)
x = ‘4’: byrakh←jml
enddepend
write (‘Total bayar akhir : ‘,byrakh)
endwhile
Test formatif 1
Proses program yang dikehendaki
Masukan
- Banyaknya barang yang dibeli (nama variable qty)
- Harga satuan barang (nama variable hrgbrg)
Rumus
Jumlah bayar (nama variable jmlbyr) dihitung dari banyaknya barang yang dibeli dikali dengan
harga satuan barang. Jika jumlah bayar diatas 600000 dapat disecount 20%, jika jumlah barang di
atas 400000 dapat discount 15%, jika jumlah bayar diatas 200000 diapat discount 10%. Total bayar
akhir (nama variable byrakh) dihitung dari jumlah bayar dikurangi discount
Keluaran
Total bayar akhir
Tampilan di layar
Banyaknya barang :
Harga satuan :
Jumlah bayar :
Terjemahkanlah studi kasus tersebut kedalam bentuk algoritma, flowchart dan kedalam bahasa pemrograman
pascal?
Catatan : nomor induk mahasiswa, nama siswa dan nilai C diinput sedangkan mutu huruf, keterangan
otomatis
Test formatif 2
1. Buat algoritma untuk menentukan apakah suatu bilangan merupakan bilangan prima atau bukan,
kemudian buat flowchart untuk program tersebut !
2. Buat algoritma untuk mencetak N buah bilangan prima yang pertama, kemudian buat flowchart untuk
program tersebut !
3. Buat algoritma untuk menentukan jenis akar dari suatu persamaan kuadrat, kemudian buat flowchart
untuk program tersebut !
4. Buat algoritma untuk menghitung jumlah N suku dari deret aritmatika berikut :
Sn = 3 + 7 + 11 + …… + (4n-1)
5. Buat algoritma untuk menghitung nilai faktorial dari suatu bilangan, kemudian buat flowchart untuk
program tersebut !
6. Buat flowchart untuk mencetak pasangan nilai X dan Y dimana hubungan antara X dan Y memenuhi
persamaan Y = X3 – 2X +1 dan nilai x berubah dari –10 sampai 10 !
BAB III
ALGORITMA PERULANGAN
Inisialisasi dan terminasi tidak selalu harus ada, namun pada berbagai kasus inisialisasi umumnya
diperlukan.
<inisialisasi>
Awal pengulangan
Badan pengulangan
Akhir pengulangan
<terminasi>
While kondisi do
Aksi
Endwhile
Aksi dilaksananakan berulangkali selama kondisi bernilai true. Jika kondisi bernilai false, badan
pengulangan tidak akan dimasuki, yang berarti pengulangan selesai.
Test formatif :
Rubah algoritma pada latihan praktek 1 s.d 5 kedalam bentuk flowchart
Repeat
Aksi
Until kondisi
Notasi ini mendasarkan pengulangan pada kondisi Boolean. Aksi di dalam badan kalang diulang-ulang
sampai kondisi bernilai true. Dengan kata lain, jika kondisi masih false, proses pengulangan masih terus
dilakukan . karena proses pengulangan suatu saat harus berhenti, maka di dalam badan pengulangan harus
ada pernyataan yang mengubah nilai peubah kondisi.
Test formatif :
Rubah algoritma pada latihan praktek 1 s.d 5 kedalam bentuk flowchart dan terjemahkan kedalam bahasa
pemrograman pascal
Notasi ini mendasarkan pengulangan pada kondisi Boolean. Aksi di dalam badan kalang diulang-ulang
sampai kondisi bernilai true. Dengan kata lain, jika kondisi masih false, proses pengulangan masih terus
dilakukan . karena proses pengulangan suatu saat harus berhenti, maka di dalam badan pengulangan harus
ada pernyataan yang mengubah nilai peubah kondisi.
Latihan praktek 1:
Mencetak angka dari angka 1 s.d 10
Program cetaksampai10
Deklarasi
i : integer
Algoritma
For i←1 to 10 do
write (i)
endfor
Test formatif :
Rubah algoritma pada latihan praktek 1 s.d 4 kedalam bentuk flowchart dan terjemahkan kedalam bahasa
pemrograman pascal
Notasi ini mendasarkan pengulangan pada kondisi Boolean. Aksi di dalam badan kalang diulang-ulang
sampai kondisi bernilai true. Dengan kata lain, jika kondisi masih false, proses pengulangan masih terus
dilakukan . karena proses pengulangan suatu saat harus berhenti, maka di dalam badan pengulangan harus
ada pernyataan yang mengubah nilai peubah kondisi.
Program mencetakbanyak_halloworld
Deklarasi
I : integer
Algoritma
For i←10 downto 1 do
Write (i)
Endfor
Write (‘go….’)
Test Formatif
1. Buatlah algoritma untuk menghitung jumlah N buah bilangan ganjil pertama (yaitu 1+3+5+....)
catatan. N adalah bilangan bulat tidak negatif
2. Buatlah algoritma untuk menghitung jumlah bilangan ganjil dari 1 sampai N (yaitu 1+3+5+...+N).
(perhatikan perbedaan soal latihan ini dengan soal nomor 1)
BAB IV
BAHASA PEMROGRAMAN
Contoh Program
Listing Programnya
Uses Crt;
Begin
WriteLn( ‘Saya’ );
Write( ‘Belajar’ );
WriteLn( ‘Turbo’ );
Write( ‘Pascal’ );
Write( ‘Versi 7.0’ );
End.
Tekan Ctrl F9 untuk ekseskusi program
Tekan F5 untuk melihat hasilnya
Pemrograman Dasar kelas X semester 1 dan 2 | 25
Wahyu Sumantri Sutiar, S.T. SMK PGRI 1 KOTA SUKABUMI
Hasilnya :
Saya
Belajar Turbo
Pascal Versi 7.0
Tugas:
Buatlah Program cetak dilayar Biodata diri anda
Turbo Pascal memiliki 7 buah menu utama yang terdiri dari : File, Edit, Run, Compile, Options, Debug,
dan Break / Watch.
Table dibawah ini adalah hotkey yang digunakan dalam turbo pascal :
Kunci Fungsi Ekivalen menu
F1 Mengaktifkan jendela pertolongan.
F2 Menyimpan berkas yang ada pada editor. File / Save
F3 Memanggil program kedalam editor. File / Load
F4 Mengeksekusi program sampai posisi kursor. Run / Go to cursor
F5 Memperbesar atau memperkecil jendela yang aktif.
F6 Mengganti jendela yang aktif.
F7 Melacak kedalam subrutin. Run / Trace into
F8 Melompati pemanggil subrutin.
F9 Mengaktifkan perintah ‘Make’. Compile / Make
F10 Berpindah dari menu-menu ke jendela yang aktif.
Alt + F1 Memanggil jendela pertolongan yang terakhir dibaca.
Alt + F3 Memanggil jendela pertolongan yang terakhir dibaca.
Alt + F5 Memilih berkas untuk dimuat. File / Pick
Alt + F6 Memperlihatkan hasil eksekusi File / user screen
Alt + F9 Mengganti isi jendela yang aktif.
Alt + B Mengkompilasi program. Compile
Alt + C Mengaktifkan menu Break / Watch.
Alt + D Mengaktifkan menu compile.
Alt + E Mengaktifkan menu debug.
Alt + F Mengaktifkan editor.
Alt + O Mengakaktifkan menu file.
Alt + R Mengaktifkan menu option.
Alt + X Mengaktifkan menu run. Run / Program reset
Ctrl + F1 Keluar dari Turbo Pascal dan kembali ke DOS. Debug / Call Stack
Ctrl + F2 Menampilkan menu pertolongan bahasa. Debug / Evaluate
Ctrl + F3 Menghentikan pembetulan. B / Add Watch
Ctrl + F4 Menampilkan isi tumpukan. B / Toggle breakpoint
Ctrl + F7 Melakukan penghitungan atau mengubah nilai peubah. Run / Run
Ctrl + F8 Menambahkan ungkapan pada jendela watch.
Ctrl + F9 Toggles Breakpoint.
Ctrl + F10 Menjalankan program.
Menampilkan versi layar monitor
Menu File
Didalam menu File banyak submenu yang bisa dipilih misalkan saja perintah Load / F3 yang berfungsi untuk
memanggil berkas yang sudah tersimpan, dan banyak lainnya.
Submenu Load
Pilihan ini digunakan untuk memanggil program dari suatu folder atau directory ke dalam editor. Didalam
submenu ini anda juga bisa memilih submenu yang lain dengan hanya menekan tombol huruf depan dari
submenu yang dituju, contohnya anda mau ke submenu New, maka anda tinggal menekan huruf N.
Submenu Pick
Pilihan yang satu ini digunakan untuk mengambil salah satu dari beberapa buah program yang sebelumnya
telah dimuat ke dalam jendela Edit. Hal ini ditujukan agar kita tidak perlu repot-repot lagi mencarinya di
submenu load.
Submenu New
Program yang ada di editor akan dihapus dan program yang akan anda tulis dianggap sebagai program yang
baru dengan nama NONAME.PAS, nama ini bisa anda rubah ketika anda mau menyimpannya.
Submenu Write to
pilihan ini digunakan untuk menggantikan program lama dengan program yang baru (istilah kerennya
Overwrite…☺). Jika nama program anda sudah ada pada cakram atau folder maka ada verifikasi dari Turbo
Pascal untuk penggantian nama.
Submenu Directory
pilihan ini digunakan untuk menampilkan direktori dan nama-nama file yang anda inginkan. Anda juga bisa
menggunakan pilihan Load.
Submenu OS shell
Perintah ini digunakan bagi anda yang ingin ke tampilan DOS tetapi tanpa mematikan Turbo Pascalnya,
untuk kembali lagi ke Turbo Pascal, anda tinggal mengetikan “exit”, tetapi biasanya ketika anda sedang
membuat suatu program atau mengedit suatu program perintah ini tidak dapat dijalankan karena kurangnya
kapasitas memory.
Menu Edit
Perintah edit ini digunakan untuk mengaktifkan editor Turbo Pascal.
Submenu Make
Pilihan ini digunakan untuk mengaktifkan perintah make, jika file yang primer telah diberi nama, maka file
ini akan dikompilasi, jika tidak maka file yang terakhir yang sedang dimuat di editor akan dikompilasi..
Pilihan ini sangat berguna jika terdapat beberapa program yang secara fisik terpisah tetapi secara logikanya
merupakan suatu kesatuan.
Submenu Build
Perintah ini mirip dengan perintah make, hanya saja perintah build ini sifatnya bebas, sedangkan perintah
make hanya akan mengkompilasi file-file selain file yang digunakan.
Menu Options
Pilihan pada menu yang satu ini berfungsi mengkonfigurasi untuk mengoptimalkan penggunaan fasilitas-
fasilitas pada turbo pascal.
Submenu Compiler
Pilihan ini didalamnya pun masih banyak perintah yang lainnya seperti pengecekan batas, pengecekan
tumpukan dll, seperti yang anda lihat pada gambar di atas. contohnya pengecekan batas [Range checking]
adalah sama dengan {$R}. sekarang saya akan coba jelaskan satu persatu agar lebih jelas dari masing-masing
penggunaan ini.
Emulation [On] :
Mengaktifkan atau menonaktifkan linking dengan run – time yang mengemulasikan ke prosessor
numeric 8087. pilihan ini sama dengan penunjuk kompiler {$E}
Memory sizes:
Digunakan untuk mengkonfigurasi peta pengingat. Dengan penunjuk kompiler{$M}.
Stack Size:
ukuran segmen tumpukan maksimum 64 K dengan standart 16 K.
Submenu Linker
Pilihan ini digunakan untuk mengatur konfigurasi built in linker.
Segment :
Informasi segment [Nama, Ukuran, Awal dan Akhir segment dan kelasnya].
Public :
Informasi segment, semua nama-nama symbol dan alamatnya dan titik masukkan program.
Detailed :
segement, informasi symbol dan titik masukkan program dan nomor barisnya dan tabel-tabel modul.
Submenu Environment
Pilihan ini digunakan untuk memberitahukan Turbo Pascal dimana bisa ditemukan berkas yang akan
dikompilasi, di link dengan dilengkapi dengan menu-menu pertolongan.
Submenu Directories
Pilihan menu ini digunakan untuk menunjukkan kepada Turbo Pascal lokasi setiap direktori yang diperlukan.
Turbo directory :
Digunakan untuk menemukan berkas konfigurasi [.TP] dan berkas pertolongan [Turbo.HLP].
Include Directories :
Digunakan untuk menentukan direktori yang berisi Include File.
Unit Directories :
Digunakan untuk memberitahu TP dimana berkas-berkas unit berada.
Object Directories :
Digunakan untuk menentukan direktori yang berisi berkas [.OBJ].
Submenu Parameters
Digunakan untuk memberikan parameter baris perintah [Command Line parameters] pada program-program
yang akan dijalankan.
Menu Debug
Pilihan-pilihan yang ada dalam menu ini terutama digunakan untuk melacak nilai-nilai perubah, mencari
letak suatu fungsi atau prosedur dan lain-lain.
• Smart : debugger akan melihat kode yang sedang dieksekusi untuk melihat apakah perlu
menampilkan hasilnya ke layar.
• Always : pilihan ini akan menyebabkan layar dipindah setiap kali suatu statement dieksekusi.
• Never : pilihan ini akan memberitahukan debugger untuk tidak melakukan pemindahan layar.
Tahap 1
1. Pastikan kalian telah memliki aplikasi Dos Box. Dos Box yang dipakai adalah versi 0.74 yang
merupakan versi terbaru.
2. Buat sebuah folder di Drive C bernama TP7, setelah itu copy seluruh isi folder turbo pascal 7.0 ke
folder TP7 itu.
3. Install aplikasi Dos Box 0.74
4. Setelah selesai di install, bukalah aplikasi Dos box
5. Lalu ketik mount c c:\TP7, lalu enter
6. Setelah mounting selesai ketik c:, lalu enter
7. Terakhir ketik bin\tpx.exe, lalu enter.
Tahap 2
Jika program Turbo Pascal sudah dijalankan, ketik seperti berikut ini.
1. program coba; ,lalu enter
2. uses crt; ,enter
3. var nama: string; ,enter
4. Begin enter
5. Lalu tab sekali. write('masukan nama anda:'); readln (nama); enter
6. clrscr; enter
7. write ('HI',nama, 'apa kabar?'); enter
8. Hapus tab nya, Terakhir ketik End.
9. Lalu tekan alt+f, lalu save as ( nama program harus huruf kapital, contoh PROGRAM )
10. Tekan compile untuk mengubah program tersebut menjadi .exe
11. Untuk mencoba program tekan alt+run, lalu run
12. Jika sudah berhasil ketik apa saja untuk kembali
13. Kemudian Close Dos Box nya
Tahap 3
Untuk menjalankan program tersebut, buka kembali Dos Box nya. Lalu lakukan langkah berikut.
1. Ketik mount c c:\TP7
2. Setelah berhasil di mount ketik c:
3. Ketik nama program yang kalian save, sebagai contoh PROGRAM.exe
4. Lalu akan muncul pertanyaan " Masukan nama anda? "
5. Ketiklah nama anda
6. Terakhir akan muncul tulisan " hai..... apa kabar? "
Jika sudah sampai pada tahap terakhir, berarti kalian sudah berhasil menggunakan progrma turbo pascal
tersebut. Tetapi jika tidak sampai tahap terakhir, maka kalian melakukan kesalahan pada tahap kedua
karena tahap 2 sama sekali tidak boleh ada kesalahan dalam hal pengetikkan kode di-atas.
Sebelum bekerja, tentukan lebih dahulu tempat Program anda akan disimpan. Secara default, Pascal
menyimpan program di folder c:\Program Files\TP\Work\.
Kita dapat membuat folder lain sebagai tempat menyimpan program agar lebih mudah bagi kita untuk
mengetahuinya. Buat Folder lebih dahulu mis di drive D dengan nama PASCAL.
Jika folder PASCAL sudah selesai, aktifkan folder tersebut dengan cara :
Pilih menu File, Change Dir… , kemudian hapus C:\PROGRA~1\TP\WORK\ ..
Ketik folder seperti berikut : D:\PASCAL\ kemudian tekan Enter
Folder PASCAL sudah aktif sehingga program yang dibuat akan tersimpan di folder PASCAL.
Menyimpan Program
• Teks program yang sudah diketik harus disimpan dengan cara : Pilih Menu File, Save. Ketik nama file
Program.
• Nama file maksimum 8 karakter. Jika anda mengetik lebih dari 8 karakter, maka akan dipotong oleh
program.
• Nama File Program Pascal secara otomatis akan diberi ekstensi PAS, misalnya kita memberi nama
CONTOH, maka pascal akan menyimpan dengan nama CONTOH.PAS.
• Cara cepat untuk menyimpan file program anda dengan menekan tombol F2.
Setiap ada perubahan edit dalam program, simpan lebih dahulu (Tekan F2) sebelum dijalankan.
• Jika file program yang sedang dibuka, anda ingin menyimpan dengan nama yang lain, maka simpan
dengan cara : Pilih menu File, Save As. Kemudian ketik nama filenya.
• Kesalahan pada gambar di atas menyatakan bahwa “ada kesalahan tanda ; (titik koma) ditemukan”.
Lokasi kesalahan terletak di posisi kursor.
• Setelah diperiksa, maka kesalahan terletak pada baris sebelumnya (di atas posisi kursor) dimana pada
pernyataan readlan(b) tidak ada tanda ; perbaiki dengan menambahkan tanda titik koma, kemudian
simpan (F2) dan jalankan kembali.
Menutup Window
Kita dapat membuka beberapa file pada saat bekerja. Setiap File ditampilkan dalam window masing-masing
namun bertupuk sehingga hanya file yang paling depan yang tampak di layar. Cara melihat file yang aktif :
Pilih menu Window, Cascade. Klik file yang ingin ditampilkan di layar.
BAB V
TIPE DATA, VARIABEL, OPERATOR DAN EKSPRESI
TIPE Data
Tipe data yang dikenal dalam bahasa pascal antara lain :
Tipe data sederhana / Jenis data yang standar (Dasar)
1. Integer
2. Real
3. Karakter
4. Boolean
Tipe data non standar (user defined)
1. Enumerated
2. Sub-range
Tipe data berstuktur
1. Array
2. Record
3. Set
4. File
Jenis data Pointer
Integer
Jenis data ini merupakan nilai bilangan bulat, yang terdiri atas integer positif, integer negatif dan nol. Pada
TURBO PASCAL jenis data ini di bagi atas beberapa bagian.
Tipe Ukuran memori Jangkauan nilai
(dalam byte)
BYTE 1 0..255
SHORTINT 1 -128..127
INTEGER 2 -32768..32767
WORD 2 0..65535
LONGINT 4 -2147483648..2147483647
Var
Jumlah : byte;
Begin
Jumlah := 200;
WriteLn(‘Nilai JUMLAH = ‘,Jumlah);
End.
Hasilnya bila dijalankan :
Real
Penulisan untuk jenis data ini selalu menggunakan titik desimal. Nilai konstanta numerik real berkisar dari
1E-38 sampai dengan 1E+38 dengan mantissa yang signifikan sampai dengan 11 digit. E menunjukkan nilai
10 pangkat. Nilai konstanta numerik real menempati memori sebesar 6 byte.
Contoh :
123.45
12345. salah, titik desimal tidak boleh dibelakang
12E5
12E+5
-12.34
.1234 salah, titik desimal tidak boleh dimuka
Karakter
Yang dimaksud dengan jenis data ini adalah karakter tunggal atau sebuah karakter yang ditulis diantara tanda
petik tunggal, seperti misalnya ‘A’, ’a’, ’!’, ’5’ dsb.
Blank.
033 !
048 0
076 L
dst
String
Nilai data string merupakan urut-urutan dari karakter yang terletak di antara tanda petik tunggal. Nilai data
string akan menenpati memori sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Bila panjang
dari suatu string di dalam deklarasi variabel tidak disebutkan, maka dianggap panjangnya adalah 255
karakter.
Contoh :
Var
Kampus : string[10];
Begin
Kampus := ‘Gunadarma’;
Write(Kampus);
End.
Boolean
Jenis data ini mempunyai nilai TRUE atau FALSE.
Setelah jenis data ini dideklarasikan, maka selanjutnya kita dapat mendeklarasikan suatu variabel yang
berjenis data sama dengan jenis data ini.
Misalnya :
TYPE nama_hari = (sen,sel,rab,kam,jum,sab,ming);
VAR libur : nama_hari;
Fungsi standar yang dapat digunakan pada jenis data ini adalah :
Misalnya :
Sub-Range.
Jenis data ini berupa range dari suatu kumpulan data yang mempunyai urutan..
Bentuk umum deklarasinya adalah :
Contoh :
TYPE jam_kuliah = 1 .. 10;
tanggal = 1 .. 31;
abjad = ‘A’ .. ‘Z’;
Variabel
Perintah Dasar/Sederhana Pascal
Write ( ‘Text/tulisan’,Variabel);
Perintah untuk menampilkan atau cetak dilayar monitor tanpa pindah baris
WriteLn( ‘Text/Tulisan’,Variabel);
Perintah untuk menampilkan/cetak dilayar monitor lalu pindah baris kebawah
Read(Variabel);
Perintah untuk menginput/mengisi data tanpa pindah baris
ReadLn(Variabel);
Perintah untuk menginput/mengisi data lalu pindah baris
Digunakan untuk penamaan elemen-elemen deklarasi seperti Label, Constanta, type, variabel, procedure,
function
Syarat Identifier Contoh :
Diawali huruf Luas_Segi_Tiga
Tidak boleh ada spasi/blank LuasSegiTiga
Tidak boleh menggunakan reserved word LuasS3
Tidak boleh menggunakan simbol khusus,
LS3
kecuali underscore(tanda bawah)
Panjang maximal 63 character
Deklarasi Label
Deklarasi label digunakan untuk melompati beberapa perintah program. Memiliki arah dan tujuan yaitu
dengan menggunakan GOTO
Program Dgn_Label; Contoh Tipe Dalam Program
Uses Crt;
Label A,B,C; Uses Crt;
Begin Type Pecahan = Real;
Clrscr; Bulat = Integer;
Writeln(‘Text1’); Goto A; Var A,T : Bulat;
Writeln(‘Text2’); Ls3 : Pecahan;
A:Writeln(‘Text3’); Goto B; Begin
Writeln(‘Text4’); Clrscr;
B:Writeln(‘Text5’); Goto C; Write(‘Masukkan Nilai Alas : ‘);
Writeln(‘Text6’); Readln(A);
C:Readln; Write(‘Masukkan Nilai Tinggi : ‘);
End. Readln(T);
Ls3:=(A*T)/2;
Hasilnya Writeln(‘Luas Segitiga:’,Ls3:8:1);
Text1 Readln;
Text3 End.
Text5
Uses Crt;
Const Kampus=‘Bsi’; {Tipe String}
Nrata=2.5; {Tipe Real}
Ntotal=55; {Tipe Integer}
Cek =True; {Tipe Boolean}
Huruf =‘A’; {Tipe Char}
BEGIN Hasilnya :
Clrscr;
Writeln(‘Nama Kampus :’,Kampus); Nama Kampus :Bsi
Writeln(‘Nama Kampus :’,Kampus:3); Nama Kampus :Bsi
Writeln(‘Nama Kampus :’,Kampus:6); Nama Kampus : Bsi
Writeln(‘Nilai Rata :’,Nrata); Nilai Rata :2.500000e+00
Writeln(‘Nilai Rata :’,Nrata:3:0); Nilai Rata :3
Writeln(‘Nilai Rata :’,Nrata:6:1); Nilai Rata : 2.5
Writeln(‘Nilai Total :’,Ntotal:2); Nilai Total :55
Writeln(‘Nilai Total :’,Ntotal:5); Nilai Total : 55
Writeln(‘Cek Boolean :’,Cek); Cek Boolean :True
Writeln(‘Cek Boolean :’,Cek:7); Cek Boolean : True
Writeln(‘Huruf Abjad :’,Huruf); Huruf Abjad :A
Writeln(‘Huruf Abjad :’,Huruf:3); Huruf Abjad : A
Readln;
End.
Test Formatif
1. Rubah Program Labelnya dgn Layout sbb
TEXT2 TEXT4 TEXT6
2. Buat luas dan Keliling lingkaran dengan menggunakan deklarasi type dan Var
Assignment Operator
Assignment operator (operator pengerjaan) menggunakan simbol titik dua diikuti oleh tanda sama dengan
(:=).
Contoh :
A:=B;
Binary Operator
Digunakan untuk mengoperasikan dua buah operand. Operand dapat berbentuk konstanta ataupun
variabel. Operator ini digunakan untuk operasi aritmatika yang berhubungan dengan nilai tipe data
integer dan real.
Operator Operasi Tipe operand Tipe hasil
* Perkalian real,real real
integer,integer integer
real,integer real
DIV Pembagian bulat integer,integer integer
/ Pembagian real real,real real
integer,integer real
real,integer real
MOD Sisa pembagian integer,integer integer
+ Pertambahan real,real real
integer,integer integer
real,integer real
- pengurangan real,real real
integer,integer integer
real,real real
Contoh :
15*5 hasilnya 75
20/3 hasilnya 6.6666666667E+00
20 div 3 hasilnya 6
20 mod 3 hasilnya 2
Unary operator
Operator ini hanya menggunakan sebuah operand saja. Dapat berupa unary minus dan unary plus. Unary
minus digunakan untuk menunjukkan nilai negatif, baik pada operang numerik real maupun integer. Unaru
plus adalah operator untuk memberai tanda plus.
Contoh :
-5 +7
-2.5 +2.5
Bitwise operator
Digunakan untuk operasi bit per bit pada nilai integer. Terdiri dari operator NOT, AND, OR, XOR, Shl, Shr.
Relational operator
Relational operator digunakan untuk membandingkan hubungan antara dua buah operand dan akan
didapatkan hasil tipe boolean, yaitu True atau False. Terdiri dari operator : =, <, >, <=, >=, <>
Logical operator
Terdapat 4 buah logical operator yaitu : NOT, AND, OR dan XOR. Operator ini bekerja dengan nilai-nilai
logika, yaitu True dan False.
Set operator
Digunakan untuk operasi himpunan.
String operator
Digunakan untuk operasi string. Hanya ada sebuah operator string saja, yaitu operator + yang
digunakan untuk menggabungkan dua buah nilai string.
Contoh :
Nama1 := ‘Wahyu‘;
Nama2 := ‘Sumantri Sutiar’;
Nama3 := Nama1 + Nama2;
Buatlah
ContohProgram
ProgramLuas
TipeSegi
DataTiga
Sederhana Cth. Program Operator
Test Formatif
1. Buatlah Program Luas dan Keliling Lingkaran
2. Buatlah Program Persegi Panjang
BAB VI
STRUKTUR KONTROL PERCABANGAN
BAB VII
STRUKTUR KONTROL PERULANGAN
Looping ( Perulangan )
1. Statement For....Do (Perulangan Counter)
B.U : For variabel_kontrol : = nilai_awal To nilai_akhir Do
Statement ;
B.U : For variabel_kontrol:= nilai_awal DownTo nilai_akhir Do
Statement ;
2. Statement While ... Do (Perulangan Kondisi Terpenuhi)
B.U : While ungkapan_logika Do
Statement ;
3. Statement Repaet...Until (Perulangan Kondisi Tidak Terpenuhi)
B.U : Repeat
Statement ;
Until ungkapan_logika ;
4. Buatlah deret
1. 2 1 . 4 1 . 6 1 . 8
2. 2 2 . 4 2 . 6 2 . 8
BAB VIII
PENGEMBANGAN ALGORITMA APLIKASI
Tujuan Pembelajaran
Setelah mengikuti kegiatan belajar 8 ini siswa diharapkan dapat :
1) Memahami keseluruhan konsep algoritma dalam penyelesaian masalah kompleks
2) Mengalisis kesalahan dalam program
Pemrograman Dasar kelas X semester 1 dan 2 | 43
Wahyu Sumantri Sutiar, S.T. SMK PGRI 1 KOTA SUKABUMI
Uraian Materi
1. Pertemuan 1: Definisi
2. Pertemuan 2: Analisa Pemecahan Masalah
3. Pertemuan 3: Debugging dan error handling
4. Pertemuan 4: Studi kasus proyek aplikasi program komputer