0% menganggap dokumen ini bermanfaat (0 suara)
184 tayangan13 halaman

H1 - Modul Daring MK Pemrograman Komputer Dalam C++ Dengan CodeBlocks

Dokumen tersebut membahas pengantar algoritma dan pemrograman dalam bahasa C++ dengan CodeBlocks. Ia menjelaskan tentang pengenalan algoritma sebagai urutan langkah-langkah untuk menyelesaikan masalah, serta contoh-contoh algoritma penyelesaian masalah seperti mengurutkan dan menukar isi gelas. Dokumen ini bertujuan memberikan pemahaman dasar tentang algoritma dan pemrograman.

Diunggah oleh

Fitri
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
184 tayangan13 halaman

H1 - Modul Daring MK Pemrograman Komputer Dalam C++ Dengan CodeBlocks

Dokumen tersebut membahas pengantar algoritma dan pemrograman dalam bahasa C++ dengan CodeBlocks. Ia menjelaskan tentang pengenalan algoritma sebagai urutan langkah-langkah untuk menyelesaikan masalah, serta contoh-contoh algoritma penyelesaian masalah seperti mengurutkan dan menukar isi gelas. Dokumen ini bertujuan memberikan pemahaman dasar tentang algoritma dan pemrograman.

Diunggah oleh

Fitri
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 13

ALGORITMA DAN PEMROGRAMAN

DALAM BAHASA C++ DENGAN CODEBLOCKS

Modul Mata Kuliah : Pemrograman Komputer 1


KB 1. Pengantar Algoritma dan Pemrograman

Penulis:
Amidi, S.Si., M.Pd.
Muhammad Zuhair Zahid, S.Pd.Si., M.Pd.

JURUSAN MATEMATIKA
UNIVERSITAS NEGERI SEMARANG
2020
Kegiatan Belajar (KB) 1
Pengantar Algoritma dan Pemrograman
(Pertemuan : 1 x 3 SKS)

A. Pendahuluan
KB 1 ini menyajikan materi tentang pengenalan algoritma dan pemrograman.
Bahasan pada awal KB ini akan dijelaskan tentang persoalan yang kemudian
dilanjutkan dengan alur algoritma, program dan pemrograman. Serta ditutup
dengan notasi yang digunakan dalam penulisan algoritma pemrograman.

B. Capaian Pembelajaran
Setelah mempelajari materi ini, diharapkan mahasiswa mampu menerapkan
konsep dasar pemrograman dalam implementasi bidang pendidikan
matematika secara logis dan sistematis (CPMK 1). Sehingga pada
pembahasan materi pada KB 1 ini difokuskan untuk pemahaman awal
mengenai algoritma dan pemrograman.

C. Pokok-pokok Materi
Pokok-pokok materi kegiatan belajar ini adalah:
1. Persoalan
2. Algoritma
3. Karakteristik Algoritma
4. Program dan Pemrograman
5. Bahasa Pemrograman
6. Notasi Algoritma

D. Uraian Materi
1. Persoalan
Persoalan atau masalah adalah sesuatu yang harus diselesaikan atau
dipecahkan. Persoalan juga sangat erat dengan kehidupan kita sehari-hari,
dimana banyak sekali berbagai persoalan yang harus kita selesaikan. Selain
itu terkadang kita akan menggunakan istilah persoalan untuk hal-hal tertentu
dan menggunakan kata masalah untuk sebagian hal lainnya.
Selanjutnya untuk lebih memahami tentang persoalan, kita perhatikan
beberapa ilustrasi berikut:
1) Misalkan Anda diberikan tumpukan Kartu Tanda Mahasiswa (KTM) yang
tersusun acak. Anda diminta untuk menyusun KTM tersebut berdasarkan
Nomor Induk Mahasiswa (NIM), sehingga tersusun berurutan dari NIM
yang paling kecil ke paling besar.
Maka persoalan yang Anda hadapi dapat dirumuskan sebagai berikut :
“Diberikan setumpuk KTM, kemudian urutkan kartu-kartu tersebut supaya
tersusun menaik berdasarkan NIM sedemikian sehingga NIM kecil di atas
dan NIM besar di bawah?”

Modul Daring MK Pemrograman Komputer 1| 2


Sehingga jawaban yang diharapkan dari persoalan di atas adalah
susunan KTM yang sudah terurut dari NIM kecil ke NIM besar.

2) Misalkan Anda diberikan sebuah daftar berisi nama-nama mahasiswa


peserta kuliah Mata Kuliah Pemrograman Komputer 1 yang sudah
diurutkan berdasarkan Nomor Induk Mahasiwa (NIM), kemudian Anda
diminta untuk mencari nama mahasiswa dengan NIM tertentu.
Persoalan ini dapat dirumuskan sebagai berikut : “Diberikan sebuah
daftar berisi nama-nama peserta Mata Kuliah Pemrograman Komputer 1
yang sudah diurutkan berdasarkan NIM, apakah ada NIM xxxx?”
Sehingga jawaban yang diharapkan dari persoalan tersebut adalah “ya”,
jika NIM xxxx tersebut ada dalam daftar tersebut” dan “tidak” apabila NIM
xxxx tersebut tidak ada dalam daftar tersebut”.

3) Diberikan sebuah daftar yang berisi nilai hasil ujian Mata Kuliah
Pemrograman Komputer 1, tentukan nama dengan nilai hasil ujian
tertinggi?
Jawaban yang diharapkan adalah Nama mahasiswa dengan nilai hasil
ujian tertinggi.

4) Diketahui sebidang kebun berbentuk menyerupai Persegi Panjang


dengan Panjang dan Lebar yang diketahui (dalam satuan meter).
Hitunglah Luas kebun tersebut?
Jawaban yang diharapkan adalah Luas kebun dalam satuan meter
persegi.

Apabila kita perhatian dari empat persoalan di atas, persoalan nomor 2)


dinyatakan dalam bentuk pertanyaan. Sedangkan persoalan nomor 1), 3),
dan 4) dinyatakan dalam bentuk perintah atau tugas. Sehingga secara
spesifik bahwa:
1) “Diberikan setumpuk KTM, kemudian urutkan KTM tersebut supaya
tersusun menaik berdasarkan NIM sedemikian sehingga NIM kecil di atas
dan NIM besar di bawah?” merupakan Persoalan Pengurutan.
2) “Diberikan sebuah daftar berisi nama-nama peserta Mata Kuliah
Pemrograman Komputer 1 yang sudah diurutkan berdasarkan NIM,
apakah ada NIM xxxx?” merupakan Persoalan Pencarian.
3) “Diberikan sebuah daftar yang berisi nilai hasil ujian Mata Kuliah
Pemrograman Komputer 1, tentukan nama dengan nilai hasil ujian
tertinggi?” merupakan Persoalan Mencari Nilai Terbesar.
4) “Diketahui sebidang kebun berbentuk menyerupai Persegi Panjang
dengan Panjang dan Lebar yang diketahui (dalam satuan meter).
Hitunglah Luas kebun tersebut?” merupakan Persoalan Menghitung
Nilai (Luas)

Modul Daring MK Pemrograman Komputer 1| 3


Sebagai ilustrasi adalah persoalan berikut:
Diketahui berikut ini adalah data nilai hasil ujian Mata Kuliah Pemrograman
Komputer 1
75 68 89 91 70 78 69 86 82 84

Berdasarkan data tersebut, urutkan mulai dari data yang paling kecil?
Solusi dari persoalan tersebut adalah mengurutkan data nilai hasil ujian
dimulai dari data yang paling kecil, sehingga jawabannya adalah

Sebelum diurutkan
75 68 89 91 70 78 69 86 82 84

Setelah diurutkan
68 69 70 75 78 82 84 86 89 91

2. Algoritma
Apabila persoalan-persoalan yang melibatkan jumlah yang relatif kecil, maka
kita dengan mudah akan menyelesaikannya. Seperti mengurutkan 10
bilangan, tetapi apabila jumlahnya sampai ribuan misalnya 1000 bilangan?,
tentunya kita akan mengalami kesulitan untuk mengurutkannya. Sehingga
diperlukan bantuan mesin untuk mengurutkan 1000 bilangan.
Agar perintah kita dapat dijalankan oleh mesin (misalnya komputer), maka
kita menuliskan prosedur yang berisi langkah-langkah untuk mengurutkan
bilangan. Sehingga mesin akan menjalankan prosedur tersebut untuk
memberikan solusi dari persoalan yang diberikan. Prosedur yang berisi
langkah-langkah penyelesaian persoalan disebut Algoritma.

Algoritma adalah urutan langkah-langkah untuk menyelesaikan


suatu persoalan

Meninjau kembali persoalan sebelumnya, terkait mengurutkan KTM


berdasarkan NIM terkecil, maka kita dapat menuliskan langkah-langkah
sebagai berikut:
1) Cari KTM dengan NIM terkecil
2) Letakkan KTM pada posisi yang tepat
3) Ulangi langkah 1) dan 2) sampai tersisa 1 kartu saja

Modul Daring MK Pemrograman Komputer 1| 4


2.1. Persoalan Mempertukarkan Isi Gelas
Setiap persoalan pasti memiliki algoritma penyelesaiannya, sehingga tugas
kita adalah mendeskripsikan langkah-langkah penyelesaian secara jelas.
Perhatikan ilustrasi persoalan berikut ini:

Misalkan terdapat dua gelas, Gelas A dan Gelas B yang berisi larutan
berwarna. Gelas A berisi larutan berwarna merah, sedangkan Gelas
B berisi larutan berwarna biru. Volume air dalam kedua gelas sama
banyaknya. Bagaimana cara mempertukarkan isi kedua gelas
tersebut, sedemikian sehingga nantinya Gelas A akan berisi larutan
berwarna biru dan Gelas B berisi larutan berwarna merah?

Gambar 1 Dua gelas yang berisi larutan berbeda warna


Sumber gambar : https://slideplayer.info

Agar kita dapat menukar isi kedua gelas, maka kita memerlukan 1 gelas
ketiga sebagai tempat penampungan sementara. Sehingga kita dapat
menulis algoritma penukaran isi gelas adalah sebagai berikut:
1) Tuangkan larutan dari Gelas A ke Gelas C
2) Tuangkan larutan dari Gelas B ke Gelas A
3) Tuangkan larutan dari Gelas C ke Gelas B

Lebih jelas silahkan memperhatikan ilustrasi berikut:


Keadaan Awal Proses Penukaran
1) Tuangkan larutan dari Gelas A ke
Gelas C

2) Tuangkan larutan dari Gelas B ke 3) Tuangkan larutan dari Gelas C ke


Gelas A Gelas B

Hasil Pertukaran

Sumber gambar : https://slideplayer.info

Modul Daring MK Pemrograman Komputer 1| 5


Algoritma penukaran isi dua buah gelas telah memberikan hasil seperti yang
diharapkan, yaitu Gelas A berisi larutan warna biru dan Gelas B berisi larutan
warna merah.

2.2. Persoalan Mengambil Air 4 Liter


Misalkan Anda mempunya dua buah ember, masing-masing bervolume 5-
liter dan 3-liter. Anda diminta mendapatkan air sebanyak 4 liter dengan
menggunakan hanya kedua ember tersebut (tidak ada peralatan lain yang
tersedia). Anda boleh memindahkan air dari satu ember ke ember lain,
membuang seluruh air dari ember, dan sebagainya. Bagaimanakah
penyelesaiannya?

Gambar 2 Dua buah ember masing-masing berukuran 5-liter dan 3-liter


Sumber gambar : https://slideplayer.info

Persoalan ini memiliki banyak cara untuk menyelesaikannya, salah satunya


adalah:
1) Isi penuh Ember 3-liter dengan air (Ember 3-liter berisi air sebanyak 3
liter)
2) Tuangkan dari Ember 3-liter ke dalam Ember 5-liter (Ember 5-liter
sekarang berisi 3 liter air)
3) Isi penuh Ember 3-liter dengan air (Ember 3-liter berisi air sebanyak 3
liter)
4) Tuangkan air dari Ember 3-liter ke dalam Ember 5-liter hingga penuh,
sehingga di dalam Ember 3-liter tersisa air sebanyak 1 liter.
5) Buang seluruh air dari Ember 5-liter (Ember 5-liter kosong)
6) Tuangkan air dari Ember 3-liter ke dalam Ember 5-liter (Ember 5-liter
sekarang berisi 1 liter air)
7) Isi penuh Ember 3-liter dengan air (Ember 3-liter berisi air sebanyak 3
liter)
8) Tuangkan air dari Ember 3-liter ke dalam Ember 5-liter, sehingga
sekarang Ember 5-liter berisi 1+3 = 4 liter air.

Contoh Persoalan-persoalan Algoritma yang lain


dapat di lihat pada link PPT:
https://bit.ly/kb1modulprokom1ppt1

Modul Daring MK Pemrograman Komputer 1| 6


2.3. Sejarah Algoritma
Menurut id.wikipedia.org, kata algorism
berasal dari nama al-Khwarizmi, seorang
matematikawan di awal abad ke-9. Nama
tersebut juga menjadi asal kata algoritme.
Kata algorism berubah menjadi algorithm
kemudian diserap dalam Bahasa Indonesia
menjadi Algoritma. Kata Algoritma pertama kali
dipakai pada Euclid’s Algoritm (Algoritma
Euclid) pada tahun 1950.

Gambar 3 Al-Khuwarizmi
Sumber gambar : https://id.wikipedia.org

3. Karakteristik Algoritma
Prinsip dasar algoritma adalah menerima masukan (input), memprosesnya
dalam urutan langkah-langkah, dan menghasilkan luaran (output). Sehingga
jika algoritma benar, maka hasilnya akan benar begitu juga sebaliknya.
Sebuah algoritma harus memiliki lima ciri penting berikut:
1) Algoritma harus berhenti setelah mengerjakan sejumlah langkah
terbatas.
2) Setiap langkah harus didefinisikan dengan tepat dan tidak boleh berarti
dua (ambigu).
3) Algoritma memiliki nol atau lebih masukan (input).
4) Algoritma menghasilkan nol atau lebih luaran (output).
5) Algoritma harus efektif, sehingga setiap langkah harus sederhana supaya
mudah untuk dikerjakan.

4. Program dan Pemrograman


Algoritma yang telah disusun akan dijalankan oleh pemroses (processor).
Adapun pemroses disini diantaranya adalah manusia, komputer, robot,
mesin dan sebagainya. Sehingga algoritma yang efektif sangat diperlukan,
karena pemroses akan melaksanakan setiap langkah atau instruksi yang ada
dalam algoritma. Agar algortima dapat dilaksanakan dengan baik, maka
pemroses harus:
1) Mengerti setiap langkah dalam algoritma.
2) Mengerjakan operasi yang bersesuaian dengan langkah tersebut.

Khusus dalam modul ini, kita akan membahas algoritma yang akan diproses
oleh komputer. Sehingga algoritma harus ditulis dalam bahasa komputer
atau yang disebut program. Bahasa komputer yang digunakan untuk
menulis program dinamakan Bahasa pemrograman (programming
language). Orang yang membuat program disebut pemrogram
(programmer) dan kegiatan mulai dari mendesain hingga menulis program

Modul Daring MK Pemrograman Komputer 1| 7


dinamakan pemrograman (programming). Sedangkan teks program dalam
bahasa pemrograman biasa disebut kode program (source code),
sedangkan menulis kode program sering dinamakan coding.
Belajar pemrograman berarti mempelajari metode pemecahan masalah,
kemudian menuliskan dalam notasi tertentu. Sedangkan belajar Bahasa
permrograman berarti belajar memakai suatu Bahasa computer, aturan tata
bahasannya, instruksi-intruksinya, tata cara pengoperasioan compiler-nya,
dan memanfaatkan instruksi-instruksi tersebut untuk membuat program yang
ditulis dalam bahasa itu saja.

5. Bahasa Pemrograman
Beberapa bahasa pemrograman yang biasa dipakai diantaranya Pascal, C,
C++, Java, Phyton, dan sebagainya. Berdasarkan tujuan aplikasinya,
bahasa pemrograman dibagi menjadi dua yaitu:
1) Bahasa pemrograman bertujuan khusus (specific programming
language), diantaranya Cobol (untuk terapan bisnis dan administrasi),
Forton (aplikasi komputasi ilmiah), Bahasa Asembly (aplikasi
pemrograman mesin), Prolog (aplikasi kecerdasan buatan), Bahasa-
bahasa simulasi (Symcript), dan sebagainya.
2) Bahasa pemrograman bertujuan umum (general programming language)
yang dapat digunakan untuk berbagai aplikasi. Contohnya Pascal, C,
C++, Java, dan sebagainya.

6. Notasi Algoritma
Agar algoritma mudah dipahami oleh pembaca, maka berikut beberapa
notasi yang biasa digunakan untuk menyatakan algoritma:
1) Notasi 1 : Kalimat Deskriptif
Yaitu dengan menuliskan setiap langkah dengan jelas.
Contoh:
Program :
Menghitung Luas Persegi Panjang dengan memasukkan nilai
panjang dan lebar Persegi Panjang
Algoritma:
a) Masukkan nilai lebar dan panjang
b) Hitung luas sama dengan panjang kali lebar
c) Tampilkan Luas

2) Notasi 2 : Flowchart
Flowchart atau diagram alir menggambarkan aliran instruksi di dalam
program secara visual. Bagan alir mengekspresikan algoritma sebagai
sekumpulan bentuk-bentuk geometri yang berisi langkah-langkah
komputasi.

Modul Daring MK Pemrograman Komputer 1| 8


Contoh:
Program : Menghitung Luas Persegi Panjang dengan memasukkan nilai
panjang dan lebar Persegi Panjang

Mulai

p, l, Luas

Input p, l

Luas = p * l

Output Luas

Selesai

Gambar 4 Contoh Flowchart

Untuk mempermudah dalam pembuatan flowchart, kita bisa


menggunakan program Flowgorithm. Flowgorithm adalah tool
pemrograman grafis yang memungkinkan pengguna untuk menulis dan
menjalankan program menggunakan diagram alir (flowchart).
Penggunaan Flowgorithm dirancang untuk menekankan pembelajaran
pada algoritma daripada sintaks bahasa pemrograman tertentu.
Flowchart hasil pekerjaan di Flowgorithm dapat dikonversi ke beberapa
bahasa pemrograman utama (C, Java, Pascal, etc.)

Program Flowgorithm dapat diunduh dengan mengunjungi situs


resminya di link berikut ini:

http://www.flowgorithm.org/download/

Lebih banyak terkait flowchart dapat dilihat dalam PPT sesuai link
berikut:
https://bit.ly/kb1modulprokom1ppt2

Modul Daring MK Pemrograman Komputer 1| 9


3) Notasi 3 : Pseudocode
Notasi pseudocode adalah notasi yang mirip-mirip dengan notasi bahasa
pemrograman tingkat tinggi. Tidak ada pseudocode baku, sehingga
dalam penulisan algoritmanya dapat digabung dengan notasi deskriptif
maupun notasi Matematika.
Contoh:
Program : Menghitung luas Persegi Panjang dengan
memasukkan nilai panjang dan lebar Persegi Panjang

Algoritma:
Deklarasi
Luas, panjang, lebar :integer
Deskripsi
input(panjang,lebar)
Luas:=panjang * lebar
output(Luas)

E. Forum Diskusi (Praktikum)


Selamat ……………
Saudara telah menyelesaikan materi pada Kegiatan Belajar 1 Modul Daring
Pemrograman Komputer 1 tentang Pengantar Algortima dan Pemrograman.
Selanjutnya untuk memperdalam materi tersebut, silahkan selesaikan
beberapa pertanyaan berikut:
1) Carilah empat permasalahan dalam kehidupan sehari-sehari yang mewakili
empat karakteristik persoalan seperti pada materi di atas, kemudian
tentukan penyelesaiannya.
2) Apakah bisa mempelajarai algoritma tanpa harus memperlajari bahasa
pemrograman terlebih dahulu? Jelaskan pendapat Saudara.

F. Rangkuman
Materi yang dikaji pada KB 1 dapat dirangkum sebagai berikut:
1) Algoritma adalah urutan langkah-langkah untuk menyelesaikan suatu
persoalan.
2) Program adalah algoritma harus ditulis dalam bahasa komputer. Orang
yang membuat program disebut pemrogram (programmer) dan kegiatan
mulai dari mendesain hingga menulis program dinamakan pemrograman
(programming).
3) Terdapat tiga notasi untuk menuliskan algoritma yaitu Notasi Deskriptif,
Notasi Flowchart, dan Notasi Pseudocode.

Modul Daring MK Pemrograman Komputer 1| 10


G. Tugas Tertruktur
Buatlah algoritma (dalam Flowchart dan Pseudocode) untuk permasalahan:
1) Menghitung Luas Lingkaran
2) Mencari Akar-akar Persamaan Kuadrat
3) Menentukan Nilai Akhir

Catatan:
▪ Pembuatan flowchart menggunakan program Flowgorithm
▪ Pengumpulan tugas dalam bentuk pdf untuk flowchart dan pseudocode
dikumpulkan dalam satu file (secara berurutan untuk program yang
sama)

H. Kuis
Pilihlah satu jawaban yang tepat dengan cara memberi tanda x (silang) pada
huruf A, B, C, D, atau E yang ada di depan alternatif jawaban yang disediakan.
1. Persoalan menentukan Modus pada data hasil ujian akhir Mata Kuliah
Pemrograman Komputer 1 merupakan jenis persoalan?
A. Pengurutan
B. Pencarian
C. Pencacahan
D. Penentuan
E. Penghitungan

2. Proses pembuatan sebuah program melibatkan banyak pihak dan melewati


banyak tahapan, salah satunya adalah orang yang bertugas
mengembangkan program atau biasa disebut?
A. Coding
B. Pemroses
C. User
D. Programer
E. Programing

3. Notasi-notasi algoritma yang mirip dengan Bahasa pemrograman tingkat


tinggi disebut?
A. Notasi
B. Flowchart
C. Code program
D. Pseudocode
E. Coding

Modul Daring MK Pemrograman Komputer 1| 11


4. Perhatikan algoritma berikut:
Program : Mencari akar-akar Persamaan Kuadrat ax 2 + bx + c
Algoritma:
1) Deklarasi
2) a,b,c,x1,x2 : riil
3) Deskripsi
4) input(a,b,c)
5) D:=(b^2)-4*a*c
6) x1:=((-b)+sqrt((b^2)-4*a*c))/2*a
7) x2:= ((-b)-sqrt((b^2)-4*a*c))/2*a
8) output(x1,x2)

Baris berapa yang menyebabkan algoritma di atas menjadi kurang tepat?


A. 2
B. 4
C. 5
D. 6
E. 7

5. Perhatikan algoritma berikut:


Program : Membeli Tiket Pesawat di Toko Online
Algoritma:
1) Masukkan kota asal dan kota tujuan
2) Masukkan maskapai yang dipilih
3) Masukkan tanggal berangkat
4) Masukkan jumlah penumpang
5) Pilih maskapai penerbangan
6) Tulis nama
7) Cetak tiket

Apabila diasumsikan Toko Online tersebut hanya menjual tiket pesawat, dan
konsumen akan membeli tiket berangkat. Maka baris berapa yang
menyebabkan algoritma di atas menjadi kurang tepat?
A. 2
B. 3
C. 4
D. 5
E. 6

Modul Daring MK Pemrograman Komputer 1| 12


I. Daftar Pustaka
Munir, R., & Lidya, L. (2016). Algoritma dan Pemrograman Dalam Bahasa
Pascal, C, dan C++ Edisi Keenam. Informatika, Bandung.
Kadir, A. (2005). Algoritma Pemrograman menggunakan C++. Andi,
Yogyakarta.

Modul Daring MK Pemrograman Komputer 1| 13

Anda mungkin juga menyukai