2. ALGORITMA PEMROGRAMAN ( 8 X 2 TM)
Konsep algoritma
Struktur algoritma
algoritma menggunakan bahasa natural
Pengenalan Variabel
Pengenalan tipe data
Pengenalan operator
Pseudocode
Flowchart
Penggunaan Tool flowchart
8. APA YANG KALIAN LAKUKAN JIKA…
Berangkat ke Sekolah?
Mengerjakan Tugas dari Guru?
Membeli makanan di kantin?
9. FAKTA YANG ADA…
Ada tahapan yang harus diikuti pada tiap proses
Tahapan yang harus diikuti tersebut disusun secara logis
Jika tahapan tersebut tidak diikuti, maka proses tidak akan
berhasil
10. ALGORITMA ADALAH…
Menurut : Kamus Besar Bahasa Indonesia
Urutan logis pengambilan putusan untuk pemecahan suatu masalah
Menurut : Rinaldi Munir
Urutan langkah-langkah logis penyelesaian masalah yang disusn sistematis
Menurut : Abu Ja’far Muhammad Ibnu Musa Al Khawarizmi
urutan langkah logis untuk menyelesaikan masalah tertentu
11. SEJARAH ALGORITMA
Algoritma berasal dari nama penulis buku, yakni Abu Ja’far Muhammad
Ibnu Musa Al-Khwarizmi yang berasal dari Uzbekistan. Orang Barat
menyebut Al-Khwarizmi dengan Algorism.
Pada saat itu, Al-Khwarizmi menulis buku dengan judul Al Jabar wal-
Muqabala yang artinya 'Buku Pemugaran dan Pengurangan' (The book of
Restoration and Reduction). Dari judul buku tersebut, kita juga memperoleh
kata “aljabar” atau biasa dikenal dengan algebra.
Abu Abdullah Ibnu Musa al-Khawarizmi (770M-840M) lahir di Khawarizm
(Kheva), kota yang berada di selatan Sungai Oxus (sekarang disebut
Uzbekistan) pada 770 M. Al Khawarizmi merupakan salah satu ilmuan
terkenal di zamannya. Ada beberapa cabang ilmu matematika yang
berhasil ditemukannya, antara lain yang dikenal sebagai astronom dan
geografer.
Awalnya, algoritma merupakan istilah yang merujuk kepada aturan-aturan
aritmetis yang berguna untuk menyelesaikan persoalan dengan
menggunakan bilangan numeric Arab.
13. ALGORITMA SEKUENSIAL
Sebelum berangkat ke sekolah, Rama
menyantap menu sarapan yang telah
disiapkan oleh ibunda tercinta.
Selanjutnya ia memastikan seluruh
tugas dan buku pelajaran untuk hari
itu.
Setelah seluruh memastikan tidak
ada sesuatu yang tertinggal, Rama
berpamitan dan meminta doa
keselamatan dari Ayah dan
Bundanya. Kemudian Ramapun
berangkat ke sekolah bersama
teman-teman terbaiknya
Menyantap Sarapan
Cek Tugas & Pelajaran
Berpamitan pada Orang Tua
Berangkat dengan Teman
14. ALGORITMA PERCABANGAN
Ketika jam istirahat tiba, Rama dan
teman-temannya menghabiskan
waktu di Kantin Bu Enda.
Bu Enda dikenal sangat teliti saat
menerima pembayaran dari
pembelinya. Ia menghitung
pembayaran dengan teliti, Jika uang
pembayaran lebih, maka Bu Enda
pasti memberikan uang kembalian.
Menghitung pembayaran
Bayar
lebih?
Berikan Kembalian
Tidak ada Kembalian
t
y
15. ALGORITMA PERULANGAN
Setelah istirahat, Rama mengikuti
pembelajaran praktik. Guru
memberikan tugas untuk membuat
program input data.
Pada percobaan pertama, program
Rama gagal total, namun ia tidak
putus asa. Ia kembali mengulang
membuat program sampai akhirnya
ia sukses pada percobaan ke 12.
Akhirnya ia mengumpukan
praktiknya pada guru.
Buat Program Input
Program
Sukses?
Kumpulkan ke guru
t
y
16. TUGAS PERTEMUAN 1
Buatlah sebuah contoh kasus yang terjadi di sekolah untuk :
Algoritma Sekuensial
Algoritma Percabangan
Algoritma Perulangan
19. PENGANTAR
Variabel, operator dan tipe data merupakan tiga hal yang akan selalu kita jumpai
ketika kita membuat program. Bahasa pemrograman apapun dari yang paling
sederhana sampai yang paling kompleks, mengharuskan kita untuk mengerti
ketiga hal tersebut
Dalam kehidupan sehari-hari, ketiga hal tersebut sebenanya sering kita jumpai.
Dalam pertemuan kali ini kita akan membahasnya secara lebih detail…
20. ILUSTRASI SINGKAT
A = 5
B = 6
A + B = …
A dan B, dapat diisi dengan nilai
berapapun tergantung kebutuhan
dalam program. A dan B adalah
TEMPAT DATA yang akan
diolah oleh program
5 dan 6 adalah isian dari variable A. Isi
dari variabel memiliki TIPE DATA yang
bisa berbeda tergantung kebutuhan.
Dalam contoh ini, 5 dan 6 adalah tipe
angka.
Tanda + adalah sebuah sebuah symbol
Dari FUNGSI OPERASI yang akan mengolah
nilai-nilai yang diberikan
21. DEFINISI VARIABEL
Tempat dimana kita dapat mengisi
atau mengosongkan nilainya dan
memanggil kembali apabila
dibutuhkan.
Setiap variabel akan mempunyai
nama (identifier) dan nilai
IDENTIFIER NILAI
Nama Dedy
Alamat Sukosari
Umur 15
Hobby Melukis
22. CARILAH VARIABLE, KEMUDIAN TENTUKAN
IDENTIFIER DAN NILAINYA
Hallo semua…. Nama Saya Microsoft Windows 10. Saya adalah produk terbaru dari
perusahaan Microsoft Corporation. Saya dapat dibeli secara online melalui toko
online Amazone.Toko juga menyediakan berbagai aplikasi lain.
Harga jual saya saat ini masih di atas 2 juta rupiah. Harga tersebut pantas dengan
fasilitas yang saya tawarkan. Jika anda membeli pada tanggal 1 Januari 2014, maka
anda akan mendapatkan diskon khusus 25 %.
Demikian dahulu perkenalan kita… Sampai berjumpa….
23. DEFINISI 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 dengan pasti tipe
datanya.
Ketepatan pemilihan tipe data pada
variabel atau konstanta akan sangat
menentukan pemakaian sumberdaya
komputer (terutama memori
komputer).
Tipe Data Keterangan
Integer Angka Bilangan Bulat
Float Angka dengan pechan
Character Kararkter Alfabet
String Sekumpulan character
Boolean Benar/Salah
TIPE DATA STANDAR
24. TENTUKAN TIPE DATA DARI VARIABLE INI
No VARIABEL TIPE DATA
IDENTIFIER NILAI
1 Nama Jojon Suherman
2 Umur 50
3 Alamat Malang
4 Makanan Favorit Bakso
5 Berat 56,6
6 Status Aktif Benar
25. OPERATOR
Operator merupakan simbol atau
karakter yang biasa dilibatkan dalam
program untuk melakukan suatu
operasi atau manipulasi.
Contoh operator misalnya
menjumlahkan dua buah nilai,
memberikan nilai ke suatu variabel,
membandingkan kesamaan dua buah
nilai dan sebagainya.
SIMBOL FUNGSI
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
% Pembagian sisa (Modulus)
< Kurang Dari
> Lebih Dari
26. JENIS OPERATOR
Operator Aritmatika : Melakukan operasi yang hasilnya
adalah angka, misalnya penjumlahan, pengurangan,
pembagian, perkalian
Operator Logika : Melakukan operasi yang hasilnya
adalah BENAR atau SALAH, misalnya perbandingan.
27. TENTUKAN JENIS OPERATORNYA
No Operasi Jenis Operator
1 C = B + A
2 X = 2 (A * 5)
3 Y = 5 < A
4 Z = 2A – 3A
5 B = (2*A) > (4*A)
28. TUGAS PERTEMUAN 2
Sediakan kartu pembayaran dana komite dari sekolah. Dari data tersebut tentukan
Variabel,Tipe Data, dan Operator yang digunakan.
31. PENGANTAR
Langkah pertama dalam membuat algoritma adalah dengan membuat sebuah
narasi (uraian) tentang tahapan-tahapan penyelesaian masalah. Pembuatan narasi
ini akan memudahkan analisa untuk menentukan langkah penyelesaian dalam
program.
Akan tetapi bentuk narasi memiliki kelemahan yaitu membutuhkan waktu untuk
membaca, dan terkadang pembaca memiliki kesimpulan yang berbeda dengan
maksud awal narasi.
Karena itu narasi disederhanakan dalam bentuk langkah-langkah yang lebih
ringkas sehingga lebih jelas dipahami dan lebih mudah diimplementasikan.
32. PENGERTIAN PSEUDOCODE
Berasal dari dua kata : PSEU (menyerupai) CODE (kode), sehingga secara bahasa
dapat bermakna menyerupai kode
Pseudocode merupakan penulisan algoritma dengan mengacu pada bentuk kode
bahasa pemrograman, namun tidak mengacu pada satu bahasa tertentu dan dapat
diimplementasikan pada seluruh bahasa pemrograman
Pseudocode dibuat dengan bahasa yang mudah dimengerti oleh manusia, dan
tidak ada standar baku dalam penulisannya.
33. CONTOH IMPLEMENTASI
Dalam bentuk narasi
Untuk menghitung sisa kembalian
dari sebuah pembayaran, maka
masukkan terlebih dahulu total
pembelian, kemudian masukkan nilai
pembayaran.Terakhir kurangi nilai
pembayaran dengan total pembelian
untuk menentukan sisa kembalian.
Setelah itu tampilkan sisa kembalian
Dalam Pseudocode
Mulai
Input Total Pembelian
Input Nilai Pembayaran
Sisa Kembalian Nilai Pembayaran-
Total Pembayaran
Write Sisa Kembalian
Selesai
34. OPERASI DASAR DALAM PSEUDOCODE
Menerima Data (input)
Menampilkan Informasi (output)
Perhitungan Aritmatika (Compute)
Memberikan nilai ke identifier (Store)
Membandingkan dan Memilih (Compare)
Melakukan Perulangan (Loop)
35. MENERIMA DATA (INPUT)
Penjelasan
Adalah kondisi dimana computer
menerima input dari pengguna
Statemen yang digunakan bisa
menggunakan kata INPUT, READ,
GET, atau BACA.
Contoh
Input NilaiA
Read NilaiA
Get NilaiA
Baca NilaiA
36. MENAMPILKAN INFORMASI
Penjelasan
Kondisi dimana computer
menampilkan sebuah informasi
kepada pengguna.
Informasi ini biasanya berasal dari
data yang sudah diolah dalam
operasi tertentu.
Statemen yang digunakan bisa
menggunakan kata PRINT,WRITE,
OUTPUT, atau CETAK
Contoh
Print SisaKembalian
Write SisaKembalian
Output SisaKembalian
Cetak SisaKembalian
37. OPERASI ARITMATIKA
Penjelasan
Operasi aritmatika menggunakan
operator yang telah dikenal
Biasanya variable yang hasil operasi
diletakkan di bagian depan,
sedangkan operasi aritmatika
diletakkan setelahnya
Contoh
Luas = panjang * Lebar
Sisa = Bayar – TotalBeli
Nilai = (UTS + (2 * UAS))/3
38. MEMBERIKAN NILAI KE IDENTIFIER
Penjelasan
Dilakukan ketika sebuah variable
(identifier) membutuhkan nilai awal
sebelum dioperasikan
Nilai bisa diberikan dengan
menggunakan statemen SET. Bisa
juga dengan menggunakan sama
dengan (=) untuk mengisikan nilai
variable.
Contoh
SET Phi To 3,14
Phi = 3,14
39. MEMBANDINGKAN DAN MEMILIH
(PERCABANGAN)
Penjelasan
Dilakukan dalam kasus percabangan
di mana program diminta memilih
beberapa pilihan berdasarkan
kriteria
Statemen yang digunakan biasanya
IF-THEN-ELSE
Contoh
IF belanja > 100000 THEN
diskon = 10 %
ELSE
diskon = 5 %
ENDIF
40. MELAKUKAN PERULANGAN (LOOP)
Penjelasan
Dilakukan dalam kasus perulangan,
di mana program akan mengulang
proses sejumlah batasan yang
diberikan
Statemen yang digunakan biasanya
DOWHILE - ENDDO
Contoh
DO WHILE angka<10
CETAK angka
angka = angka +1
ENDDO
41. TUGAS
Lakukan wawancara dengan Bendahara sekolah! Kumpulkan informasi tentang
langkah-langkah pembayaran dana komite.
Buatlah pseudocode langkah-langkah pembayaran tersebut!
44. PENGANTAR
Pseudocode pada dasarnya sudah cukup untuk mengilustrasikan sebuah
algoritma. Namun karena tidak ada bentuk standar, maka sangat mungkin terjadi
pemilihan statemen yang berbeda untuk kasus yang sama.
Karena itu, standarisasi bentuk penulisan menjadi sangat dibutuhkan agar terjadi
keseragaman symbol dan bahasa yang pada akhirnya dapat mempermudah
programmer dalam proses penulisan kode programnya
Standarisasi symbol biasa terjadi pada Flow Chart
45. PENGERTIAN FLOWCHART
Flowchart berasal dari kata flow (aliran) dan Chart
(diagram) yang secara harfiah dapat diartikan sebagai
diagram alir
Flowcart menggambarkan suatu tahapan penyelesaian
masalah secara sederhana, terurai, rapi dan jelas
dengan menggunakan simbol-simbol standar.
Karena symbol yang digunakan adalah standar, maka
flowchart dapat digunakan sebagai acuan standar
dalam menggambarkan aliran program dari sejak
dimulai sampai selesai
46. 46
SIMBOL-SIMBOL FLOWCHART
Flow direction symbols
Digunakan untuk menghubungkan simbol satu dengan yang lain
Disebut juga connecting line
Processing symbols
Menunjukan jenis operasi pengolahan dalam suatu proses /
prosedur
Input / Output symbols
Menunjukkan jenis peralatan yang digunakan sebagai media input
atau output
47. 47
FLOW DIRECTION SYMBOLS
Simbol arus / flow
Menyatakan jalannya arus suatu proses
Simbol communication link
Menyatakan transmisi data dari satu lokasi ke lokasi lain
Simbol connector
Menyatakan sambungan dari proses ke proses lainnya
dalam halaman yang sama
Simbol offline connector
Menyatakan sambungan dari proses ke proses lainnya
dalam halaman yang berbeda
48. 48
PROCESSING SYMBOLS
Simbol process
Menyatakan suatu tindakan (proses) yang dilakukan
oleh komputer
Simbol manual
Menyatakan suatu tindakan (proses) yang tidak
dilakukan oleh komputer
Simbol decision
Menujukkan suatu kondisi tertentu yang akan
menghasilkan dua kemungkinan jawaban : ya / tidak
Simbol predefined process
Menyatakan penyediaan tempat penyimpanan suatu
pengolahan untuk memberi harga awal
Simbol terminal
Menyatakan permulaan atau akhir suatu program
49. 49
PROCESSING SYMBOLS
Simbol keying operation
Menyatakan segal jenis operasi yang
diproses dengan menggunakan suatu
mesin yang mempunyai keyboard
Simbol offline-storage
Menunjukkan bahwa data dalam
simbol ini akan disimpan ke suatu
media tertentu
Simbol manual input
Memasukkan data secara manual
dengan menggunakan online keyboard
50. 50
INPUT / OUTPUT SYMBOLS
Simbol input/output
Menyatakan proses input atau output tanpa
tergantung jenis peralatannya
Simbol punched card
Menyatakan input berasal dari kartu atau output
ditulis ke kartu
Simbol magnetic tape
Menyatakan input berasal dari pita magnetis
atau output disimpan ke pita magnetis
Simbol disk storage
Menyatakan input berasal dari dari disk atau
output disimpan ke disk
51. 51
INPUT / OUTPUT SYMBOLS
Simbol document
Mencetak keluaran dalam bentuk dokumen
(melalui printer)
Simbol display
Mencetak keluaran dalam layar monitor
52. 52
MENGHITUNG LUAS PERSEGI PANJANG
Input lebar
Start
End
Input panjang
Luas = panjang * lebar
Print Luas
PSEUDOCODE
Mulai
Input Panjang
Input Lebar
Luas = panjang * Lebar
Output Luas
Selesai
FLOWCHART
53. TUGAS
Dari pseudocode yang telah dibuat pada tugas sebelumnya, ubahlah ke dalam
bentuk Flow Chart!
54. SELANJUTNYA…
Kalian akan lebih
mendalami algoritma
percabangan selama 6
kali tatap mula….
Pastikan kalian sudah
memahami seluruh
materi sebelum
melanjutkan ke
pembahasan
selanjutnya..