SlideShare a Scribd company logo
1 of 44
PEMROGRAMAN
KOMPUTER
Chaeriah Wael, ST, MT
Email : chaeriah.wael10@gmail.com
UNRIKA – Batam
Pengantar Algoritma
Pemrograman
 Algoritma adalah sekumpulan langkah-langkah terbatas untuk
mencari solusi suatu masalah.
 Dalam pemrograman, algoritma didefinisikan sebagai metode
yang terdiri dari langkah-langkah terstuktur untuk mencari
solusi suatu masalah dengan bantuan komputer.
Al-Khwārizmī, Persian astronomer and mathematician,
Algoritmi
algorism
Algorithm
the technique of performing basic arithmetic by writing numbers in
place value form and applying a set of memorized rules and facts
to the digits
calculation method
a sequence of finite instructions, often used for calculation and
data processing
Pengertian Algoritma
 Resep masakan
 Panduan registrasi
 Panduan pembukaan tabungan
 Panduan instalasi software
 Panduan pemasangan suatu perangkat
Contoh Algoritma
Algoritma Tempe Goreng :
1. Potong tempe
2. Bumbui tempe
3. Siapkan minyak
4. Goreng tempe
5. hidangkan
 Kasus : menukar dua buah bilangan
Diketahui X = 10 dan Y = 2. Bagaimana cara
menukarkan nilai X dan Y ?
Jawab :
Contoh Algoritma
Cara 1 :
 X = X + Y
 X = X + Y
 X = X + Y
Cara 2 :
 Tampung = X
 X = Y
 Y = Tampung
LATIHAN
1. Diketahui P=0, Q=5 dan R=10.
Diberikan Algoritma P=Q,Q=R, berapa nilai P,Q,R sekarang
?
2. Diketahui Algoritma P=10, P=P+1 dan Q = P
Berapakan Nilai P dan Q ?
3. Input dua buah harga yang dihasilkan dari pengukuran Arus
(Ampere) dan Tahanan (Ohm). Buatlah algoritma untuk
menghitung tegangan yang dihasilkan ! (tuliskan dalam 3
notasi algoritma)
4. Input 3 buah bilangan bulat yang mewakili tiga buah tahanan
dalam Ohm : R1, R2 dan R3. buatlah algortma untuk
menghitung tahanan total yang dihasilkan jika ketiganya
dipasang seri dan paralel ! (tuliskan dalam 3 notasi
algoritma)
LATIHAN
6. Seorang Petani akan berpergian ke kota dengan membawa
seekor kambing, serigala dan rumput yang ketiganya memiliki
berat yang tidak jauh berbeda. Di tengah jalan petani harus
menyebrangi sungai dengan menggunakan perahu dan untuk
melaluinya petani tersebut harus membawa satu persatu
bawaannya. Ditanya : berapa kali petani tersebut harus
melalui jembatan dengan memperhatikan bahwa kambing
makan rumput, serigala makan kambing ?
7. Bagaimana caranya untuk menyeberangkan tiga orang rahib
yang sedang dikejar oleh Tiga orang kanibal ke sisi pulau
yang ada diseberangnya ?
Dengan catatan :
Bila misionarisnya Lebih sedikit dari dari kanibal, maka
misionaris tersebut akan dimakannya.
Sifat-sifat Algoritma
 Finiteness
Jumlah langkah dalam algoritma harus terbatas
 Definiteness
Setiap langkah harus didefinisikan secara tepat, tidak
boleh membingungkan (ambiguous)
 Input
Sebuah algoritma memiliki nol atau lebih input yang
diberikan kepada algoritma sebelum dijalankan
 Output
Sebuah algoritma memiliki satu atau lebih output, yang
biasanya bergantung kepada input
 Effectiveness
Setiap algoritma diharapkan miliki sifat efektif
Analisis Algoritma
Untuk melihat faktor efesiensi & efektifitas dari suatu
algoritma
dapat dilakukan terhadap suatu algoritma dengan melihat :
1. Waktu eksekusi
Hal-hal yang mempengaruhi waktu eksekusi :
 Banyaknya langkah
 Besar dan jenis input data
 Jenis Operasi
 Komputer dan kompilator
2. Penggunaan memori
Semakin besar memori yang dipakai akan semakin
Tahap Pengembangan
Algoritma
MASALAH / IDEA PEMECAHAN SOLUSI / HASIL
Source
Code
Executable
Code
Algoritma
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
Y
Y
T
T
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
Masalah:
Tentukan akar-akar dari suatu persamaan
kwadrat.
Definisi:
Persamaan kwadrat : ax^2 + bx + c = 0
Data yg diperlukan :
Nilai dari a, b dan c : tipe real
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
Model Matematika :
Rumus ABC
x1 = (-b + sqrt(b^2 - 4ac))/2a
x2 = (-b – sqrt(b^2 - 4ac))/2a
Tahap Pengembangan
Algoritma
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
Start
d = b^2 – 4ac
d < 0
Masukkan a,b,c
x1=(-b+sqrt(d))/2a
x2 =(-b-sqrt(d))/2a
Stop
Y
T
Cetak: x1, x2
Cetak:
“Akar majiner”
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code:
=> Run
Output Err
DOKUMEN TASI
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
Tahap Pengembangan
Algoritma
DEFINISI
MASALAH
MEMBUAT
MODEL
RANCANG
ALGORITMA
TULIS PROGRAM
COMPILE
Sintak Err
Executable code :
=> Run
Output Err
DOKUMEN TASI
Penyusunan Algoritma
Tiga cara menyusun algoritma (notasi algoritma) :
 Bahasa manusia
 Pseudocode : Kode atau tanda yang menyerupai
(pseudo) program atau merupakan pejelasan cara
menyelesaikan suatu masalah.
 Flowchart (diagram alir)
 Dalam belajar algoritma, notasi yang umum digunakan
adalah Flowchart dan Pseudocode.
Penyusunan Algoritma
Berdasarkan pemrograman prosedural, suatu teks
algoritma disusun dalam tiga bagian, yaitu :
1. Kepala algoritma : merupakan judul algoritma dan
penjelasan (spesifikasi) tentang algoritma tersebut.
2. Deklarasi : beisi deklarasi semua nama yang
digunakan meliputi tipe, variabel, konstanta, dan nama
sub program.
3. Deskripsi algoritma : merupakan bagian inti yang
berisi uraian langkah-langkah penyelesaian suatu
Pseudocode Standar
 Menerima input : READ, GET
 Menampilkan output : WRITE, PRINT, DISPLAY, SHOW
 Aritmatika : +, -, *, /, div, sub, mul, min
 Pemberian nilai : ←
 Inisialisasi : INIT, SET
 Memilih : IF … THEN … ELSE … , CASE
 Perulangan : FOR, WHILE
Pseudocode Standar
Tentukan Output dari algoritma berikut :
READ X
READ Y
READ Z
IF (X = Y)
X = Y + Z
ELSE
X = Y - Z
ENDIF
Tentukan Outputnya
jika diinputkan X = 5, Y
= 10 dan Z = 15
Contoh Penyusunan Algoritma
Contoh : Algoritma untuk menghitung luas
lingkaran
Menggunakan bahasa manusia :
1. Inputkan nilai jari-jari lingkaran
2. Hitung luas lingkaran menggunakan rumus :
3. Tampilkan nilai luas lingkaran
Luas = 3,14 x jari-jari x jari-
jari
Contoh Penyusunan Algoritma
 Menggunakan pseudocode :
Contoh :
Hitung Luas {untuk menghitung luas lingkaran}
DEKLARASI
r, L
DESKRIPSI
Read (r)
While r ≠ 0 do
L ← 3,14 x r x r
EndWhile
Write (L)
Bagian deskripsi juga bisa
ditulis sebagai berikut :
DESKRIPSI
Read (r)
L ← 3,14 x r x r
Write (L)
Contoh Penyusunan Algoritma
 Menggunakan flowchart :
Mulai
Masukkan
nilai jari-jari
Luas = 3,14 x jari-jari x jari-jari
Tampilkan
luas
Selesai
Pengertian Flowchart
 Notasi algoritma dengan bahasa manusia
memiliki kelemahan dalam penyusunan, dimana
sangat dipengaruhi oleh tata bahasa
pembuatnya, sehingga kadang-kadang sulit
dimengerti oleh orang lain.
 Karena itu dikembangkan notasi algoritma
dengan representasi simbol-simbol yang mudah
dimengerti, diantaranya dengan flowchart.
 Flowchart adalah diagram yang
menggambarkan susunan logika suatu
program.
Simbol-simbol Flowchart
→ Simbol Proses, satu atau beberapa himpunan
penugasan yang akan dilaksanakan secara
berurutan.
→ Simbol Input / Output, simbol yang digunakan
untuk menunjukkan operasi masukan atau keluaran
→ Terminal, Simbol Terminal, simbol yang digunakan untuk
menyatakan awal atau akhir suatu program.
→ Simbol Keputusan, simbol yang digunakan untuk
menyatakan suatu pilihan berdasarkan suatu kondisi
tertentu
→ Simbol persiapan (Preparation), simbol yang
digunakan untuk memberikan nilai awal pada suatu
variabel atau pencacah
Simbol-simbol Flowchart
→ Simbol Connector/penghubung ke halaman yang
sama, simbol yang digunakan untuk menghubungkan
bagian diagram alir pada halaman yang sama.
→ Simbol On page Connector/penghubung ke halaman
lain, simbol yang digunakan untuk menghubungkan
bagian diagram alir pada halaman yang berbeda
→ Simbol Flowline/arah aliran, simbol yang digunakan
untuk menunjukkan arah aliran proses
→ Simbol Subroutine, digunakan untuk menjalankan
proses, sub program, atau prosedur
→ Simbol Annotation, simbol yang digunakan untuk
memberikan keterangan-keterangan untuk memperjelas
simbol-simbol lain
Struktur Dasar Algoritma
1. Struktur urut (sequence)
Struktur urut adalah suatu struktur program dimana
setiap baris program akan dikerjakan secara urut dari
atas ke bawah sesuai dengan urutan penulisannya.
2. Struktur pemilihan (selection)
Struktur pemilihan adalah struktur program yang
melakukan proses pengujian untuk mengambil suatu
keputusan apakah suatu baris atau blok instruksi akan
diproses atau tidak.
3. Struktur pengulangan (repetition)
Struktur pengulangan merupakan struktur yang
melakukan pengulangan terhadap satu baris atau satu
blok baris program beberapa kali sesuai dengan
Struktur Urut (Sequence)
Contoh :
Akan dihitung luas pesegi panjang yang diketahui panjang dan
lebarnya, maka algoritmanya sebagai berikut :
Algoritma Luas_Pesegi_Panjang
Diketahui sebuah pesegi panjang
yang memiliki panjang dan lebar.
Deskripsi :
1. Mulai
2. Baca panjang
3. Baca lebar
4. Hitung luas = panjang * lebar
5. Tampilkan luas
6. Selesai
Struktur Pemilihan
2. Struktur Pemilihan (Selection) dibentuk menggunakan if
dengan bentuk umum sebagai berikut :
Bentuk 1 :
If Kondisi
Proses
Endif
If Kondisi
Proses1
Else
Proses2
Endif
Bentuk 2 :
If Kondisi 1
Proses1
Elseif Kondisi2
Proses2
…
Else
Proses ke-
n
Endif
Bentuk 3 :
Struktur Pemilihan
Bentuk 1 :
Contoh :
Struktur Pemilihan
Bentuk 2 :
Contoh :
Struktur Pemilihan
Bentuk 3 :
Contoh :
Struktur Perulangan (Looping)
 Struktur perulangan dapat dibentuk dengan pernyataan
for dan while.
Contoh :
Perulangan dengan
for
for i = nilai_awal
to nilai_akhir
Proses
Perulangan dengan
While
Proses
Cek
kondisi
?
Ya
Tidak
LATIHAN
Buatlah pseudocode dan flowchart untuk kasus-kasus
berikut :
a) Menukar 2 buah bilangan yaitu bil1 dan bil2 !
b) Menentukan bilangan paling besar dari dua buah
bilangan, yaitu A dan B !
c) Menampilkan bilangan ganjil dari 1 – 20 dengan
perulangan for dan while !
d) Menampilkan nilai faktorial dari n buah bilangan !
e) Menampilkan deret Fibbonaci dengan panjang deret
Jawab
a) Menukar 2 buah bilangan yaitu bil1 dan bil2 !
Pseudocode :
Tukar bilangan
DEKLARASI
bil1, bil2, tampung
DESKRIPSI
Read (bil1)
Read (bil2)
Tampung ← bil1
bil1 ← bil2
bil2 ← tampung
Write (bil1)
Write (bil2)
Mulai
Masukkan bil1, bil2
Tampung = bil1
Tampilkan bil1, bil2
Selesai
bil1 = bil2
bil2 = Tampung
Flowchart :
Jawab
b) Menentukan bilangan paling besar dari A dan B !
Pseudocode :
Cek bil max
DEKLARASI
A, B, Max
DESKRIPSI
Read (A)
Read (B)
IF (A>B)
Max ← A
ENDIF
Write (Max)
Mulai
Masukkan A, B
Tampilkan Max
Selesai
Max = A
A>B ?
Max = B
Y
T
Jawab
c) Menampilkan bilangan ganjil dari 1 – 20 dengan perulangan for dan
while !
Pseudocode :
Deret bil ganjil
DEKLARASI
i, Bil_ganjil
DESKRIPSI
For (i = 1 to 10)
Bil_ganjil ← 2*i - 1
Endfor
Write (Bil_ganjil)
for i = 1 to 10
Bil_ganjil = 2*i - 1
Mulai
Tampilkan Bil_ganjil
Selesai
Jawab
c) Menampilkan bilangan ganjil dari 1 – 20
dengan perulangan for dan while !
Pseudocode dengan While :
Deret bil ganjil
DEKLARASI
i, Bil_ganjil
DESKRIPSI
Set ← 1
While (i < 10)
Bil_ganjil ← 2*i – 1
i ← i + 1
EndWhile
Write (Bil_ganjil)
i = 1
Bil_ganjil = 2*i - 1
Mulai
Tampilkan Bil_ganjil
Selesai
i < 10 ?
i = i + 1
Jawab
d) Menampilkan nilai faktorial dari n
buah bilangan !
Pseudocode :
Hitung Faktorial
DEKLARASI
n, Faktorial, i
DESKRIPSI
Read (n)
Set Faktorial ← 1
For (i = 1 to n)
Faktorial ← Faktorial * i
Endfor
Write (Faktorial)
for i = 1 to n
Faktorial = Faktorial * i
Mulai
Tampilkan Faktorial
Selesai
Baca n
Faktorial = 1
Jawab
e) Menampilkan deret Fibonacci dengan deret
sepanjang 10 !
Contoh deret Fibonacci : 1, 1, 2, 3, 5, 8, 13,
…
Pseudocode :
Deret Fibonacci
DEKLARASI
n, Fibo, i
DESKRIPSI
Read (n)
Set Fibo ← [1 1]
For (i = 3 to n)
Fibo (i) ← Fibo (i-1) + Fibo (i-2)
Endfor
Write (Fibo)
for i = 3 to n
Fibo (i) = Fibo (i-1) + Fibo (i-1)
Mulai
Tampilkan Fibo
Selesai
Baca n
Fibo = [1 1]
TERIMA KASIH

More Related Content

What's hot

Looping Algoritma
Looping AlgoritmaLooping Algoritma
Looping AlgoritmaFirdaus1212
 
Pertemuan 3 - Konsep Dasar Pemrograman
Pertemuan 3 - Konsep Dasar PemrogramanPertemuan 3 - Konsep Dasar Pemrograman
Pertemuan 3 - Konsep Dasar PemrogramanAchmad Solichin
 
struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2Alfian Syamsurizal
 
2 struktur dasar algoritma dan notasi algoritmik pseudo-code
2   struktur dasar algoritma dan notasi algoritmik pseudo-code2   struktur dasar algoritma dan notasi algoritmik pseudo-code
2 struktur dasar algoritma dan notasi algoritmik pseudo-codeAnand Reverse
 
Manfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
Manfaat Aplikasi Program Komputer dalam Pembelajaran FisikaManfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
Manfaat Aplikasi Program Komputer dalam Pembelajaran Fisikahabno
 
Algoritma & pemrograman 2
Algoritma & pemrograman 2Algoritma & pemrograman 2
Algoritma & pemrograman 2Mulyana Yana
 
Artikel tentang perulangan
Artikel tentang perulanganArtikel tentang perulangan
Artikel tentang perulanganditaku
 
Pertemuan 2 : Algoritma & Pemrograman
Pertemuan 2 : Algoritma & PemrogramanPertemuan 2 : Algoritma & Pemrograman
Pertemuan 2 : Algoritma & PemrogramanTri Retna
 
Algoritma dan pemograman
Algoritma dan pemogramanAlgoritma dan pemograman
Algoritma dan pemogramanSyahran Mohamed
 
Pertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganPertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganAchmad Solichin
 
Bab 3. pengenalan algoritma
Bab 3. pengenalan algoritmaBab 3. pengenalan algoritma
Bab 3. pengenalan algoritmaArif Punk Street
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Javra Ketoprak
 
Pertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanPertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanTri Retna
 
Pertemuan 9 : Algoritma & Pemrograman
Pertemuan 9 : Algoritma & PemrogramanPertemuan 9 : Algoritma & Pemrograman
Pertemuan 9 : Algoritma & PemrogramanTri Retna
 

What's hot (19)

Looping Algoritma
Looping AlgoritmaLooping Algoritma
Looping Algoritma
 
Topik 8 Perulangan
Topik 8 PerulanganTopik 8 Perulangan
Topik 8 Perulangan
 
Pertemuan 3 - Konsep Dasar Pemrograman
Pertemuan 3 - Konsep Dasar PemrogramanPertemuan 3 - Konsep Dasar Pemrograman
Pertemuan 3 - Konsep Dasar Pemrograman
 
Pertemuan 2 ~ Flowchart
Pertemuan 2 ~ FlowchartPertemuan 2 ~ Flowchart
Pertemuan 2 ~ Flowchart
 
struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2struktur pengulangan di pascal bagian 2
struktur pengulangan di pascal bagian 2
 
2 struktur dasar algoritma dan notasi algoritmik pseudo-code
2   struktur dasar algoritma dan notasi algoritmik pseudo-code2   struktur dasar algoritma dan notasi algoritmik pseudo-code
2 struktur dasar algoritma dan notasi algoritmik pseudo-code
 
Manfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
Manfaat Aplikasi Program Komputer dalam Pembelajaran FisikaManfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
Manfaat Aplikasi Program Komputer dalam Pembelajaran Fisika
 
Algoritma & pemrograman 2
Algoritma & pemrograman 2Algoritma & pemrograman 2
Algoritma & pemrograman 2
 
Artikel tentang perulangan
Artikel tentang perulanganArtikel tentang perulangan
Artikel tentang perulangan
 
Pertemuan 2 : Algoritma & Pemrograman
Pertemuan 2 : Algoritma & PemrogramanPertemuan 2 : Algoritma & Pemrograman
Pertemuan 2 : Algoritma & Pemrograman
 
Algoritma dan pemograman
Algoritma dan pemogramanAlgoritma dan pemograman
Algoritma dan pemograman
 
Materi 6. perulangan
Materi 6. perulanganMateri 6. perulangan
Materi 6. perulangan
 
Pertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur PerulanganPertemuan 6 - Struktur Perulangan
Pertemuan 6 - Struktur Perulangan
 
1999 turbo-pascal
1999 turbo-pascal1999 turbo-pascal
1999 turbo-pascal
 
Bab 3. pengenalan algoritma
Bab 3. pengenalan algoritmaBab 3. pengenalan algoritma
Bab 3. pengenalan algoritma
 
Algoritma dan pemrograman 1
Algoritma dan pemrograman 1Algoritma dan pemrograman 1
Algoritma dan pemrograman 1
 
Pertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & PemrogramanPertemuan 6 : Algoritma & Pemrograman
Pertemuan 6 : Algoritma & Pemrograman
 
Pertemuan 9 : Algoritma & Pemrograman
Pertemuan 9 : Algoritma & PemrogramanPertemuan 9 : Algoritma & Pemrograman
Pertemuan 9 : Algoritma & Pemrograman
 
Algoritma flowchart
Algoritma flowchartAlgoritma flowchart
Algoritma flowchart
 

Similar to ALGORITMA PEMROGRAMAN KOMPUTER

Bab 3 notasi algoritma
Bab 3 notasi algoritmaBab 3 notasi algoritma
Bab 3 notasi algoritmarisal07
 
Pengertian algoritma
Pengertian algoritmaPengertian algoritma
Pengertian algoritmakoboibdg
 
DASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMADASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMAWalid_1234
 
Logika pemrograman hand out
Logika pemrograman hand outLogika pemrograman hand out
Logika pemrograman hand outgivaro igfar
 
listiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchartlistiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchartMaryanto Sumringah SMA 9 Tebo
 
Alur Logika Pemrograman (1).pdf
Alur Logika Pemrograman (1).pdfAlur Logika Pemrograman (1).pdf
Alur Logika Pemrograman (1).pdfecihyuningsih
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritmacasnadi
 
Bab 3. Pengenalan Dasar dasar Algoritma .ppt
Bab 3. Pengenalan Dasar dasar Algoritma .pptBab 3. Pengenalan Dasar dasar Algoritma .ppt
Bab 3. Pengenalan Dasar dasar Algoritma .ppttaufikhidayat607720
 
Notasi Algoritma pada bahsa pemograman .pptx
Notasi Algoritma pada bahsa pemograman .pptxNotasi Algoritma pada bahsa pemograman .pptx
Notasi Algoritma pada bahsa pemograman .pptxwindaamriani
 
Dasar Pemrogaman Algoritma
Dasar Pemrogaman AlgoritmaDasar Pemrogaman Algoritma
Dasar Pemrogaman AlgoritmaKhairul Anwar
 
Algoritma dan Pemrograman.pptx
Algoritma dan Pemrograman.pptxAlgoritma dan Pemrograman.pptx
Algoritma dan Pemrograman.pptxzonavisual
 
Materi algoritma dan pemrograman insan unggul new
Materi algoritma dan pemrograman insan unggul newMateri algoritma dan pemrograman insan unggul new
Materi algoritma dan pemrograman insan unggul newasdammantap
 

Similar to ALGORITMA PEMROGRAMAN KOMPUTER (20)

Pseudocode
PseudocodePseudocode
Pseudocode
 
02 notasi algoritma
02   notasi algoritma02   notasi algoritma
02 notasi algoritma
 
02 notasi algoritma
02   notasi algoritma02   notasi algoritma
02 notasi algoritma
 
Bab 3 notasi algoritma
Bab 3 notasi algoritmaBab 3 notasi algoritma
Bab 3 notasi algoritma
 
modul algoritma Bab 1
modul algoritma Bab 1modul algoritma Bab 1
modul algoritma Bab 1
 
Pengertian algoritma
Pengertian algoritmaPengertian algoritma
Pengertian algoritma
 
DASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMADASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMA
 
E1 e117049 nurfadhila fahmi_tugas3
E1 e117049 nurfadhila fahmi_tugas3E1 e117049 nurfadhila fahmi_tugas3
E1 e117049 nurfadhila fahmi_tugas3
 
Logika pemrograman hand out
Logika pemrograman hand outLogika pemrograman hand out
Logika pemrograman hand out
 
listiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchartlistiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchart
 
Alur Logika Pemrograman (1).pdf
Alur Logika Pemrograman (1).pdfAlur Logika Pemrograman (1).pdf
Alur Logika Pemrograman (1).pdf
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritma
 
Bab 3. Pengenalan Dasar dasar Algoritma .ppt
Bab 3. Pengenalan Dasar dasar Algoritma .pptBab 3. Pengenalan Dasar dasar Algoritma .ppt
Bab 3. Pengenalan Dasar dasar Algoritma .ppt
 
Notasi Algoritma pada bahsa pemograman .pptx
Notasi Algoritma pada bahsa pemograman .pptxNotasi Algoritma pada bahsa pemograman .pptx
Notasi Algoritma pada bahsa pemograman .pptx
 
Dasar Pemrogaman Algoritma
Dasar Pemrogaman AlgoritmaDasar Pemrogaman Algoritma
Dasar Pemrogaman Algoritma
 
Program
ProgramProgram
Program
 
Algoritma dan Pemrograman.pptx
Algoritma dan Pemrograman.pptxAlgoritma dan Pemrograman.pptx
Algoritma dan Pemrograman.pptx
 
Pk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchartPk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchart
 
Pk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchartPk 1 kimia algo and flowchart
Pk 1 kimia algo and flowchart
 
Materi algoritma dan pemrograman insan unggul new
Materi algoritma dan pemrograman insan unggul newMateri algoritma dan pemrograman insan unggul new
Materi algoritma dan pemrograman insan unggul new
 

ALGORITMA PEMROGRAMAN KOMPUTER

  • 1. PEMROGRAMAN KOMPUTER Chaeriah Wael, ST, MT Email : chaeriah.wael10@gmail.com UNRIKA – Batam Pengantar Algoritma Pemrograman
  • 2.  Algoritma adalah sekumpulan langkah-langkah terbatas untuk mencari solusi suatu masalah.  Dalam pemrograman, algoritma didefinisikan sebagai metode yang terdiri dari langkah-langkah terstuktur untuk mencari solusi suatu masalah dengan bantuan komputer. Al-Khwārizmī, Persian astronomer and mathematician, Algoritmi algorism Algorithm the technique of performing basic arithmetic by writing numbers in place value form and applying a set of memorized rules and facts to the digits calculation method a sequence of finite instructions, often used for calculation and data processing Pengertian Algoritma
  • 3.  Resep masakan  Panduan registrasi  Panduan pembukaan tabungan  Panduan instalasi software  Panduan pemasangan suatu perangkat Contoh Algoritma Algoritma Tempe Goreng : 1. Potong tempe 2. Bumbui tempe 3. Siapkan minyak 4. Goreng tempe 5. hidangkan
  • 4.  Kasus : menukar dua buah bilangan Diketahui X = 10 dan Y = 2. Bagaimana cara menukarkan nilai X dan Y ? Jawab : Contoh Algoritma Cara 1 :  X = X + Y  X = X + Y  X = X + Y Cara 2 :  Tampung = X  X = Y  Y = Tampung
  • 5. LATIHAN 1. Diketahui P=0, Q=5 dan R=10. Diberikan Algoritma P=Q,Q=R, berapa nilai P,Q,R sekarang ? 2. Diketahui Algoritma P=10, P=P+1 dan Q = P Berapakan Nilai P dan Q ? 3. Input dua buah harga yang dihasilkan dari pengukuran Arus (Ampere) dan Tahanan (Ohm). Buatlah algoritma untuk menghitung tegangan yang dihasilkan ! (tuliskan dalam 3 notasi algoritma) 4. Input 3 buah bilangan bulat yang mewakili tiga buah tahanan dalam Ohm : R1, R2 dan R3. buatlah algortma untuk menghitung tahanan total yang dihasilkan jika ketiganya dipasang seri dan paralel ! (tuliskan dalam 3 notasi algoritma)
  • 6. LATIHAN 6. Seorang Petani akan berpergian ke kota dengan membawa seekor kambing, serigala dan rumput yang ketiganya memiliki berat yang tidak jauh berbeda. Di tengah jalan petani harus menyebrangi sungai dengan menggunakan perahu dan untuk melaluinya petani tersebut harus membawa satu persatu bawaannya. Ditanya : berapa kali petani tersebut harus melalui jembatan dengan memperhatikan bahwa kambing makan rumput, serigala makan kambing ? 7. Bagaimana caranya untuk menyeberangkan tiga orang rahib yang sedang dikejar oleh Tiga orang kanibal ke sisi pulau yang ada diseberangnya ? Dengan catatan : Bila misionarisnya Lebih sedikit dari dari kanibal, maka misionaris tersebut akan dimakannya.
  • 7. Sifat-sifat Algoritma  Finiteness Jumlah langkah dalam algoritma harus terbatas  Definiteness Setiap langkah harus didefinisikan secara tepat, tidak boleh membingungkan (ambiguous)  Input Sebuah algoritma memiliki nol atau lebih input yang diberikan kepada algoritma sebelum dijalankan  Output Sebuah algoritma memiliki satu atau lebih output, yang biasanya bergantung kepada input  Effectiveness Setiap algoritma diharapkan miliki sifat efektif
  • 8. Analisis Algoritma Untuk melihat faktor efesiensi & efektifitas dari suatu algoritma dapat dilakukan terhadap suatu algoritma dengan melihat : 1. Waktu eksekusi Hal-hal yang mempengaruhi waktu eksekusi :  Banyaknya langkah  Besar dan jenis input data  Jenis Operasi  Komputer dan kompilator 2. Penggunaan memori Semakin besar memori yang dipakai akan semakin
  • 9. Tahap Pengembangan Algoritma MASALAH / IDEA PEMECAHAN SOLUSI / HASIL Source Code Executable Code Algoritma
  • 11. Tahap Pengembangan Algoritma DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code : => Run Output Err DOKUMEN TASI Masalah: Tentukan akar-akar dari suatu persamaan kwadrat. Definisi: Persamaan kwadrat : ax^2 + bx + c = 0 Data yg diperlukan : Nilai dari a, b dan c : tipe real
  • 12. Tahap Pengembangan Algoritma DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA TULIS PROGRAM COMPILE Sintak Err Executable code : => Run Output Err DOKUMEN TASI Model Matematika : Rumus ABC x1 = (-b + sqrt(b^2 - 4ac))/2a x2 = (-b – sqrt(b^2 - 4ac))/2a
  • 13. Tahap Pengembangan Algoritma TULIS PROGRAM COMPILE Sintak Err Executable code : => Run Output Err DOKUMEN TASI DEFINISI MASALAH MEMBUAT MODEL RANCANG ALGORITMA Start d = b^2 – 4ac d < 0 Masukkan a,b,c x1=(-b+sqrt(d))/2a x2 =(-b-sqrt(d))/2a Stop Y T Cetak: x1, x2 Cetak: “Akar majiner”
  • 20. Penyusunan Algoritma Tiga cara menyusun algoritma (notasi algoritma) :  Bahasa manusia  Pseudocode : Kode atau tanda yang menyerupai (pseudo) program atau merupakan pejelasan cara menyelesaikan suatu masalah.  Flowchart (diagram alir)  Dalam belajar algoritma, notasi yang umum digunakan adalah Flowchart dan Pseudocode.
  • 21. Penyusunan Algoritma Berdasarkan pemrograman prosedural, suatu teks algoritma disusun dalam tiga bagian, yaitu : 1. Kepala algoritma : merupakan judul algoritma dan penjelasan (spesifikasi) tentang algoritma tersebut. 2. Deklarasi : beisi deklarasi semua nama yang digunakan meliputi tipe, variabel, konstanta, dan nama sub program. 3. Deskripsi algoritma : merupakan bagian inti yang berisi uraian langkah-langkah penyelesaian suatu
  • 22. Pseudocode Standar  Menerima input : READ, GET  Menampilkan output : WRITE, PRINT, DISPLAY, SHOW  Aritmatika : +, -, *, /, div, sub, mul, min  Pemberian nilai : ←  Inisialisasi : INIT, SET  Memilih : IF … THEN … ELSE … , CASE  Perulangan : FOR, WHILE
  • 23. Pseudocode Standar Tentukan Output dari algoritma berikut : READ X READ Y READ Z IF (X = Y) X = Y + Z ELSE X = Y - Z ENDIF Tentukan Outputnya jika diinputkan X = 5, Y = 10 dan Z = 15
  • 24. Contoh Penyusunan Algoritma Contoh : Algoritma untuk menghitung luas lingkaran Menggunakan bahasa manusia : 1. Inputkan nilai jari-jari lingkaran 2. Hitung luas lingkaran menggunakan rumus : 3. Tampilkan nilai luas lingkaran Luas = 3,14 x jari-jari x jari- jari
  • 25. Contoh Penyusunan Algoritma  Menggunakan pseudocode : Contoh : Hitung Luas {untuk menghitung luas lingkaran} DEKLARASI r, L DESKRIPSI Read (r) While r ≠ 0 do L ← 3,14 x r x r EndWhile Write (L) Bagian deskripsi juga bisa ditulis sebagai berikut : DESKRIPSI Read (r) L ← 3,14 x r x r Write (L)
  • 26. Contoh Penyusunan Algoritma  Menggunakan flowchart : Mulai Masukkan nilai jari-jari Luas = 3,14 x jari-jari x jari-jari Tampilkan luas Selesai
  • 27. Pengertian Flowchart  Notasi algoritma dengan bahasa manusia memiliki kelemahan dalam penyusunan, dimana sangat dipengaruhi oleh tata bahasa pembuatnya, sehingga kadang-kadang sulit dimengerti oleh orang lain.  Karena itu dikembangkan notasi algoritma dengan representasi simbol-simbol yang mudah dimengerti, diantaranya dengan flowchart.  Flowchart adalah diagram yang menggambarkan susunan logika suatu program.
  • 28. Simbol-simbol Flowchart → Simbol Proses, satu atau beberapa himpunan penugasan yang akan dilaksanakan secara berurutan. → Simbol Input / Output, simbol yang digunakan untuk menunjukkan operasi masukan atau keluaran → Terminal, Simbol Terminal, simbol yang digunakan untuk menyatakan awal atau akhir suatu program. → Simbol Keputusan, simbol yang digunakan untuk menyatakan suatu pilihan berdasarkan suatu kondisi tertentu → Simbol persiapan (Preparation), simbol yang digunakan untuk memberikan nilai awal pada suatu variabel atau pencacah
  • 29. Simbol-simbol Flowchart → Simbol Connector/penghubung ke halaman yang sama, simbol yang digunakan untuk menghubungkan bagian diagram alir pada halaman yang sama. → Simbol On page Connector/penghubung ke halaman lain, simbol yang digunakan untuk menghubungkan bagian diagram alir pada halaman yang berbeda → Simbol Flowline/arah aliran, simbol yang digunakan untuk menunjukkan arah aliran proses → Simbol Subroutine, digunakan untuk menjalankan proses, sub program, atau prosedur → Simbol Annotation, simbol yang digunakan untuk memberikan keterangan-keterangan untuk memperjelas simbol-simbol lain
  • 30. Struktur Dasar Algoritma 1. Struktur urut (sequence) Struktur urut adalah suatu struktur program dimana setiap baris program akan dikerjakan secara urut dari atas ke bawah sesuai dengan urutan penulisannya. 2. Struktur pemilihan (selection) Struktur pemilihan adalah struktur program yang melakukan proses pengujian untuk mengambil suatu keputusan apakah suatu baris atau blok instruksi akan diproses atau tidak. 3. Struktur pengulangan (repetition) Struktur pengulangan merupakan struktur yang melakukan pengulangan terhadap satu baris atau satu blok baris program beberapa kali sesuai dengan
  • 31. Struktur Urut (Sequence) Contoh : Akan dihitung luas pesegi panjang yang diketahui panjang dan lebarnya, maka algoritmanya sebagai berikut : Algoritma Luas_Pesegi_Panjang Diketahui sebuah pesegi panjang yang memiliki panjang dan lebar. Deskripsi : 1. Mulai 2. Baca panjang 3. Baca lebar 4. Hitung luas = panjang * lebar 5. Tampilkan luas 6. Selesai
  • 32. Struktur Pemilihan 2. Struktur Pemilihan (Selection) dibentuk menggunakan if dengan bentuk umum sebagai berikut : Bentuk 1 : If Kondisi Proses Endif If Kondisi Proses1 Else Proses2 Endif Bentuk 2 : If Kondisi 1 Proses1 Elseif Kondisi2 Proses2 … Else Proses ke- n Endif Bentuk 3 :
  • 36. Struktur Perulangan (Looping)  Struktur perulangan dapat dibentuk dengan pernyataan for dan while. Contoh : Perulangan dengan for for i = nilai_awal to nilai_akhir Proses Perulangan dengan While Proses Cek kondisi ? Ya Tidak
  • 37. LATIHAN Buatlah pseudocode dan flowchart untuk kasus-kasus berikut : a) Menukar 2 buah bilangan yaitu bil1 dan bil2 ! b) Menentukan bilangan paling besar dari dua buah bilangan, yaitu A dan B ! c) Menampilkan bilangan ganjil dari 1 – 20 dengan perulangan for dan while ! d) Menampilkan nilai faktorial dari n buah bilangan ! e) Menampilkan deret Fibbonaci dengan panjang deret
  • 38. Jawab a) Menukar 2 buah bilangan yaitu bil1 dan bil2 ! Pseudocode : Tukar bilangan DEKLARASI bil1, bil2, tampung DESKRIPSI Read (bil1) Read (bil2) Tampung ← bil1 bil1 ← bil2 bil2 ← tampung Write (bil1) Write (bil2) Mulai Masukkan bil1, bil2 Tampung = bil1 Tampilkan bil1, bil2 Selesai bil1 = bil2 bil2 = Tampung Flowchart :
  • 39. Jawab b) Menentukan bilangan paling besar dari A dan B ! Pseudocode : Cek bil max DEKLARASI A, B, Max DESKRIPSI Read (A) Read (B) IF (A>B) Max ← A ENDIF Write (Max) Mulai Masukkan A, B Tampilkan Max Selesai Max = A A>B ? Max = B Y T
  • 40. Jawab c) Menampilkan bilangan ganjil dari 1 – 20 dengan perulangan for dan while ! Pseudocode : Deret bil ganjil DEKLARASI i, Bil_ganjil DESKRIPSI For (i = 1 to 10) Bil_ganjil ← 2*i - 1 Endfor Write (Bil_ganjil) for i = 1 to 10 Bil_ganjil = 2*i - 1 Mulai Tampilkan Bil_ganjil Selesai
  • 41. Jawab c) Menampilkan bilangan ganjil dari 1 – 20 dengan perulangan for dan while ! Pseudocode dengan While : Deret bil ganjil DEKLARASI i, Bil_ganjil DESKRIPSI Set ← 1 While (i < 10) Bil_ganjil ← 2*i – 1 i ← i + 1 EndWhile Write (Bil_ganjil) i = 1 Bil_ganjil = 2*i - 1 Mulai Tampilkan Bil_ganjil Selesai i < 10 ? i = i + 1
  • 42. Jawab d) Menampilkan nilai faktorial dari n buah bilangan ! Pseudocode : Hitung Faktorial DEKLARASI n, Faktorial, i DESKRIPSI Read (n) Set Faktorial ← 1 For (i = 1 to n) Faktorial ← Faktorial * i Endfor Write (Faktorial) for i = 1 to n Faktorial = Faktorial * i Mulai Tampilkan Faktorial Selesai Baca n Faktorial = 1
  • 43. Jawab e) Menampilkan deret Fibonacci dengan deret sepanjang 10 ! Contoh deret Fibonacci : 1, 1, 2, 3, 5, 8, 13, … Pseudocode : Deret Fibonacci DEKLARASI n, Fibo, i DESKRIPSI Read (n) Set Fibo ← [1 1] For (i = 3 to n) Fibo (i) ← Fibo (i-1) + Fibo (i-2) Endfor Write (Fibo) for i = 3 to n Fibo (i) = Fibo (i-1) + Fibo (i-1) Mulai Tampilkan Fibo Selesai Baca n Fibo = [1 1]