Algoritma
berasal dari nama Abu Ja’far Mohamed ibnu Musa Al-Khwarizmi,seorang ilmuwan
dari Persia yang menulis kitab Al Jabr wal muqabala pada tahun 825 M. Algoritma
adalah langkah-langkah yang disusun secara tertulis dan berurutan untuk
menyelesaikan suatu masalah. Sedangkan Algoritma Pemrograman adalah
langkah-langkah yang ditulis secara berurutan untuk menyelesaikan masalah
pemrograman komputer.
Dalam pemrograman yang sederhana, algoritma merupakan langkah
pertama yang harus ditulis sebelum menuliskan program. Masalah yang dapat
diselesaikan dengan pemrograman komputer adalah masalah-masalah yang
berhubungan dengan perhitungan matematik.
Hal yang
penting dikuasai dalam pemrograman adalah logika berpikir bagaimana cara
memecahkan masalah pemrograman yang akan dibuat. Kadang-kadang ada masalah
matematika yang sangat gampang jika diselesaikan secara tertulis, tetapi cukup
sulit jika diterjemahkan ke dalam pemrograman. Jika menemukan hal seperti itu,
maka algoritma dan logika pemrograman sangat penting untuk memecahkan masalah.
Sebagai
gambaran, saya mengambil masalah Frekuensi data. Misalnya ada sekelompok data
seperti berikut :
2 4 6 7 2 4 6 6 9 3 5 6 4
Secara tertulis, frekuensi data diperoleh dengan cara menghitung
banyaknya tiap data dan menuliskan data mulai dari data yang terkecil ke
terbesar dalam tabel. Kolom pertama berisi data dan kolom kedua berisi
frekuensi masing-masing data.
|
Data
|
Frekuensi
|
|
2
|
2
|
|
3
|
1
|
|
4
|
3
|
|
5
|
1
|
|
6
|
4
|
|
7
|
1
|
|
9
|
1
|
Baiklah kita mulai untuk membuat Algoritma pemrograman yang sederhana seperti contoh di bawah ini.
Contoh-1:
Buatlah algoritma untuk menghitung frekuensi data seperti pada contoh kasus di atas.
Algoritmanya adalah :
Buatlah algoritma untuk menghitung frekuensi data seperti pada contoh kasus di atas.
Algoritmanya adalah :
- Mulai
- Tentukan banyaknya data (n)
- Tentukan data sebanyak N
- Urutkan data secara Ascending (Mulai dari data kecil ke besar)
- Hitung banyaknya data (frekuensi ) tiap data
- Tampilkan Frekuensi data dalam bentuk tabel
- Selesai
Contoh soal algaritma pemograman:
1. Tulis algoritma yang membaca tiga data, yaitu nilai tugas, nilai
midtest dan nilai final, kemudian menghitung nilai akhir = 20% nilai tugas +
30% nilai midtest + 50% nilai final. Tampilkan nilai akhir ini.
Jawab
:
Algoritma :
Nilai_Tugas
← input
Nilai_Midtest
← input
Nilai_Akhir
← input
Hasil_Tugas
= Nilai_Tugas*30/100
Hasil_Midtest
= Nilai_Midtest*20/100
Hasil_Akhir
= Nilai_Akhir*50/100
Hasil
= Nilai_Tugas+Nilai_Midtest+Nilai_Akhir
Tulis
“Hasil”
2. Buatlah program dengan
persaman matematika : Y = 2x + (8x – 25)
Jawab
Dari persamaan di atas terdiri dari 2 buah variabel yaitu x dan y. Variabel x adalah variabel input dan y adalah variabel output. Tipe variabel boleh integer atau real. Seperti pada pembahasan sebelumnya bahwa Langkah pertama adalah membuat algoritma, kemudian flowchart, dan membuat kode program.
Dari persamaan di atas terdiri dari 2 buah variabel yaitu x dan y. Variabel x adalah variabel input dan y adalah variabel output. Tipe variabel boleh integer atau real. Seperti pada pembahasan sebelumnya bahwa Langkah pertama adalah membuat algoritma, kemudian flowchart, dan membuat kode program.
Algoritma
:
·
Mulai
·
Deklarasikan variabel
·
Tentukan nilai x
·
Hitung nilai Y
·
Cetak x dan y.
·
Selesai
Program Contoh1;
uses crt;
var x,y : integer;
Begin
clrscr;
write('Input Nilai x = ');
readln(x);
y:= 2*x + (8*x -25);
writeln;
writeln(' Y = ',y);
readln;
End.
Output Program:
uses crt;
var x,y : integer;
Begin
clrscr;
write('Input Nilai x = ');
readln(x);
y:= 2*x + (8*x -25);
writeln;
writeln(' Y = ',y);
readln;
End.
Output Program:
3. Buatlah program untuk mencari nilai
a dari persamaan a = (b + 3c)b – bcd
Jawab :
Persamaan
di atas terdiri dari 4 buah variabel yaitu a,b,c,dan d. Gunakan tipe data
integer jika input datanya berupa bilangan bulat saja. Jika ada input data
berupa bilangan desimal, maka harus menggunakan tipe data real.
Algoritma
:
·
Mulai
·
Deklarasikan variabel
·
Input nilai b,c,d
·
Hitung nilai a
·
Cetak nilai a,b,c,d.
·
Selesai
Program Contoh2;
uses crt;
var a,b,c,d : real;
Begin
clrscr;
write('Input Nilai b = ');readln(b);
write('Input Nilai c = ');readln(c);
write('Input Nilai d = ');readln(d);
a:= (b + 3*c)*b - b*c*d;
writeln;clrscr;
writeln(' b = ',b:6:2,' c = ',c:6:2,' d = ',d:6:2);
writeln;
writeln(' Hasil Perhitungan, a = ',a:6:2);
readln;
End.
Ouput Program
uses crt;
var a,b,c,d : real;
Begin
clrscr;
write('Input Nilai b = ');readln(b);
write('Input Nilai c = ');readln(c);
write('Input Nilai d = ');readln(d);
a:= (b + 3*c)*b - b*c*d;
writeln;clrscr;
writeln(' b = ',b:6:2,' c = ',c:6:2,' d = ',d:6:2);
writeln;
writeln(' Hasil Perhitungan, a = ',a:6:2);
readln;
End.
Ouput Program
Materi lain tentang Algaritma dan Pemograman dapat di unduh disini.
SEMOGA BERMANFAAT