Algoritma
(Struktur, Tipe Data, Input/Output)
Struktur Algoritma
Struktur Algoritma
Pada dasarnya notasi algoritma terdiri dari 3
bagian yaitu :
- Judul Algoritma
- Deklarasi Algoritma
- Deskripsi Algoritma
Setiap bagian dapat diberikan komentar untuk
memperjelas maksud dari notasi yang dituliskan
Struktur Algoritma
Algoritma NAMA_ALGORITMA
{uraian singkat mengenai yang akan dilakukan
algoritma ini}
DEKLARASI
{semua nama yang dipakai, meliputi nama tipe,
nama tetapan, nama peubah, nama prosedur, dan
nama fungsi didefinisikan di sini}
DESKRIPSI
{semua langkah / aksi algoritma dituliskan di
sini}
Judul Algoritma
Bagian yang terdiri atas nama algoritma dan
penjelasan tentang algoritma tersebut
Catatan :
- nama algoritma sebaiknya singkat namun
cukup menggambarkan apa yang dilakukan
oleh algoritma tersebut
- dapat disertai penjelasan (spesifikasi algoritma)
tentang algoritma tersebut
Contoh
Algoritma Penjumlahan
{ Menghitung hasil penjumlahan dari 2 buah
bilangan yang dimasukkan}
Algoritma Perkalian
{ Menghitung hasil perkalian dari 2 buah
bilangan yang dimasukkan}
Deklarasi
Bagian untuk mendefinisikan semua nama yang
dipakai di dalam algoritma
Catatan :
nama tersebut dapat berupa nama tetapan
(konstanta), nama peubah (variabel), nama tipe,
nama prosedur (procedure) ataupun nama
fungsi (function)
Contoh
DEKLARASI
const phi = 3.14 {nama konstanta}
A : char {nama variabel}
B : integer
function tukar (input a:integer) integer
{nama fungsi}
procedure jumlah (input/output a: integer,
input/output a: integer) {nama prosedur}
Contoh Deklarasi
Deklarasi variabel
DEKLARASI
Nilai_Angka, Rata_rata : real
K : integer
R : char
• Deklarasi konstanta
DEKLARASI
Const pi = 3.14
Const max = 250
Const min = 1
Deskripsi
Bagian inti dari algoritma yang berisi uraian
langkah-langkah penyelesaian masalah
Catatan :
- urutan penulisan menentukan urutan
pelaksanaan perintah
- setiap langkah algoritma dibaca dari atas ke
bawah
Contoh
Deskripsi :
read (a,b)
if a > b then
write (a)
else
write (b)
endif
Contoh Struktur Algoritma
Tipe Data, Nama dan Nilai
Tipe Dasar
boolean
merupakan nama tipe data yang menyatakan
logika
Nilai tipe boolean : true dan false
Contoh operasi :
Tipe Dasar
integer
merupakan nama tipe data untuk bilangan
bulat yaitu bilangan yang tidak mengandung
pecahan
Nilai tipe integer : tidak terbatas (minus tak
hingga sampai plus tak hingga)
Operasi : aritmatik dan perbandingan (<, >)
Tipe Dasar
real
merupakan nama tipe data untuk bilangan yang
mengandung pecahan desimal
Nilai tipe real : tidak terbatas (dari minus sampai
plus tak hingga)
Semua konstanta bilangan real harus
mengandung “.” (titik).
Operasi : aritmatik dan perbandingan
Tipe Dasar
char
merupakan tipe data untuk menyatakan karakter
Nilai tipe char : semua huruf dalam alfabet,
angka, tanda baca, tanda operator aritmatik,
karakter khusus dan lain-lain
Daftar karakter baku dapat dilihat dalam tabel
ASCII
Karakter kosong (null) adalah karakter yang
panjangnya nol dilambangkan dengan ‘’
Operasi : perbandingan
Tipe Dasar
String
merupakan tipe data yang menyatakan karakter
dengan panjang tertentu
Nilai tipe string : deretan karakter yang telah
didefinisikan sebelumnya
String kosong (null) adalah string yang
panjangnya nol dan dilambangkan dengan ‘’
Operasi : perbandingan dan concatenation
Operator
Operator aritmetika
+ : tambah
- : kurang
* : kali
/ : bagi
div : hasil bagi berupa bilangan bulat
mod : sisa hasil pembagian
Operator
Operator Perbandingan
< : lebih kecil
> : lebih besar
≤ : lebih kecil atau sama dengan
≥ : lebih besar atau sama dengan
= : sama dengan
≠ : tidak sama dengan
Operator
Operator Logika
not : bernilai kebalikan dari nilai operand
and : bernilai true bila kedua operand bernilai
true
or : bernilai true bila salah satu operand
bernilai true
xor : bernilai true bila diantara operand
saling berlawanan nilainya
Nama
Dalam algoritma nama digunakan untuk
mengidentifikasi “sesuatu”.
Karena itu tiap nama harus unik dalam artian
tidak boleh ada dua buah nama yang sama
Panduan dalam penulisan nama
Nama dimulai dengan huruf alfabet, tidak
dimulai dengan angka, spasi, atau karakter
khusus lainnya
Karakter penyusun nama adalah huruf alfabet,
angka dan “_” (underscore). Tidak mengandung
operator aritmatika, tanda baca dan karakter
khusus lainnya
Karakter di dalam nama tidak dipisah dengan
spasi mengingat nama adalah kesatuan leksikal
Contoh penamaan
Sesuai Panduan :
tugas2 atau tugas_2
nilai_ujian atau nilaiujian
jumlah
A1
Tidak sesuai panduan :
2tugas
nilai ujian
hasil-1
A1
Bentuk Penamaan
1. Peubah (variabel)
Peubah adalah tempat penyimpanan data/informasi di memori
ang isinya dapat diubah.
Contoh:
DEKLARASI
x, nilai, jumlah : real
k : integer
c : char
x, nilai, jumlah, k, dan c adalah nama peubah. Nilai-nilai peubah
dapat diubah dengan instruksi algoritma.
Bentuk Penamaan
2. Konstanta (constant)
Merupakan tempat penyimpanan di dalam memori yang isinya tetap
selama pelaksanaan program dan tidak dapat diubah. Notasi untuk
menyatakan konstanta adalah const
Contoh:
DEKLARASI
const phi = 3.14
const Nmaks = 100
const sandi = ‘XYZ’
phi, Nmaks, dan sandi adalah nama konstanta. Nilai konstanta yang
sudah diisikan ke dalam nama konstanta tidak dapat diubah oleh instruksi
di dalam algoritma.
Bentuk Penamaan
Nama fungsi
3.
Contoh:
function MAKSIMUM(A, B: integer) integer
{ mengembalikan nilai terbesar antara A dan B }
MAKSIMUM adalah nama fungsi
Bentuk Penamaan
Nama prosedur
4.
Contoh:
procedure TUKAR(input/output A, B: integer)
{ Mempertukarkan nilai A dan B }
TUKAR adalah nama prosedur
Nilai
Nilai adalah besaran dari tipe data yang sudah
didefinisikan.
Algoritma pada hakikatnya adalah
memanipulasi nilai yang tersimpan pada suatu
variabel atau konstanta
Pengisian Nilai ke variabel
Pengisian nilai ke suatu variabel dapat
dilakukan dengan cara :
- Pengisian nilai secara langsung
(assignment)
- Melalui piranti masukan (input device)
Pengisian secara langsung
(assignment)
Assignment adalah memasukkan suatu nilai ke
dalam variabel dengan syarat nilai yang
diisikan harus bertipe sama dengan variabel
Notasi pengisian nilai secara langsung :
Ex: A 10
CB
X = A*B
D (AB*C)/2
X < 5, X= Z
X= ‘Jl. Ganesa No. 10’
Input / Output
Input
Nilai untuk variabel dapat diisi dari piranti
masukan, misalnya dari keyboard.
Mengisi nilai dari piranti masukan
dinamakan operasi pembacaan data.
Di dalam algoritma instruksi
pembacaan nlai untuk variabel
dilakukan dengan notasi read
Notasi input
read(nama1,nama2,…,namaN)
Contoh:
read(bilangan)
Output
Nilai yang disimpan oleh memori dapat
ditampilkan ke piranti keluaran
(misalnya monitor)
Instruksi penulisan nilai dilakukan dengan
notasi write
Notasi Output
write(nama1,nama2,…,namaN)
write (konstanta)
write(nama,konstanta,ekspresi)
write(ekspresi)
Contoh
write(bilangan1)
write(‘Nilaibilangan 1’,bilangan1)
write (‘Total’, bil1+bil2)
write(bilangan1 * bilangan2)