Anda di halaman 1dari 26

Konsep Dasar Pemrograman

AnikVegaVitianingsih, S.Kom.,MT
081332765765
@vegavitianingsih
Domain Algoritma
 Masalah : motivasi untuk membuat algoritma.
 Algoritma : prosedur untuk menyelesaikan
masalah. Seringkali satu masalah dapat
diselesaikan dengan lebih dari satu cara
(banyak kemungkinan).
 Program: representasi formal dari suatu
algoritma dengan menggunakan bahasa
pemrograman yang bisa dimengerti oleh
komputer.
 Proses : aktivitas menjalankan langkah-langkah
dalam algoritma.
Penilaian Algoritma
 Algoritma harus benar → keluaran seperti yang
dikehendaki.
 Efisiensi Algoritma
 Kecepatan waktu yang dibutuhkan
 Memori yang dipakai

 Portabilitas : dapat dg mudah diimplementasikan di


berbagai platform komputer.
 Mudah dimengerti
Penyajian Algoritma

 Tulisan
 Urutan langkah-Langkah
 Bahasa manusia
 Flowchart
 Gambar/bagan yang
memperlihatkan urutan dan
hubungan antar proses.
 Pseudocode
Flowchart

System Flowchart
 urutan proses dalam system dengan menunjukkan alat
media input, output serta jenis media penyimpanan
dalam proses pengolahan data.
Program Flowchart
 urutan instruksi yang digambarkan dengan symbol
tertentu untuk memecahkan masalah dalam suatu
program.
Simbol Flowchart:

1. Flow Direction Symbols (Simbol penghubung alur)


2. Processing Symbols (Simbol proses).
3. Input-output Symbols (Simbol input- output)
Flow Direction Symbols
Arus Menunjukkan jalannya arus dari suatu proses
Dokumen/Pemr
osesan
Menunjukkan penghubung dari satu proses ke
Connector proses yang lainnya dalam halaman/lembar
yang sama
Menunjukkan penghubung dari satu proses ke
Offline proses yang lainnya dalam halaman/lembar
Connector yang berbeda
Processing Symbols
Menunjukkan proses dari operasi program
Proses
komputer
Merupakan proses manual dalam flowchart atau
Proses
proses yang tidak dilakukan oleh komputer
Manual
(manual)
Menunjukkan tahapan pembuatan keputusan
Decision/
atau suatu kondisi tertentu yang akan
Logika
memberikan jawaban trus or false
Predifined Menyatakan nilai awal suatu proses
Process penyimpanan
Menunjukkan awal dan akhir dari bagan alir
Terminal
dokumen
Offline Menunjukkan data yang akan disimpan pada
Storage suatu media tertentu
Memasukkan data secara manual dengan online
Manual Input
keyboard
Input-output Symbols
Input/Output Menyatakan data input/output
Menyatakan input yang berasal dari
Punched Card
kartu/output yang dutulis pada kartu
Menyatakan input yang berasal dari pita
Magnetic-tape
magnetic atau output yang disimpan ke pita
Unit
magnetic
Menunjukkan dokumen input dan otput
baik untuk proses manual, mekanik atau
Dokument
computer yang akan dicetak laporan ke
printer
Menyatakan input yang berasal dari disk
Disk Storage
atau output yang disimpan ke disk
Menyatakan output yang digunakan berupa
Display
layer (video atau computer)
Contoh Penggunaan Simbol
Contoh-1: Algoritma
 Ada 2 buah gelas. Satu berisi teh dan satunya lagi
berisi kopi. Bagaimana caranya menukar isi masing-
masing gelas?

teh kopi
Penyelesaian Contoh-1:
Algoritma
 Siapkan gelas
cadangan X X

 Tuangkan gelas yang


berisi teh ke gelas X teh
cadangan

 Tuangkan gelas yang


berisi kopi ke gelas
yang awalnya dipakai teh
teh kopi

 Tuangkanisi gelas
cadangan ke gelas
yang awalnya berisi kopi
kopi X
Contoh-2: Algoritma
 Bagaimana menentukan apakah suatu bilangan
merupakan bilangan ganjil atau bilangan genap.
1→1

2→0
➔ Operator aritmatika % ➔ if bilangan % 2==0 then
3→1
genap
4→0
else
5→1
ganjil
6→0

7→1

8→0

9→1

10 → 0
Penyelesaian Contoh-2:
 Algoritmanya :
A. Masukkan bilangan yang akan ditentukan
B. Bagi bilangan dengan bilangan 2
C. Hitung sisa hasil bagi pada langkah B.
D. Jika sisa hasil bagi = 0, maka bilangan = genap.
Jika tidak, maka bilangan = ganjil.

Pseudocode:
Pseudocode:
input (bilangan)
input (bilangan)
Bil bilangan %2
If bilangan % 2==0 then “genap” else “ganjil
If Bil ==0 then “genap” else “ganjil
Output (bilangan)
Output (Bil)
Contoh-3: Algoritma
 Permasalahan: Buatlah sebuah rancangan program
dengan menggunakan flowchart untuk mencari luas
persegi panjang.
 Rumus → L = panjang x lebar
 Algoritma menghitung luas persegi panjang :
1. Input panjang (P)
2. Input Lebar (L)
3. Luas = P * L Pseudocode”
Step 1: input (p)
4. Output luas Step 2: input (l)
Step 3: L  p * l
Step 4: output (L)
Penyelesaian Contoh-3

Simbol 1: dimulainya sebuah


program.
Simbol 2: menunjukkan bahwa
input data dari p dan l.
Simbol 3: Data dari p dan l
akan diproses dg rumus L = p. l
Simbol 4: hasil output dari
proses dari simbol 3.
Simbol 5: berakhirnya program
dengan tanda End.
Pseudo-code
 Setiap Algoritma akan selalu terdiri dari tiga bagian
yaitu :
 Judul (Header)
 Kamus

 Algoritma

 Pada setiap bagian tersebut apabila akan dituliskan


komentar mengenai setiap bagian tersebut dituliskan
diantara tanda kurung kurawa
 Contoh : { Komentar }
Bagian dari Penulisan Algoritma

Judul
{Bagian ini berisi komentar mengenai Algoritma program, diantaranya bagaimana cara
kerjanya, bagaimana kondisi awal dan akhir dari algoritma program}
Kamus
{Bagian ini berisi definisi nama variabel, nilai inputan awal, nama prosedur, nama
fungsi, dll}
Algoritma
{Bagian ini tempat untuk menuliskan Algoritma}
Judul (Header)
 bagian teks algoritma yang digunakan sebagai tempat
mendefinisikan nama dengan menentukan apakah teks
tersebut adalah program, prosedur, fungsi.
 Setelah judul disarankan untuk menuliskan spesifikasi singkat
dari teks algoritma tersebut.
 Nama algoritma sebaiknya singkat namun cukup
menggambarkan apa yang akan dilakukan oleh
algoritma tersebut.
Kamus (Deklarasi)
 Kamus adalah bagian teks algoritma sebagai tempat untuk mendefinisikan :
 Nama type
 Nama konstanta
 Nama variabel
 Nama fungsi
 Nama prosedur
Algoritma
Kamus
{Nama type} input (c,d) {program menerima input 2 bil c,d}
{Nama konstanta} if c<d then {operasi kondisi}
x,y: integer e a+b {nilai e di assignment nilai a,b}
z: float else
Nama: String d a-b
x=2; output (e) {hasil output}
z=3.14
Menentukan nilai terbesar dari bilangan bulat yang
dibaca dari piranti masukan dan menuliskan hasilnya
ke piranti keluaran.
Contoh Masalah

Algoritma Nilai MHS


diberikan nilai mahasiswa yang meliputi nilai UTS, nilai
UAS, nilai tugas, jika nilai tersebut lebih kecil atau sama
dengan 65 maka mahasiswa tersebut dinyatakan tidak
lulus, jika nilai lebih besar dari 66 maka dinyatakan lulus.
1. baca nilai.
2. jika nilai <= 65 maka
keterangan = tidak lulus
tetapi jika tidak
keterangan = lulus.
3. tulis nilai
Jawab

START
Step 1: Input NilaiUTS, NilaiUAS, NilaiTugas
Step 2: NA  NilaiUTS+ NilaiUAS+NilaiTugas/3
Input
NilaiUTS, NilaiUAS, NilaiTugas
Step 3: if (NA <=65) then
Print “Tidak Lulus”
else
NA NilaiUTS+ NilaiUAS+NilaiTugas/3 Print “Lulus”
endif
N NA<=65 Y Step 4: outpur NA

PRINT PRINT
“Lulus” “Tidak Lulus”

END
Contoh Masalah:

Buatlah algoritma dengan bahasa manusia, flowchart,


pseudocode:

Untuk menghitung celcius dari:


Fahrenheit = 9/5 x ( C + 32)
Reamur = 4/5 x ( C + 32)
Jawab

Bahasa Manusia
START 1. Masukkan nilai Celsius
2. Hitung konversi nilai Celcius ke→
Input Fahrenheit = 9/5 * (Celsius +32)
Celsius Reamur = 4/5 * (Celsius +32)
3. Cetak Celsius, Fahrenheit, Reamur
Fahrenheit = 9/5 x ( C + 32)

Reamur = 4/5 x ( C + 32)


Pseudocode :
Program Konversi_Suhu
Output { Menghitung Fahrenheit dan Reamur }
Celsius, Fahrenheit,
Reamur Kamus
Celsius, Fahrenheit, Reamur : float
Algoritma
END Input (Celsius)
Fahrenheit = 9/5 * (Celsius +32)
Reamur = 4/5 * (Celsius +32)
output Celsius, Fahrenheit, Reamur
25
Tugas

Buat algorithm dengan bahasa manusia, flowchat


dan pseudocode untuk studi kasus berikut:
1. menghitung Luas segitiga, persegi, lingkaran,
trapezium, selimut tabung, jajaran genjang
2. menghitung Volume Balok, Tabung, Kubus
3. menghitung Keliling Lingkaran, persegi, bangun
datar, segitiga

26

Anda mungkin juga menyukai