Anda di halaman 1dari 32

KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI

UNIVERSITAS NEGERI SEMARANG (UNNES)


Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 1 dari 32 27 Februari 2017

BAHAN AJAR/DIKTAT

ALGORITMA DAN PEMROGRAMAN


18P02224
3 SKS

TEKNIK INFORMATIKA
FMIPA
UNIVERSITAS NEGERI SEMARANG
2019

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 2 dari 32 27 Februari 2017

VERIFIKASI BAHAN AJAR

Pada hari ini Rabu tanggal 19 bulan Agustus tahun 2019 Bahan Ajar Mata
Kuliah Algoritma dan Pemrograman Program Studi Teknik Informatika Fakultas
Matematika dan Ilmu Pengetahuan Alam telah diverifikasi oleh Ketua Jurusan
Ilmu Komputer
Semarang, 19 Agustus 2019
Ketua Jurusan Ilmu Komputer Tim Penulis

Endang Sugiharti, S.Si., M.Kom Endang Sugiharti, S.Si., M.Kom


NIP 197401071999032001 NIP 197401071999032001

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 3 dari 32 27 Februari 2017

PRAKATA
Algoritma memegang peranan penting dalam bidang pemrograman. Algoritma
menjadi dasar dalam menyelesaikan suatu permasalahan menggunakan
komputer. Apabila algoritma telah dibuat maka langkah selanjutnya adalah
membuat kode program untuk menyelesaikan permasalahan tersebut.
Pada mata kuliah ini akan dibahas banyak berkaitan dengan algoritma dan
pemrograman komputer, meliputi pengantar algoritma, dasar-dasar algoritma,
aturan penulisan algoritma, Konsep Tipe Data, Variabel, Konstanta, dan
operator, runtunan, penyeleksian kondisi, konsep counter dan accumulator,
perulangan, prosedur, fungsi, array, searching dan sorting.

Penyusun

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 4 dari 32 27 Februari 2017

DESKRIPSI MATAKULIAH

Mata kuliah ini merupakan mata kuliah yang memberikan bekal kepada
mahasiswa tentang pembuatan algoritma dalam memecahkan suatu masalah.
Materi yang diberikan meliputi: pengantar algoritma, dasar-dasar algoritma,
aturan penulisan algoritma, Konsep Tipe Data, Variabel, Konstanta, dan
operator, runtunan, penyeleksian kondisi, konsep counter dan accumulator,
perulangan, prosedur, fungsi, array, searching dan sorting.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 5 dari 32 27 Februari 2017

DAFTAR ISI
Prakata i
Daftar Isi ii
Daftar Gambar vii
Daftar Tabel viii
Bab I Pengantar Algoritma dan Pemrograman 1
A. Deskripsi Singkat 1
B. Capaian pembelajaran pertemuan 1
C. Pengantar Algoritma dan Pemrograman 1
D. Rangkuman 4
E. Pertanyaan/Diskusi 4
Bab II Fungsi Input Output dan Runtunan
A. Deskripsi Singkat
B. Capaian pembelajaran pertemuan
C. Fungsi Input Output dan Runtunan
D. Rangkuman
E. Pertanyaan/Diskusi
Bab III Struktur Seleksi Bersyarat
A. Deskripsi Singkat
B. Capaian pembelajaran pertemuan
C. Struktur Seleksi Bersyarat
D. Rangkuman
E. Pertanyaan/Diskusi
Bab IV Perulangan
A. Deskripsi Singkat
B. Capaian pembelajaran pertemuan
C. Perulangan
D. Rangkuman
E. Pertanyaan/Diskusi

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 6 dari 32 27 Februari 2017

Bab V Prosedur, Fungsi, dan Rekursi


A. Deskripsi Singkat
B. Capaian pembelajaran pertemuan
C. Prosedur, Fungsi, dan Rekursi
D. Rangkuman
E. Pertanyaan/Diskusi
Bab VI Array
A. Deskripsi Singkat
B. Capaian pembelajaran pertemuan
C. Array
D. Rangkuman
E. Pertanyaan/Diskusi
Bab VII Searching
A. Deskripsi Singkat
B. Capaian pembelajaran pertemuan
C. Searching
D. Rangkuman
E. Pertanyaan/Diskusi
Bab VIII Sorting
A. Deskripsi Singkat
B. Capaian pembelajaran pertemuan
C. Sorting
D. Rangkuman
E. Pertanyaan/Diskusi
Daftar Pustaka

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 7 dari 32 27 Februari 2017

BAB I
PENGANTAR ALGORITMA DAN PEMROGRAMAN

A. Deskripsi Singkat
Pada Bab I ini berisi materi pengantar algoritma. Materi pengantar
algoritma dan pemrograman meliputi definisi, dasar-dasar algoritma,
aturan penulisan teks algoritma sampai kepada konsep tipe data,
variabel, konstanta, dan operator.

B. Capaian Pembelajaran Matakuliah

Aspek Kognitif
Mahasiswa mampu menjelaskan pengertian algortima, dasar-dasar
algoritma, dan mengimplementasikan aturan penulisan teks algoritma.
Aspek Psikomotorik
Sigap dan terampil mengikuti instruksi perkuliahan dalam hal materi dan
penunjang kuliah, kreatif mencari literatur selain yang disampaikan oleh
Dosen.
Aspek Afektif
Bertanggung jawab, disiplin, serta peduli membantu mahasiswa lain
dalam menguasai.

C. Pengantar Algoritma dan Pemrograman

Algoritma memegang peranan penting dalam bidang pemrograman.


Sebegitu pentingnya suatu algoritma, sehingga perlu dipahami konsep dasar
algoritma. Apalagi untuk seorang programer, tentu diperlukan suatu algoritma
sehingga dapat membuat program yang lebih efektif dan efisien. Bagi

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 8 dari 32 27 Februari 2017

kebanyakan orang, algoritma sangat membantu dalam memahami konsep


logika pemrograman. Pada umumnya algoritma kurang lebih sama dengan
suatu prosedur yang sering dilakukan setiap hari, misalnya prosedur untuk
mengganti ban bocor/pecah, prosedur pemakaian telepon umum, prosedur
membuat kue dan lain-lain. Dalam bidang komputer, misalnya EDP
(Elektronik Data Processing) atau MIS (Management Information System),
algoritma sering dimanfaatkan untuk menyelesaikan suatu masalah atau
untuk proses pengambilan keputusan. Seorang sistem analisis (analisist
system) tentunya menggunakan algoritma untuk merancang suatu sistem.
Bagi seorang programer, algoritma digunakan untuk membuat modul-modul
program.
Agar algoritma dapat dilaksanakn dalam komputer maka algoritma
harus di ubah ke notasi bahasa pemrograman sehingga disebut program.
Jadi program adalah merupakan perwujudan atau implementasi dari
algoritma. Program ditulis dalam satu bahasa pemrograman. Kegiatan
menulis program disebut dengan pemrograman (programming). Orang yang
menulis program disebut pemrogram (programmer). Tiap langkah di dalam
program disebut pernyataan atau instruksi. Jadi program adalah: “ Sederetan
instruksi yang sistematis dan logis yang menggunakan sintaks tertentu untuk
menyelesaikan permasalahan”.
Kata “algoritma” berasal dari latinisasi nama Al-Khawarizmi,
sebagaimana tercantum pada terjemahan karyanya dalam bahasa Latin pada
abad ke-12, yakni algorithmi de numero Indorum, Awalnya, kata
“algorisma”adalah sitilah yang merujuk pada aturan-aturan aritmetis untuk
menyelesaikan persoalan menggunakan bilangan numerik Arab (sebenarnya
dari India). Kemudian, pada abad ke-18, istilah ini berkembang menjadi
algortima yang mencakup semua prosedur atau urutan langkah yang jelas
dan diperlukan untuk menyelesaikan suatu permasalahan.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 9 dari 32 27 Februari 2017

Hal yang pertama ditekankan dalam alur pemikiran untuk


menyelesaikan suatu pekerjaan yang dituangkan secara tertulis adalah alur
pikiran. Sehingga, algoritma seseorang bisa berbeda dengan algoritma orang
lain, Adapun penekanan kedua adalah tertulis, yang artinya dapat berupa
kalimat, gambar atau tabel tertentu.
Ada beberapa definisi algoritma diantaranya adalah :
1) Algoritma adalah penyusunan langkah-langkah penyelesaian masalah
dalam bentuk kalimat dengan jumlah kata terbatas tetapi tersusun secara
logis dan matematis.
2) Algoritma adalah suatu prosedur yang jelas untuk menyelesaikan suatu
persoalan dengan menggunakan langkah-langkah tertentu dan terbatas
jumlahnya.
3) Algoritma adalah susunan langkah yang pasti, yang bila diikuti maka akan
mentransformasi data input menjadi output yang berupa informasi.
Jadi dapat disimpulkan bahwa definisi algoritma adalah susunan langkah-
langkah sistematis, logis, dan terhingga dalam pemecahan suatu masalah.

Ciri – ciri algoritma

Menurut Knurth Donald E, dalam buku The Art Of Computer


Programming. Addison-Wesley Published Company 1973. Menyatakan bahwa
terdapat lima ciri penting yang harus dimiliki sebuah algoritma, yaitu :

1. Algoritma mempunyai awal dan akhir, suatu algoritma harus berhenti


setelah mengerjakan serangkaian tugas. Dengan kata lain, suatu algoritma
memiliki langkah yang terbatas.
2. Setiap langkah harus didefinisikan dengan tepat, sehingga tidak memiliki
arti ganda, tidak membingungkan (not ambiguous)
3. Memiliki masukan (input) atau kondisi awal

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 10 dari 32 27 Februari 2017

4. Memiliki keluaran (output) atau kondisi akhir


5. Algoritma harus efektif, bila diikuti benar-benar maka akan menyelesaikan
masalah.

Sifat algoritma

Sesuai dengan ciri-ciri dari algoritma pada penjelasan di atas, maka


dapat disimpulkan bahwa sifat suatu algoritma adalah :

1. Input : Suatu algoritma mempunyai input atau kondisi awal sebelum


dilaksanakan, bias berupa nilai-nilai peubah yang diambil dari himpunan
khusus.
2. Output : Suatu algoritma akan menghasilkan output setelah dilaksanakan.
Suatu algoritma akan mengubah sebuah kondisi awal menjadi kondisi
akhir, dimana nilai output diperoleh dari nilai input yang telah diproses
melalui algoritma.
3. Definiteness : Langkah-langkah yang dituliskan dalam algoritma terdefini
dengan jelas sehingga mudah dilaksanakan oleh pengguna algoritma.
4. Finiteness : Suatu algoritma harus memiliki kondisi akhir atau output
setelah sejumlah langkah yang terbatas jumlahnya dilakukan terhadap
setiap kondisi awal atau input yang diberikan.
5. Effevtiveness : Setiap langkah dalam algortima dilaksanakan dalam suatu
selang waktu tertentu sehingga pada akhirnya didapatkan solusi sesuai
dengan yang diharapkan.
6. Generality : Langkah-langkah algoritma berlaku untuk setiap himpunan
input yang sesuai dengan persoalan yang diberikan, tidak hanya untuk
himpunan tertentu.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 11 dari 32 27 Februari 2017

Dasar – dasar algoritma


a. Struktur dasar Algoritma
1. Sequence

Pada Struktur Runtunan , langkah-langkah dilakukan dan diproses


secara berurutan. Dimulai dari langkah pertama , kemudian kedua
, ketiga , dan seterusnya hingga akhir. Pada dasarnya suatu
program memang menjalankan suatu proses dari yang dasar
seperti struktur seperti ini .

Berikut contoh program yang dijalankan menggunakan struktur


Runtunan (Sekuensial)

2. Selection

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 12 dari 32 27 Februari 2017

Struktur Seleksi dalam bahasa inggris (selection) atau


Percabangan adalah struktur algoritma yang menyatakan
pemilihan langkah yang didasarkan oleh suatu kondisi atau
pengambilan suatu keputusan . Ciri utama dari struktur
Percabangan adalah adanya bentuk flowchart belah ketupat
(decision) .

Contoh dari Struktur Seleksi / Percabangan pada saat


pengambilan keputusan diantaranya bila terdapat diskon yang
berbeda berdasarkan jumlah barang yang ingin dibeli

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 13 dari 32 27 Februari 2017

3. Looping

Struktur perulangan memberikan suatu perintah atau tindakan


yang dilakukan beberapa kali . Misalnya bila kita menulis “Saya
lagi belajar Algoritma Pemrograman” , diproses 10 kali , maka agar

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 14 dari 32 27 Februari 2017

efisien kita menggunakan struktur perulangan daripada


menuliskannya satu-persatu hingga sepuluh kali.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 15 dari 32 27 Februari 2017

Aturan penulisan teks algoritma


Berikut ini adalah aturan penulisan Algoritma.
1. JUDUL
{ Kondisi awal (IS):………………. }
{ Kondisi akhir (FS):………………. }
Judul adalah bagian teks algoritma yang digunakan sebagai tempat
pendefinisian nama dengan menentukan apakah teks tersebut adalah
program, prosedur, atau fungsi. Nama judul algoritma sebaiknya singkat
namun cukup menggambarkan apa yang akan dilakukan oleh algoritma
tersebut.

Syarat pemberian nama


a. Tidak boleh ada spasi,
contoh : menghitung luas lingkaran (salah), seharusnya
menghitungluaslingkaran atau menghitung_luas_lingkaran
b. Tidak boleh ada symbol khusus kecuali symbol “ _ ” underscroll.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 16 dari 32 27 Februari 2017

c. Penamaan tidak boleh diawali dengan angka.


d. Harus interpretative (sesuai dengan apa yang dilakukan algoritma).

Contoh :
Luas_Persegi_Panjang
{ Algoritma menghitung luas persegi panjang }

2. Kamus(Deklarasi)
Kamus sebagai tempat untuk pendefinisian : nama tipe data, nama
konstanta, nama variable, nama fungsi, nama prosedur. Semua nama itu
baru dapat dipakai dalam algoritma jika telah didefinisikan dahulu dalam
kamus. Penulisan sekumpulan nama dalam kamus sebaiknya
dikelompokan manurut jenis nama itu.
Nama variable belum terdefinisi nilainya ketika didefinisikan.
Pendefinisian nama konstanta sekaligus memberikan harga konstanta
tersebut, pendefinisian nama fungsi dilakukan sekaligus dengan nama
domain / range serta spesifikasinya. Pendefinisian nama prosedur
sekaligus dengan pendefinisian parameter (jika ada) dan spesifikasi
prosedurnya.

Contoh :
Deklarasi :
Panjang = integer {tipe data bilangan bulat}
Lebar = integer
Luas = real {tipe data bilangan pecahan}

3. Algoritma(Deskripsi)
Algoritma adalah bagian inti dari suatu algoritma yang berisi instruksi atau

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 17 dari 32 27 Februari 2017

pemanggilan aksi yang telah didefinisikan. Komponen teks algoritma


dalam pemrograman prosedural dapat berupa:
a. Intruksi dasar seperti input/output dan assignment
b. Sequence (runtutan)
c. Analisa kasus
d. Looping (perulangan)
Setiap langkah algoritma dibaca dari atas ke bawah. Urutan deskripsi
atau algoritma penulisan menentukan urutan langkah pelaksanaan
perintah.
Perintah dalam algoritma
1. Memasukan nilai / harga
a.Secara langsung, maksudnya adalah nilai telah di isi oleh programmer
Contoh : a <— 5
b.Secara tidak langsung, maksudnya, nilai di isi oleh user.

Contoh :
Deskripsi :
input (panjang, lebar)
luas <-- panjang * lebar
output (luas)

Bahasa Pemrograman
Berdasarkan aplikasi kegunaannya, bahasa pemograman dapat digolongkan
menjadi dua kelompok, yaitu :
1. Bahasa pemograman bertujuan khusus (Specific purpose programming
language). Yang termasuk kelompok ini adalah Cobol (untuk terapan
bisnis dan administrasi), Fortran (aplikasi komputer ilmiah), bahasa
assembly (aplikasi pemograman mesin), prolog (aplikasi kecerdasan
buatan), bahasa-bahasa simulasi, dan sebagainya.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 18 dari 32 27 Februari 2017

2. Bahasa pemograman bertujuan umum (general purpose programming


language) yang dapat digunakan untuk berbagai aplikasi. Yang termasuk
kelompok ini adalah bahasa Pascal, Basic, dan C, C++.

Berdasarkan “kedekatan” bahasa pemograman apakah lebih condong ke


bahasa mesin atau ke bahasa manusia, maka bahasa pemograman juga
dapat 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 (machine language). Bahasa mesin adalah
sekumpulan kode biner (0 dan 1). Bahasa assembly dimasukkan kedalam
kelompok ini karena notasi yang dipakai dalam bahasa ini merupakan
bentuk manusiawi dari bahasa mesin, dan untuk melaksanakan
instruksinya masih diperlukan penerjemahan (oleh assembler) ke dalam
bahasa mesin.
2. Bahasa tingkat tinggi
Bahasa jenis ini membuat program menjadi lebih mudah dipahami, lebih
manusiawi dan lebih dekat ke bahasa manusia (bahasa inggris terutama).
Kelemahannya, bahasa ini tidak langsung diterjemahkan oleh komputer,
tetapi harus menggunakan translator bahasa atau yang biasa kita sebut
compiler (kompilator) sebelum di eksekusi oleh CPU. Contoh jenis bahasa
tingkat tinggi adalah Pascal, PL/I, Ada, Cobol, Basic, Fortran, C, C++, dan
sebagainya

Konsep tipe data, variabel, konstanta dan operator


1. Tipe Data
Tipe data adalah jenis data yang dapat diolah oleh komputer untuk
memenuhi kebutuhan dalam pemrograman komputer. Setiap variabel
atau konstanta yang ada dalam kode program, sebaiknya kita tentukan

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 19 dari 32 27 Februari 2017

dengan pasti tipe datanya. Ketepatan pemilihan tipe data pada variabel
atau konstanta akan sangat menentukan pemakaian sumberdaya
komputer (terutama memori komputer). Salah satu tugas penting seorang
programmer adalah memilih tipe data yang sesuai untuk menghasilkan
program yang efisien dan berkinerja tinggi.
Tipe data dibagi menjadi 3, yaitu :
a. Tipe Sederhana
1. Numeric
Tipe data numeric digunakan pada variabel atau konstanta
untuk menyimpan nilai dalam bentuk bilangan atau angka. Semua
bahasa pemrograman menyediakan tipe data numeric, hanya berbeda
dalam jenis numeric yang diakomodasi.
Jenis yang termasuk dalam tipe data numeric antara lain
integer (bilangan bulat), dan float (bilangan pecahan). Selain jenis,
dalam bahasa pemrograman juga diterapkan presisi angka yang
digunakan, misalnya tipe data Single adalah tipe data untuk bilangan
pecahan dengan presisi yang terbatas, sedangkan tipe data Double
adalah tipe data untuk bilangan pecahan dengan presisi yang lebih
akurat.
2. Boolean
Nama tipe data Boolean diambil dari nama seseorang
matematikawan dari Inggris yang bernama George Boole.
Tipe data Boolean digunakan untuk menyimpan nilai
True/False (Benar/Salah). Pada sebagian besar bahasa pemrograman
nilai 1 menunjukkan True dan 0 melambangkan False. Tipe data ini
banyak digunakan untuk pengambilan keputusan pada struktur
percabangan dengan IF … THEN atau IF … THEN … ELSE.
3. Character

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 20 dari 32 27 Februari 2017

Tipe data Character. Bersama dengan tipe data numeric,


character merupakan tipe data yang paling banyak digunakan. Tipe
character didefinisikan merupakan himpunan karakter. Data yang
termasuk ke dalam karakter adalah semua huruf abjad, semua tanda
baca, angka, dan karakter – karakter khusus seperti ‘&’, ‘@’, ‘%’ All.
Karakter tipe data kosong (null) adalah karakter yang panjangnya nol.
Tipe data character kadang disebut sebagai char atau string. Nama
tipe karakter biasanya ditulis dengan kata char. Untuk menuliskan
sebuah konstanta bertipe char, karakter perlu ditulis di dalam petik
tunggal (‘…’).

b. Tipe String
String
String berarti sederetan karakter (character). Nilai data string
akan menempati 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. Konstanta string ditulis dengan awalan dan akhiran tanda
petik ganda (“...”).
c. Tipe terstruktur
Array
Array adalah tipe terstruktur yang mempunyai komponen dalam
jumlah tetap dan setiap komponen mempunyai tipe data yang sama.
Posisi masing – asing komponen dalam larik dinyatakan sebagai
nomor index.

Record
Dengan tipe data record, dapat dikumpulkan beberapa Item
data yang masing – masing mempunyai tipe data yang berbeda –

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 21 dari 32 27 Februari 2017

beda. Masing-masing Item data disebut field. Record terdiri dari


kumpulan field yang dapat mengandung beberapa tipe. tipe data
record mampu menampung banyak data dengan tipe data berbeda-
beda
Set
Tipe set merupakan suatu himpunan yang berisi nilai (anggota).
Set dalam pemrograman sangat mirip dengan himpunan dalam ilmu
matematika.

Sebagai ilustrasi array mampu menampung banyak data


namun dengan satu tipe data yang sama, misalnya integer saja.
Sedangkan dalam record, kita bisa menggunakan untuk menampung
banyak data dengan tipe data yang berbeda, satu bagian integer, satu
bagian lagi character, dan bagian lainnya Boolean.
Biasanya record digunakan untuk menampung data suatu obyek.
Misalnya, siswa memiliki nama, alamat, usia, tempat lahir, dan tanggal
lahir. Nama akan akan menggunakan tipe data string, alamat bertipe
data string, usia bertipe data single (numeric), tempat lahir bertipe data
string dan tanggal lahir bertipe data date.

2. Variabel
Variabel adalah suatu nama yang menyatakan tempat dalam
memori komputer untuk menyimpan suatu nilai dan nilainya dapat dirubah
sewaktu – waktu ketika program sedang dieksekusi.
Contoh Nama variabel dan nilai.
username = “joni”
Nama = “Al-Khawarizmi”
Harga = 2500
HargaTotal = 34000

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 22 dari 32 27 Februari 2017

username, Nama, harga dan HargaTotal adalah nama dari variabel,


sedangkan “joni”, “Al-Khawarizmi”, 2500 dan 34000 adalah nilai dari
masing-masing variabel. Nilai-nilai ini akan tersimpan di dalam nama
variabel masing-masing sepanjang tidak kita rubah.
Pemberian nama variabel harus mengikuti aturan yang ditetapkan oleh
bahasa pemrograman yang kita gunakan. Namun secara umum ada
aturan yang berlaku untuk hampir semua bahasa pemrograman. Aturan-
aturan tersebut yaitu:
• Nama variabel harus diawali dengan huruf.
• Tidak boleh menggunakan spasi pada satu nama variabel. Spasi
bisa diganti dengan karakter underscore (_).
• Nama variabel tidak boleh mengandung karakter-karakter khusus,
seperti : .,+, -, *, /, <, >, &, (, ) dan lain-lain.
• Nama variabel tidak boleh menggunakan kata-kata kunci d
bahasa pemrograman
Contoh :
Penamaan Penanaman Yang Salah
Yang Benar
namasiswa nama siswa (salah karena menggunakan spasi)
XY12 12X (salah karena dimulai dengan angka)
harga_total harga.total (salah karena menggunakan karakter .)
JenisMotor Jenis Motor (salah karena menggunakan spasi)
alamatrumah for (salah karena menggunakan kata kunci bahasa
pemrograman)

3. Konstanta
Konstanta adalah variabel yang nilai datanya bersifat tetap dan
tidak bisa diubah. Jadi konstanta adalah juga variabel bedanya adalah
pada nilai yang disimpannya. Jika nilai datanya sepanjang program

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 23 dari 32 27 Februari 2017

berjalan tidak berubah ubah, maka sebuah variabel lebih baik


diperlakukan sebagai konstanta. Pada sebuah kode program, biasanya
nilai data dari konstanta diberikan langsung di bagian deklarasi konstanta.
Sedangkan untuk variabel biasanya hanya ditentukan nama variabel dan
tipe datanya tanpa isian nilai data. Aturan penamaan variabel juga
berlaku untuk penamaan konstanta. Demikian juga aturan penetapan tipe
data. konstanta dibagi menjadi 4:
• Konstanta integer, berupa integer biasa, integer panjang (long int)
dan integer tak bertanda (unsigned integer). Nilainya dapat berupa
desimal, oktal atau hexadesimal.
• Konstanta floating point, dapat mengandung nilai pecahan, yang
biasa ditulis dalam bentuk pecahan biasa maupun bentuk
eksponensial dan selalu dinyatakan dalam double, kecuali jika
diakhiri dengan F atau f (menyatakan konstanta float).
• Konstanta string, merupakan deretan karakter yang diawali dan
diakhiri dengan tanda petik ganda (“…“). Juga dapat mengandung
karakter yang menggunakan tanda \ yang disebut karakter escape
(escape sequence).
• Konstanta karakter, selalu diawali dan diakhiri dengan tanda petik
tunggal (‘…’). Beberapa konstanta karakter dapat diawali dengan
tanda \ (penempatannya setelah tanda petik tunggal).
Sebagai contoh, jika kita membuat program perhitungan matematik yang
menggunakan nilai pi (3.14159) yang mungkin akan muncul dibanyak
tempat pada kode program, kita dapat membuat pi sebagai konstanta.
Penggunaan konstanta pi akan lebih memudahkan penulisan kode
program dibanding harus mengetikkan nilai 3.14159 berulang-ulang.

4. Operator
a. Operator Aritmatika

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 24 dari 32 27 Februari 2017

Operator ini digunakan untuk operasi aritmatika.Operand( besaran


yang dioperasikan) dapat berupa variabel, konstanta, atau sebuah
nilai.Operand yang dioperasikan dengan operator ini bisa berupa
numerik, integer, atau real.

Tabel skala prioritas pengerjaannya:


Prioritas Oprator Operand Tipe Operand Tipe Hasil
1 ^ Pangkat Real, Real Real
Integer, Integer Integer
Real, Integer Real
2 + Penjumlahan Rel, Real Real
Integer, Integer Integer
Real, Integer Real
– Pengurangan Real, Real Real
Integer, Integer Integer
Real, Integer Real
3 * Perkalian Real, Real Real
Integer,Integer, Integer
Integer Real
/ Pembagian Real, Real Real
Real Integer, Integer Real
real, integer Real
DIV Pembagian Integer, Integer Integer
Bulat
MOD Sisa Integer, Integer Integer
(Modulus) Pembagian

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 25 dari 32 27 Februari 2017

4 Pemuatan Integer, Real Integer


Nilai Real

b. Operator Relasi
Operator Relasi digunakan untuk membandingkan hubungan
antara dua buah operand dan akan didapatkan hasil tipe boolean, yaitu
TRUE atau FALSE.Operator relasi antara lain:
Data: A = 5
B=8
C=5
Operator Arti Contoh
= Sama dengan A=B
> Lebih dari A>B
< Kurang dari A<B
>= Lebih dari atau sama A>=C
dengan
<= Kurang dari atau sama A<=B
dengan
<> Tidak sama dengan A < >C

c. Operator Logika
Operator logika juga digunakan untuk memberikan nilai atau
kondisi true
dan false. Biasanya operator logika dipakai untuk membandingkan dua
kondisi.
Misalnya:
((5==5) && (3>6)) mengembalikan nilai false, karena (true && false)
untuk logika NOT (!), contohnya !(5==5) akan mengembalikan nilai false,
karena !(true).

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 26 dari 32 27 Februari 2017

Tabel Skala Prioritas


Prioritas Operator Arti
1 NOT Komplemen Logika
2 AND Perbandingan secara DAN
3 OR Perbandingan secara ATAU
Tabel Kebenaran Operasi NOT
X NOT (X)
False False
True True
Tabel Kebenaran Oprasi AND
X Y X and Y
False False False
False True False
True False False
True True True
Tabel Kebenaran Operasi OR
X Y X or Y
False False False
False True True
True False True
True True True

d. Operator Assign (=)


Operator (=), akan memberikan nilai ke dalam suatu variable

artinya memberikan nilai 5 ke dalam variable a. Sebelah kiri tanda =

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 27 dari 32 27 Februari 2017

dalam
pernyataan di atas, dikenal dengan lvalue (left value) dan di sebelah
kanan
tanda = dikenal dengan rvalue (right value). lvalue harus selalu berupa
variable,
sedangkan rvalue dapat berupa variable, nilai, konstanta, hasil operasi
ataupun
kombinasinya.

e. Operator Majemuk ( +=, -=, *=, /=, %=, <<=, >>=, &=, |= )
Dalam C++, operasi aritmatika dapat disederhanakan penulisannya
dengan format penulisan operator majemuk.
Misalnya :

a += 5 sama artinya dengan menuliskan a = a+5


a *= 5 sama artinya dengan menuliskan a = a*5
a /= 5 sama artinya dengan menuliskan a = a/5
a %= 5 sama artinya dengan menuliskan a = a % 5

f. Operator Penaikan dan Penurunan (++ dan --)


Operator penaikan (++) akan menaikkan atau menambahkan 1 nilai
variable. Sedangkan operator (--) akan menurunkan atau mengurangi 1

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 28 dari 32 27 Februari 2017

nilai
variable. Misalnya :
a++;
a+=1;
a=a+1;
untuk ketiga pernyataan tersebut, memiliki arti yang sama yaitu
menaikkan 1
nilai. Karakteristik dari operator ini adalah dapat dipakai di awal (++a) atau
di
akhir (--a) variable. Untuk penggunaan biasa, mungkin tidak akan ditemui
perbedaan hasil dari cara penulisannya. Namun untuk beberapa operasi
nantinya
harus diperhatikan cara peletakan operator ini, karena akan berpengaruh
terhadap hasil

Contoh 1 :
B=3;
A=++B;
//hasil A= 4,B=4

Contoh 2:
B=3;
A=B++;
//hasil A=3, B=4

Dari contoh1, nilai B dinaikkan sebelum dikopi ke variable A. Sedangkan


pada
contoh2, nilai B dikopi terlebih dahulu ke variable A baru kemudian
dinaikkan.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 29 dari 32 27 Februari 2017

Beda dari operator --/++ di sebelah kiri variabel dengan --/++ di sebelah
kanan variabel bisa dilihat dari contoh berikut ini:

int i = 10;
cout << --i << endl;
cout << i << endl;

hasil output:
9
9

int i = 10;
cout << i-- << endl;
cout << i << endl;

hasil output:
10
9

Jadi bisa diambil kesimpulan, dengan operator --/++ (--i) di sebelah kiri
variabel maka operator tersebut akan mempunyai prioritas lebih tinggi
untuk
dikerjakan terlebih dahulu. Jadi i akan dikurangi terlebih baru dicetak oleh
cout.
Sebaliknya dengan operator --/++ (i--) di sebelah kanan variabel maka
operator
tersebut akan mempunyai prioritas lebih rendah untuk dikerjakan. Maka i
akan

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 30 dari 32 27 Februari 2017

dicetak terlebih dahulu, baru dikurangi.

g. Operator Relasional (==, !=, >, <, >=, <=)


Yang dihasilkan dari operator ini bukan berupa sebuah nilai, namun
berupa bilangan bool yaitu benar atau salah.

Contoh :
(7==5) hasilnya adalah fase
(5>4) hasilnya adalah tua
(5<5) hasilnya adalah false

h. Operator Logika ( !, &&, || )


Operator logika juga digunakan untuk memberikan nilai atau kondisi tua
dan false. Biasanya operator logika dipakai untuk membandingkan dua
kondisi.
Misalnya:
((5==5) && (3>6)) mengembalikan nilai false, karena (true && false)
untuk logika NOT (!), contohnya !(5==5) akan mengembalikan nilai false,
karena !(true).

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 31 dari 32 27 Februari 2017

D. Rangkuman
Algoritma adalah susunan langkah-langkah sistematis, logis, dan
terhingga dalam pemecahan suatu masalah.
Dalam penulisan teks algoritma harus mengikuti aturan yang telah
ditetapkan dengan memperhatikan juga berbagai tipe data, variabel,
konstanta, dan operator.

E. Pertanyaan/Diskusi
1. Tuliskan beberapa contoh algoritma dalam kehidupan sehari-hari, dan
berikan contoh langkah-langkah dalam algoritma tersebut.
2. Tuliskan algoritma untuk membeli paket internet lewat ponsel yang
ditawarkan oleh sebuah opeator seluler.
3. Tulislah algoritma untuk menghitung volume dan luas permukaan
kerucut, bola, dan limas segitiga.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES
KEMENTERIAN RISET, TEKNOLOGI DAN PENDIDIKAN TINGGI
UNIVERSITAS NEGERI SEMARANG (UNNES)
Kantor: Komplek Simpang 5 Unnes Kampus Sekaran, Gunungpati, Semarang 50229
Rektor: (024)8508081 Fax (024)8508082, Purek I: (024) 8508001
Website: www.unnes.ac.id - E-mail: unnes@unnes.ac.id

FORMULIR MUTU
BAHAN AJAR/DIKTAT
No. Dokumen No. Revisi Hal Tanggal Terbit
FM-01-AKD-07 02 32 dari 32 27 Februari 2017

Daftar Pustaka

Munir, Rinaldi. 1999. Algoritma dan Pemrograman Dalam Bahasa Pascal dan C.
Bandung: Informatika.

Munir, Rinaldi dan Lidya, L. 2016. Algoritma dan Pemrograman Dalam Bahasa
Pascal, C, dan C++. Bandung: Informatika.

Kadir, Abdul. 2014. Belajar Sendiri Pasti Bisa Pemrograman C++. Yogyakarta:
Penerbit Andi.

Kadir, A dan Heriyanto. 2005. Algoritma Pemrograman Menggunakan C++.


Yogyakarta: Penerbit Andi.

Pranata, A. 2005. Algoritma dan Pemrograman. Yogyakarta: Penerbit Graha


Ilmu.

Raharjo, Budi. 2015. Pemrograman C++. Bandung: Penerbit Informatika.

Tosin, R. 1997. Flowchart untuk Siswa dan Mahasiswa. Jakarta: DINASTINDO.

Dibuat oleh : Diperiksa oleh :


Dilarang memperbanyak sebagian atau seluruh isi dokumen
tanpa ijin tertulis dari BPM UNNES

Anda mungkin juga menyukai