Pertemuan 2
Pertemuan 2
LOGIKA &
ALGORTIMA
PENYAJIAN ALGORITMA
FLOWCHART
Flowchart Program
Merupakan bagan alir yang menggambar-
kan urutan logika dari suatu prosedur
pemecahan masalah
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 3 - 23 3
Contoh :
1. Flowchart untuk menentukan
keputusan Anda pada saat akan pergi, jika
hari hujan.
MULAI
Ya
Hujan ?
Edisi: 01 Naik bis/angkot
08/ 5 - 23 5
Rev: 0 Copyright Perguruan Tinggi Raharja
Tdk
Naik motor
SELESAI
START
Edisi: 01
Jumlah = 0
Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 6 - 23 6
Input
Data1, Data2
Output
Jumlah
END
MULAI
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 7 - 23 7
Baca Bil
True
Bil = 0
Cetak Nol
False
True
Bil < 0
Cetak Negatip
False
Cetak Positip
SELESAI
SOAL LATIHAN :
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 08/ 8 - 23 8
PSEUDOCODE
dibaca
Get The Betterdari
Futurepiranti masukan
By Computer Science lalu mencetak
hasilnya kepiranti keluaran
}
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008
2. Deklarasi
Deklarasi adalah bagian teks algoritma sebagai
tempat untuk mendefinisikan :
Nama konstanta
Nama variabel
Deklarasi
Nama type
{Nama konstanta, harus menyebutkan type dan nilai }
Nama fungsi
constant phi : real = 3,14159
Nama prosedur
const nama : string = Alex
const benar : boolean = true
Semua nama tersebut baru dapat dipakai di dalam
algoritma jika telah didefinisikan terlebih dahulu
{Nama Informasi/variabel, menyebutkan type}
didalam kamus.
x,y : integer {suatu nilai yang bertype bilangan
bulat} :
Contoh
NMax : real {nilai maksimum yang bertype bil.
real}
Nama : string {suatu nilai yang merup. kumpulan
character}
Cari : Boolean {suatu nilai logika}
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 12
08/ 12 - 23
3. Deskripsi
Algoritma adalah bagian inti dari suatu algoritma.
Komponen teks algoritma dalam pemrograman
procedural dapat berupa :
Instruksi dasar seperti input/output,
assignment
Sequence (runtutan)
Analisa kasus
Perulangan
Contoh 1 :
Mencetak string Selamat Belajar Algoritma dan
Pemrograman ke piranti keluaran.
Algoritma Cetak_string
{mencetak string Selamat Belajar Algoritma dan
Pemrograman ke piranti keluaran}
Deklarasi
{tidak ada}
Deskripsi
Algoritma Nilai_Maksimal
Output (Selamat Belajar Algoritma dan
{Menentukan nilai tertinggi yang dibaca dari piranti
Pemrograman)
masukan dan hasilnya dicetak ke piranti keluaran}
Deklarasi
Var hasil, x, y : integer { hasil merupakan variabel
Contoh 2 : untuk menampung nilai
Menentukan nilai terbesar dari bilangan
keluaran } bulat
yang dibaca dari piranti masukan danvariabel
{ x,y adalah menuliskan
untuk
hasilnya ke piranti keluaran.menampung nilai masukan }
Deskripsi
input (x,y) { membaca nilai x dan y dari piranti
masukan }
if x < y then { operasi kondisional }
hasil x { hasil di assignment oleh nila terbesar }
else
Edisi: 01
hasil Rev:y 0 Copyright Perguruan Tinggi Raharja 14
08/ 14 - 23
piranti keluaran }
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008
Contoh:
Algoritma Lingkaran {menghitung luas dan keliling
lingkaran }
Contoh 3 :
Deklarasi
Menghitung luas dan keliling lingkaran.
var Jari, Keliling, Luas : real
const phi = 3.14
Deskripsi
Input (Jari)
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 15
08/ 15 - 23
Keliling = 2 * phi * jari
Get The Better Future By Computer Science
Luas = phi * jari * jari
Print (Keliling, Luas)
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008
LANGUAGE STRUCTUE
(english structure Indonesia)
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 16
08/ 16 - 23
Contoh :
Algoritma Kelulusan_mhs, diberikan nama dan nilai
mahasiswa, jika nilai tersebut lebih besar atau sama
dengan 60 maka mahasiswa tersebut dinyatakan lulus,
jika nilai lebih kecil dari 60 maka dinyatakan tidak lulus.
1. baca nama dan nilai mahasiswa.
2. jika nilai >= 60 maka
keterangan = lulus
tetapi jika tidak
keterangan = tidak lulus.
3. tulis
Edisi: 01 namaRev:dan keterangan
0 Copyright Perguruan Tinggi Raharja 17
08/ 17 - 23
SOAL LATIHAN :
1. Buatlah algoritma dengan cara diatas, yaitu :
flowchart, pseudocode dan language structure,
untuk soal dibawah ini :
a) Untuk menghitung :
Fahrenheit = 9/5 x ( C + 32)
Reamur = 4/5 x ( C + 32)
Jawaban No.1 :
Flowchart :
ReamurGet= The
4/5Better
* (Celsius
Future By +32)
Computer Science
Print Celsius, Fahrenheit,
Reamur
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008
Jawaban No.2 :
Flowchart :
X=
Get The KBetter
+ B Future By Computer Science3. Selesai
Print K, B, X
End.
TRANSPARANSI KULIAH TANGGALREVISI : 09 September 2006
LA102 TANGGAL BERLAKU : 09 September 2006
LOGIKA DAN ALGORITMA KODE DOKUMEN : DM-RHJ-005-005-
008
Program Konversi_Suhu;
{ Menghitung Fahrenheit dan Reamur }
uses Crt;
{ Deklarasi }
var Celsius, Fahrenheit, Reamur : real; { Menyiapkan
variable Celsius, Fahrenheit, Reamur sbg real }
{ Deskripsi }
begin
clrscr;
write(Harga Celsius : ');
readln(Celsius);
Fahrenheit = 5/9 * (Celsius +32);
Reamur = 4/5 * (Celsius +32);
writeLn('Harga Celsius : ', Celsius);
Edisi: 01 Rev: 0 Copyright Perguruan Tinggi Raharja 21
08/ 21 - 23
To be continue . . . . . . . .