Pemrograman
3 sks
Ol
eh
Pertemuan ke-1
:A
de
Su
pr
iat
1
Definisi Algoritma
• Urutan logis pengambilan putusan untuk pemecahan masalah (sumber: kamus
besar bahasa Indonesia, 1998).
• Logis maknanya dapat dipertanggung jawabkan nilai kebenarannya (nilai
true/false).
• Algoritma diperuntukan bagi siapa saja yang ingin mempelajari/
menggunakan bahasa pemrograman
2
Penemu Algoritma
• Kata algoritma ditemukan oleh Abu Ja’far Mohammed Ibn
Musa al-Khowarizmi, ilmuwan Persia yang menulis buku
“Al Jabr W’Al-Muqabala” (Rules of Restoration and
Reduction), terbit 825 M.
3
Cara menuliskan Algoritma
1.Natural language (bahasa alami)
2.Flowchart (diagram alir)
3.Pseudo-code (metode penulisan dengan
pendekatan penulisan di bahasa pemrograman. dan
dalam pembahasan ini menggunakan metode ini)
4
Notasi pseudo-code
Program <NamaProgram> Program menghitung_luas_pp
Deklarasi Deklarasi
Algoritma : Panjang,lebar,luas : integer
Algoritma :
panjang←10
lebar←5
luas←panjang*lebar
write(luas)
Contoh penerapan
5
Peran dan posisi Algoritma
problem
algoritma pemrograman
solusi
6
Struktur dasar Algoritma
1.Metode runtunan (Sequence)
2.Metode pemilihan/percabangan (Selection)
contoh perintah : if-then, if-then-else, depend on
3. Metode perulangan (iteration)
contoh perintah : for-do, while-do, repeat-until
7
Materi pembahasan lengkapnya
1. Definisi dan tujuan pembelajaran,
Notasi algoritma dan bentuk-bentuk
penyajian algoritma 1. Matriks
2. Pengenalan tipe-nama-nilai data, 2. Pencarian
variabel dan konstanta
3. Pengurutan
3. Contoh-contoh permasalahan UTS
sederhana yang akan dibuatkan 4. Rekaman
algoritmanya 5. Stack
4. Struktur dasar Algoritma 6. Pointer
5. Modularisasi (prosedur dan fungsi) 7. Studi kasus
6. Pengolahan teks / pengaksesan
beruntun 8
7. Larik (array)
Tipe-tipe data
•Tipe data dasar (tipe primitif)
•Integer (contoh : 10,100,-50)
•Real (contoh : 10.25, 3.9)
•Char (‘a’, ‘A’)
•Boolean (T/F)
•Tipe bentukan / tipe terstruktur (tipe lain yang dibentuk dari tipe data dasar)
•Array (variabel berindeks)
•Record (kumpulan field-field)
•File (jenis file external)
•Pointer (varibel dinamis)
•dll.
9
Variabel dan Konstanta
• Variabel adalah tempat menampung data, dimana data di
dalamnya cenderung mengalami perubahan akibat adanya
proses
• Contoh, int r; {dalam bahasa c++ }
• Konstanta sama seperti variabel, hanya data yang dikandung
cenderung tetap (tidak mengalami perubahan)
• Contoh, const float pi=3.14; {dalam bahasa c++}
10
Contoh-contoh permasalahan sederhana
1.Rumus-rumus penyelesaian bentuk bangun datar
(persegi, persegi panjang, segitiga, lingkaran,
travesium, dll.)
2.Menghitung nilai rata-rata
3.Seputar Input dan Ouput
11
Algoritma bentuk bangun datar (Persegi)
Program hitungluaspersegi
Deklarasi
• Berikut adalah sebuah persegi, maka untuk
sisi, luas : integer
menghitung luas persegi adalah menggunakan
rumus: sisi x sisi Sisi=5 Algoritma :
sisi←5
luas←sisi*sisi
write(luas)
12
Algoritma (Persegi Panjang)
• Berikut adalah sebuah persegi panjang, maka Program hitungluaspp
untuk menghitung luas persegi panjang
Deklarasi
adalah menggunakan rumus: panjang x lebar panjang, lebar,luas : integer
Lebar=5 Algoritma :
panjang←10
Panjang=10 lebar←5
luas←panjang*lebar
write(luas)
• Bila dianalisa, yang terkait bentuk Persegi
Panjang, ada 3, yakni : elemen panjang dan
lebar dan luas, maka algoritmanya:
13
Algoritma (Segitiga)
Program menghitung_luas_segitiga
• Berikut adalah sebuah segitiga, maka
Deklarasi
untuk menghitung luas segitiga adalah alas,tinggi : integer
menggunakan rumus: (alas x tinggi)/2 luas : real
Tinggi=7
Algoritma :
alas←6
Alas =6 tinggi←7
luas←(alas*tinggi)/2
write(luas)
• Bila dianalisa, yang terkait bentuk
Segitiga, ada 3, yakni : elemen alas dan
tinggi dan luas, maka algoritmanya:
14
Algoritma (Menghitung nilai rata-rata)
Program menghitung_nilai_rata_rata
• Contoh : diketahui ada nilai Deklarasi
uts=80 dan nilai uas=90, bila uts,uas,jumlah : integer
ingin diketahui nilai rata- rata2 : real
Algoritma :
rata kedua nilai tersebut, uts←80
maka langkahnya adalah uas←90
menjumlahkan kedua nilai jumlah←uts+uas
rata2←jumlah/2
tersebut, kemudian jumlah write(rata2)
nilai dibagi 2
15
Algoritma (Input dan Output)
• Contoh : terdapat input Program contoh_input_output
Deklarasi
nilai uts dan input nilai uts,uas,jumlah : integer
hasil : real
uas, kemudian kedua Algoritma :
nilai input dijumlahkan, write(“Masukkan nilai uts :”)
read(uts)
dan hasil penjumlahan write(“Masukkan nilai uas :”)
kemudian dibagi 2, read(uas)
jumlah←uts+uas
maka algoritma sbb: hasil←jumlah/2
write(“Hasil nilai rata-rata =“,hasil)
16
Tipe dasar (integer)
17
Tipe dasar (real)
• Tipe bilangan pecahan (real), seperti : 10.25,3.5, dst.
• Operasi Aritmatika (melibatkan operator : *, +, -, / )
• Contoh : 2.2*2.5, 5.10+2.25, 4/2, 5-2
• Operasi Perbandingan (melibatkan operator : >, <, <=, >=, >< )
• Contoh : 3.0<3.2, 10><10, 2>=2
18
Tipe dasar (logika/boolean)
• Tipe yang hanya memiliki nilai true atau false
• Operasi logika (melibatkan operator : not, and, or, xor)
• Contoh : A B A and B A or B A xor not A
B
True True True True False False
True False False True True False
False True False True True True
False false False false False True
19
Tipe datar (char)
• Tipe yang mengandung karakter ( huruf alfabet, tanda baca, angka “0”-”9”,
dan karakter khusus : “&”, “^”, “%” )
• Operasi perbandingan (melibatkan operator : =, ><, <, >, >=, <= )
• Contoh : ‘a’ >< ‘A’
20
Tipe bentukan (string dan record)
• Tipe string adalah array dari tipe char : x=“aku”
• Operasi penyambungan (concatenation, dengan simbol ‘+’)
• Operasi perbandingan (melibatkan operator : =, <, >, <=, >=, >< )
21
Nilai Data
• Cara memberikan suatu nilai ke dalam suatu variabel dapat dilakukan
dengan 2 cara:
• 1. Penugasan (Assignment)
• Contoh : y←10
• 2. Masukkan (Input)
• Contoh : read(y)
22
Kesimpulan
1. Definisi algoritma, tujuan pembelajaran, tipe-nama-nilai
2. Operasi aritmatika, relasi, logika
3. Pemrograman dan bahasa program
4. Notasi algoritma (bahasa alami, diagram alir, pseudo-code
5. Struktur Dasar (runtunan, seleksi, perulangan)
6. Latihan algoritma runtunan
7. Latihan tipe dasar dan tipe bentukan
23
Link Video Pembelajaran (Delphi7, Javascript, C++, Python)
• tutorial delphi7 :
• https://www.youtube.com/watch?v=JuGULgGmOVg
• tutorial javascript :
• https://www.youtube.com/watch?v=pWOCO4uXOtY&t=83s
• https://www.youtube.com/watch?v=EzXFWpibjTM