Anda di halaman 1dari 37

Dasar Pemrograman

Tim Ajar Dasar Pemrograman 2020


Guidelines

Perkenalan

Aturan Perkuliahan

Rencana Perkuliahan Semester

Komponen Penilaian

Materi
Perkenalan
• Noprianto, S.Kom., M.Eng
• Jln. Simpang Setaman 1 No.68 RT.06 RW.15 Lowokwaru Malang
• 085878554150
• noprianto@polinema.ac.id
• https://github.com/0d3ng, https://www.linkedin.com/in/nopri-anto-
0a9764b6,
• sinaungoding.com
Aturan perkuliahan
• Tata Tertib Kuliah Online via Zoom
• Join 5 menit sebelum jadwal yg ditentukan
• Berdoa sebelum memulai perkuliahan, dipimpin oleh ketua kelas
• Menggunakan nama ID sesuai nama lengkap (bukan panggilan)
• Mute microphone dan on camera, unmute hanya saat menjawab/bertanya
• Harus selalu hadir di kamera, ijin terlebih dahulu melalui chat jika ingin mundur sejenak (ke toilet)
• Memakai pakaian rapi (bukan kaos)
• Tidak boleh meninggalkan room sebelum jadwal selesai
• 15 menit keterlambatan akan masuk di waiting room terlebih dahulu untuk kemudian diijinkan
masuk (tergantung kebijakan masing2 dosen)
• Menggunakan background zoom yang ditentukan
• Jika online menggunakan HP, posisikan HP dalam keadaan landscape(tertidur). Matikan
fungsi/fasilitas auto rotate agar posisi menyesuaikan
Deskripsi MK
Deskripsi Singkat Matakuliah Dasar Pemrograman
Dasar Pemrograman memberikan pengetahuan dan pemahaman
konsep dasar algoritma dan dasar pemrograman sehingga dalam
mata kuliah ini mahasiswa memiliki dasar untuk menyelesaikan
permasalahan-permasalahan logika dengan menggunakan
flowchart dan pseudocode.
Tujuan MK
Di akhir kuliah mahasiswa mampu:
1. Menguasai konsep Algoritma dan dapat memodelkannya dalam bentuk
flowchart dan pseudocode.
2. Memahami konsep dasar pemrograman untuk mentranslasikan model
algoritma ke dalam bentuk Bahasa Pemrograman.
3. Memahami konsep algoritma percabangan dan perulangan serta
penggunaan array dan fungsi/prosedur
Pokok Bahasan
• Dasar Pemrograman (Konsep Algoritma)
• Studi Kasus
• Tipe Data, Variabel, Konstanta, Nilai, Ekspresi, Input-Output
• Pencabangan, Pemilihan
• Perulangan
• Array
• Fungsi/Prosedur
Pengantar – Kontrak Kuliah
Pertemuan Materi
Minggu – 1 Dasar Pemrograman
Minggu – 2 Studi Kasus
Minggu – 3 Tipe data, Variabel, Input – Output,
Sequence
Minggu - 4 Kuis 1
Minggu – 5 Pemilihan 1
Minggu – 6 Pemilihan 2
Minggu – 7 Perulangan 1
Minggu – 8 UTS
Minggu – 9 Perulangan 2
Minggu – 10 Array 1
Minggu – 11 Array 2
Minggu – 12 Kuis - 2
Kontrak Kuliah
Pertemuan Materi
Minggu – 13 Fungsi 1
Minggu – 14 Fungsi 2
Minggu – 15 Project Akhir
Minggu – 16 Project Akhir
Minggu – 17 UAS

• Bobot Kuis : 20 %
• Bobot Tugas : 20 %
• Bobot UTS : 30%
• Bobot UAS : 30%
Pertemuan 1
DASAR PEMROGRAMAN
Tujuan
Setelah menempuh materi ini, mahasiswa hendaknya mampu:
• Mahasiswa memahami pengertian dan pentingnya algoritma
• Mahasiswa mengenal tentang konsep dasar algoritma
• Mahasiswa dapat menganalisis permasalahan sederhana
Introduction - What Is a Computer?
COMPUTER TO – COMPUTE + ER
menghitung/mengolah bilangan

mengolah data

Data yg diolah Pengolah Data Data hasil olahan


(Processor)
(Masukan/Input) (berbasis Aritmatika (Keluaran/Output)
dan Logika)

12
Penyimpanan Data (Storage, e.g.
memory)
Algoritma
• Proses pengolahan data membutuhkan algoritma
• Algortima : urutan langkah-langkah logis penyelesaian masalah yang
disusun secara sistematis dan logis.
• Sistematis : urutan langkah-langkah yang disusun harus jelas, memiliki
pola tertentu
• Logis : masuk akal, bisa dibaca dan diterima oleh akal
• Bisa dinilai benar salahnya
• pemrograman computer
• algoritma diimplementasikan dalam program computer
• satu set instruksi atau langkah-langkah yang dijalankan dengan komputer
untuk menyelesaikan suatu masalah.

MASALAH / PEMECAHAN SOLUSI /


IDE HASIL

Algoritma Source Executable


Code Code
Penilaian Algoritma
• Hasilnya harus benar, sesuai dengan yang diinginkan
• Seberapa baik hasil dari algoritma tersebut
• Efisiensi algoritma à waktu dan memori

Dimungkinkan antara orang satu dengan yang lain, dari masalah yang
sama, akan mendapatkan algoritma yang berbeda. Semuanya dianggap
benar, asal hasil yang dikeluarkan sesuai dengan harapan. Namun
demikian, diantara perbedaan algoritma tersebut, bisa dipilih mana yang
lebih efisien
Struktur Dasar Algoritma
• Struktur runtutan/sekuensial :
Digunakan untuk program yang pernyataannya sequential atau urutan.
• Struktur pemilihan
Digunakan untuk program yang menggunakan pemilihan atau penyeleksian
kondisi.
• Struktur perulangan
Digunakan untuk program yang pernyataannya akan dieksekusi berulang-ulang.
Kriteria Algoritma
• Input
• Terdapat inputan bernilai nol ataupun lebih banyak sebagai sumber yang berasal dari
luar program.
• Output
• Output minimal terdiri dari satu kuantitas hasil.
• Definiteness
• Setiap instruksi yang diberikan harus jelas dan tidak ambigu.
• Finiteness
• Jika kumpulan instruksi algoritma ditelusuri, maka tahapan algoritma akan berakhir
setelah sejumlah langkah yang terbatas.
• Effectivenes
• Setiap instruksi harus cukup mendasar sehingga mudah untuk dilakukan sesuai
dengan kebutuhan
Contoh
• Masalah: memasak nasi menggunakan rice cooker
• Proses :
• Cuci beras
• Masukan beras ke ricecooker, tambah air
• Rice cooker dinyalakan
• Nasi masak
• Stuktur : Runtutan
Contoh Perintah 1x move forward

Struktur runtutan

https://blockly.games/maze?lang=en&level=1&skin=0#tsqyhc
Contoh
Struktur Perulangan
Contoh
Struktur Runtutan
Contoh
Struktur Perulangan

• Perintah yang dilakukan berulang-ulang


dapat diwakili dengan struktur
perulangan
Contoh Perulangan dan Pemilihan
https://blockly.games/
Contoh Pemilihan
Setiap pagi lena mengikuti flowchart berikut ini untuk membantunya
berpakaian.

Jika udara sedang dingin dan diluar sedang hujan. Bagaimana kombinasi
pakaian Lena
Jawab
• Jawab : vest-shirt-pants-sweater-raoncoat
• Penjelasan : kombinasi pakaian lena dapat ditemukan dengan cara
mengikuti urutan dan pemilihan yang ada di flowchart
1. Lena memulai dengan memakai vest
2. Kemudian lena memakai shirt
3. Jika udara diluar dingin maka lena menggunakan pants kemudian sweater
4. Jika diluar sedang hujan maka lena menggunakan raincoat
• Struktur urutan (1, 2) dan pemilihan (3,4)
Contoh

• Keluarga Berang-berang sedang


mempersiapkan acara Festival
Makanan, dan mereka ingin
memanggang kue kering; Kati akan
membuat kue. Dia sangat
memperhatikan urutan membuat kue
dengan memasukkan bahan kue
dengan urutan yang benar. Ketika dia
berjalan ke taman, dia melihat ada
secarik kertas pada setiap bahan kue
yang akan digunakan. Gambar pada
kertas menjelaskan bahan kue yang
harus ditambahkan pada urutan Bahan kue manakah
berikutnya. Hanya ada satu bahan yang harus dimasukkan
kue yang tidak memiliki kertas.
Ilustrasi taman disamping seperti di pertama kali?
bawah ini:
Contoh

• Berikan penjelasan dan tentukan termasuk dalam struktur algoritma


yang mana?
• Penjelasan Jika Kati memulai dari Bunga merah maka dia akan menambahkan
kelima bahan kue dengan urutan yang benar. Bahan kue pertama yang harus
ditambahkan adalah yang tidak dirujuk oleh bahan lain.
• Jika dia memulai dari stroberi, maka dia tidak dapat melanjutkan ke tahap
berikutnya karena tidak ada petunjuk bahan kue selanjutnya pada kertas.
• Jika dia memulai dari apel maka salah, karena bahan kue bunga merah akan
terlewatkan.
• Jika dia memulai dari buah pohon cemara juga salah, karena bahan kue bunga
merah dan apel akan terlewatkan.
• Struktur urutan
Contoh
• Ada beberapa ekor kepik dalam grid yang terdiri dari 16
sel. Sebuah sel dikatakan bertetangga dengan sel
lainnya jika sisi atau sudut/pojok keduanya
bersebelahan. Ini berarti setiap sel dapat mempunyai
sampai dengan 8 tetangga.

Pada gambar di samping, sel


manakah yang dikelilingi oleh
paling banyak kepik?

• Berikan penjelasan dan tentukan termasuk dalam


struktur algoritma yang mana?
Jawab
• Penjelasan :
• Kita dapat menemukan dengan menghitung (mencacah)
jumlah kepik yang mengelilingi setiap huruf.
• Struktur perulangan
• Mulai dari Sel A hitung jumlah tetangganya yang memiliki kepik
• Ulangi menghitung tetangga sampai sel D
contoh
• Pindahkan cakram dari tiang A ke tiang B. Yang
tersedia adalah 3 tiang tersebut. Aturannya, setiap
pemindahan, hanya boleh 1 cakram saja, dan tidak
ada cakram yang lebih kecil berada di bawah
cakram yang lebih besar

A B
C
1
2
3
Jawab
• Penjelasan :
• Cakram 1 ke B
• Cakram 2 ke C
• Cakram 1 dari B ke C
• Cakram 3 dari A ke B
• Cakram 1 dari C ke A
• Cakram 2 dari C ke B
• Cakram 1 dari A ke B
• Stuktur urutan dan pemilihan
Latihan
• Berang - berang Bobi telah mengatur meja sarapan seperti yang
ditunjukkan pada gambar. Terdapat taplak meja, pisau, piring, serbet,
piring kecil-cangkir
• Jelaskan bagaimana urutan Bobi meletakkan benda-benda di atas
meja?
• tentukan termasuk dalam struktur algoritma yang mana?
Latihan
• Pak ahmad memiliki lahan berbentuk persegi dengan sisi 100m, di
dalam lahan pak ahmad terdapat taman bunga berbentuk lingkaran.
Berapakah luas lahan pak ahmad yang tidak ditanami bunga?
• tentukan termasuk dalam struktur algoritma yang mana?
Latihan
• Berikut ini merupakan Pohon kemungkinan untuk list kata Tree, trek,
tram, trap, teen, teem, team. Terdapat satu kata yang hilang dari list.
Carilah kata tersebut dan tentukan struktur algoritma apa yang
digunakan.
Latihan
• Penjelajah bulan yang dikendalikan berang-berang bergerak dari satu
arah ke yang lain menggunakan peta di bawah ini. Jalur yang dilalui
adalah mulai (1,1) sampai (8,8). Angka pertama adalah baris, yang
kedua - adalah kolom jumlah. Dimanakah letak objek gunung?
Berikan penjelasan dan tentukan struktur algoritma apa yang
digunakan.
Latihan
• Saat ujian akhir terdapat ketentuan bahwa jika mahasiswa memiliki
nilai dibawah 70 maka mahasiswa tersebut mengikuti ujian ulang.
Andi ternyata mendapatkan nilai 90. apakah Andi mengikuti ujian
ulang??
• Berikan penjelasan dan tentukan struktur algoritma apa yang
digunakan.

Anda mungkin juga menyukai