MATERI ALGORITMA DAN PEMOGRAMAN II
PENGERTIAN ALGORITMA
Algoritma Diperkenalkan Oleh
Ahli Matematika : Abu Ja’far Muhammad Ibnu Musa Al Khawarizmi, seorang
ilmuwan Persia yang menulis kitab al jabr w’al muqabala (rules of
restoration and reduction) sekitar tahun 825 M.
Algoritma adalah : Suatu
prosedur untuk menyelesaikan masalah yang berisi urutan langkah-langkah yg
berintegrasi.
TAHAP PENYELESAIAN MASALAH
KRITERIA ALGORITMA
- Ada Output,
- Efektifitas dan Efesiensi,
- Jumlah Langkahnya Berhingga,
- Berakhir,
- Terstruktur
Suatu algoritma harus menghasilkan output yg tepat guna
(efektif) dlm waktu yg relatif singkat & penggunaan memori yg relatif
sedikit (efesien) dgn langkah yg berhingga & prosedurnya berakhir baik dlm
keadaan diperoleh suatu solusi ataupun tdk ada solusinya
Contoh prosedur untuk menentukan akar kuadrat dari suatu
bilangan Bulat Positif yg di Input:
- Baca bilangan Bulat Positif yg diinput, sebut saja sebagai A
- Dinyatakan Nilai B adalah 0
- Hitung Nilai C yg berisikan Nilai B dikalikan Nilai B
- Jika Nilai C sama dengan Nilai A, maka Nilai B adalah Akar dari Nilai A, lalu stop
- Jika tidak, maka Nilai B akan bertambah 1
- Kembali ke langkah pada No. 3
MENYATAKAN
ALGORITMA
a. Dengan bahasa semu (pseudocode)
Contoh algoritma menghitung Luas Segi tiga :
- Masukan Nilai Alas
- Masukan Nilai Tinggi
- Hitung Luas =( Alas * Tinggi ) / 2
- Cetak Luas
b.
Dengan
diagram alur atau flowchart
Contoh :
c.
Dengan
Statement program / penggalan Program
Contoh (menggunakan
c++):
cin>>alas; untuk input data
cin>> tinggi;
luas = (alas * tinggi)/2 ; proses
cout<<luas; untuk output data
ALGORITMA PERTUKARAN
Diberikan
dua buah gelas berisi teh dan kopi.
Buatlah
pseudocode untuk menukarkan isi kedua gelas itu sedemikian sehingga gelas yang
berisi teh menjadi kopi dan sebaliknya.
MENYATAKAN ALGORITMA
DIAGRAM ALUR (FLOWCHART)
Flowchart
adalah suatu diagram yang menggambarkan susunan logika suatu program.
Simbol :
Simbol :
Proses/prosessing, satu atau beberapa himpunan penugasan yang akan dilaksanakan
secara berurutan
Input / Output data yg akan dibaca & dimasukan ke dalam memori komputer dari suatu
alat input
Terminal,
berfungsi sebagai awal dan akhir dari suatu proses alur.
Decision (kotak keputusan) berfungsi utk memutuskan arah/percabangan yg diambil
sesuai dgn kondisi yg dipenuhi, yaitu Benar/Salah. (dibahas dalam struktur
branching).
Subroutine digunakan untuk menjalankan proses suatu bagian (sub program) atau
prosedur.
Preparation digunakan untuk pemberian harga awal.
Connector/penghubung,
digunakan untuk menghubungkan diagram alur yang terputus dimana bagian tersebut
masih berada pada halaman yang sama.
On page Connector, Untuk menghubungkan sambungan dari bagian flowchart
yang terputus dimana sambungannya berada pada halaman lain.
Flowline,
menunjukkan bagian arah instruksi dijalankan
STRUKTUR DASAR ALGORITMA
1.
Sequence/urutan/runtunan
instruksi dikerjakan dari atas ke bawah secara berurutan
2.
Condition/Decision/selection/branching/keputusan/pemilihan/percabangan/bersyarat
ada 2 macam:
1. Bersyarat (if dan case)
2. Tidak bersyarat (goto)
3.
Looping/repetition/iteration/perulangan
(for dan while)
Struktur Sequence
Contoh
:
Struktur
Branching
Contoh :
Struktur
Looping
Contoh :
MENYATAKAN
ALGORITMA DENGAN KALIMAT
·
Kalimat 1
-
Tampilkan kata “Algoritma”
·
Kalimat 2.
-
nilai r sama dengan 7
-
Hitung s sama dengan r dibagi 2
-
Tampilkan nilai s
MENYATAKAN
ALGORITMA DENGAN FLOWCHART
MENYATAKAN
ALGORITMA DENGAN STATEMENT PROGRAM
1. Judul
Algoritma
- Deklarasi
Berisi pendefinisian nama/identifier
yang digunakan pada bagian deskripsi
3. Deskripsi/statement
Berisi penyelesaian masalah berupa
deretan intruksi
Contoh Pendeklarasian :
-
Tidak ada deklarasi
Algoritma tampilan
begin
Write(“Algoritma”);
end.
-
Dengan deklarasi
Algoritma hitung
r : integer
s : real
begin
r
←7
s
← r/2
write
(s)
end.
Implementasi dalam C++
Tidak ada deklarasi
//algoritma tampilan
main()
{
cout<<”Algoritma”);
}
Dengan deklarasi
//algoritma hitung
Main()
{int r;
float s;
r = 7;
s = r/2;
cout<<s;
}
IDENTIFIER
Identifier adalah nama yang didefinisikan oleh
programmer
Identifier dalam program:
1. Variabel
Tempat
menyimpan nilai yang isinya relative berubah sesuai dengan kondisi terkini
2. Konstanta
Tempat menyimpan nilai yang isinya tetap selama program dijalankan
3. Tipe data bentukan
Jenis data,tipe baru bisa didefenisikan oleh programer
4. Label
Bagian program untuk intruksi lompatan
5. Fungsi/prosedur
sub program
Aturan membuat identifier :
•
Terdiri dari 1 huruf atau lebih maksimal
256 karakter
•
Boleh di gabung dengan angka tapi angka
tidak boleh di letakan di depan
•
Tidak boleh menggunakan keyword/reserved
word/kata cadangan
•
Tidak boleh ada spasi
•
Tidak boleh menggunakan symbol kecuali underscore
(_)
•
Tidak boleh sama
Contoh deklarasi variabel dan konstanta
dalam C++
#define a 3.14 ------> deklarasi konstanta
main()
{
int r; ------> deklarasi variabel
float l;
cin>>r;
l = r * r * a;
cout<<l;
}
Contoh deklarasi label dalam C++
{
int n;
atas: -----> deklarasi label
cout<<"input
nim = “;
cin>>n;
goto atas; ----> pemanggilan label
}
Contoh deklarasi tipe bentukan dalam
C++
{
typedef int bilanganbulat; ---- > deklarasi tipe baru
bilanganbulat
angka; ----> deklarasi variabel
angka = 100;
angka = angka*2;
cout<<angka;
}
Contoh penulisan subprogram (fungsi)
dalam C++
TIDAK MENGEMBALIKAN NILAI
void hitung()
{
int
a,b=10,c=20;
a = b + c;
cout<<"10 + 20 = "<<a;
}
main ()
{
hitung();
}
MENGEMBALIKAN NILAI
int hitung()
{
int
b=10,c=20;
return b + c;
}
main ()
{
cout<<"10 + 20 =
"<<hitung();
}Sekian post dari saya.Semoga post saya ini bermanfaat untuk anda.Makasih.
No comments:
Post a Comment