MODUL ALGORITMA DAN PEMROGRAMAN SMK N 1 KAWUNGANTEN 1 BAB I Menjelaskan Struktur Algoritma A. Pengantar Algoritma Dan Program 1. Apakah Itu Algoritma Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah yang aneh. Orang hanya menemukan kata algorism yang berarti proses menghitung dengan angka arab. Anda dikatakan algorist jika Anda menghitung menggunakan angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja far Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar Wal-Muqabala yang artinya Buku pemugaran dan pengurangan (The book of restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata Aljabar (Algebra). Perubahan kata dari algorism menjadi algorithm muncul karena kata algorism sering dikelirukan dengan arithmetic, sehingga akhiran sm berubah menjadi thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam bahasa Indonesia, kata algorithm diserap menjadi algoritma. Gambar 1. (penemu algoritma)
36
Embed
BAB I Menjelaskan Struktur Algoritma · PDF fileMODUL ALGORITMA DAN PEMROGRAMAN SMK N 1 KAWUNGANTEN 9 BAB II Membuat Alur Logika Pemograman . MODUL ALGORITMA DAN PEMROGRAMAN algoritma
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
1
BAB I
Menjelaskan Struktur Algoritma
A. Pengantar Algoritma Dan Program
1. Apakah Itu Algoritma
Ditinjau dari asal-usul katanya, kata Algoritma sendiri mempunyai sejarah yang
aneh. Orang hanya menemukan kata algorism yang berarti proses menghitung
dengan angka arab. Anda dikatakan algorist jika Anda menghitung menggunakan
angka arab. Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya
kurang memuaskan. Akhirnya para ahli sejarah matematika menemukan asal kata
tersebut yang berasal dari nama penulis buku arab yang terkenal yaitu Abu Ja far
Muhammad Ibnu Musa Al-Khuwarizmi. Al-Khuwarizmi dibaca orang barat
menjadi Algorism. Al-Khuwarizmi menulis buku yang berjudul Kitab Al Jabar
Wal-Muqabala yang artinya Buku pemugaran dan pengurangan (The book of
restoration and reduction). Dari judul buku itu kita juga memperoleh akar kata
Aljabar (Algebra). Perubahan kata dari algorism menjadi algorithm muncul
karena kata algorism sering dikelirukan dengan arithmetic, sehingga akhiran
sm berubah menjadi thm. Karena perhitungan dengan angka Arab sudah
menjadi hal yang biasa, maka lambat laun kata algorithm berangsur-angsur
dipakai sebagai metode perhitungan (komputasi) secara umum, sehingga
kehilangan makna kata aslinya. Dalam bahasa Indonesia, kata algorithm diserap
menjadi algoritma.
Gambar 1. (penemu algoritma)
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
2
2. Algoritma Merupakan Jantung Ilmu Informatika
Algoritma adalah jantung ilmu komputer atau informatika. Banyak cabang ilmu
komputer yang mengarah ke dalam terminologi algoritma. Namun, jangan
beranggapan algoritma selalu identik dengan ilmu komputer saja. Dalam
kehidupan sehari-hari pun banyak terdapat proses yang dinyatakan dalam suatu
algoritma. Cara-cara membuat kue atau masakan yang dinyatakan dalam suatu
resep juga dapat disebut sebagai algoritma. Pada setiap resep selalu ada urutan
langkah-langkah membuat masakan. Bila langkah-langkahnya tidak logis, tidak
dapat dihasilkan masakan yang diinginkan. Ibu-ibu yang mencoba suatu resep
masakan akan membaca satu per satu langkah-langkah pembuatannya lalu ia
mengerjakan proses sesuai yang ia baca. Secara umum, pihak (benda) yang
mengerjakan proses disebut pemroses (processor). Pemroses tersebut dapat berupa
manusia, komputer, robot atau alat-alat elektronik lainnya. Pemroses melakukan
suatu proses dengan melaksanakan atau mengeksekusi algoritma yang
menjabarkan proses tersebut.
B. Definisi Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun
secara sistematis dan logis . Kata logis merupakan kata kunci dalam algoritma.
Langkah-langkah dalam algoritma harus logis dan harus dapat ditentukan bernilai
salah atau benar.
Dalam beberapa konteks, algoritma adalah spesifikasi urutan langkah untuk
melakukan pekerjaan tertentu. Pertimbangan dalam pemilihan algoritma adalah,
pertama, algoritma haruslah benar. Artinya algoritma akan memberikan keluaran
yang dikehendaki dari sejumlah masukan yang diberikan. Tidak peduli sebagus
apapun algoritma, kalau memberikan keluaran yang salah, pastilah algoritma tersebut
bukanlah algoritma yang baik Pertimbangan kedua yang harus diperhatikan adalah
kita harus mengetahui seberapa baik hasil yang dicapai oleh algoritma tersebut. Hal
ini penting terutama pada algoritma untuk menyelesaikan masalah yang memerlukan
aproksimasi hasil (hasil yang hanya berupa pendekatan). Algoritma yang baik harus
mampu memberikan hasil yang sedekat mungkin dengan nilai yang sebenarnya.
Ketiga adalah efisiensi algoritma. Efisiensi algoritma dapat ditinjau dari 2 hal yaitu
efisiensi waktu dan memori. Meskipun algoritma memberikan keluaran yang benar
(paling mendekati), tetapi jika kita harus menunggu berjam-jam untuk mendapatkan
keluarannya, algoritma tersebut biasanya tidak akan dipakai, setiap orang
menginginkan keluaran yang cepat. Begitu juga dengan memori, semakin besar
memori yang terpakai maka semakin buruklah algoritma tersebut.Dalam
kenyataannya, setiap orang bisa membuat algoritma yang berbeda untuk
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
3
menyelesaikan suatu permasalahan, walaupun terjadi perbedaan dalam menyusun
algoritma, tentunya kita mengharapkan keluaran yang sama. Jika terjadi demikian,
carilah algoritma yang paling efisien dan cepat.
Perhatikan algoritma sederhana berikut :
Jika seseorang ingin mengirim surat kepada kenalannya di
tempat lain, langkah yang harus dilakukan adalah:
1. Menyiapkan Peralatan Tulis
2. Menulis surat
3. Surat dimasukkan ke dalam amplop tertutup
4. Amplop ditempeli perangko secukupnya.
5. Pergi ke Kantor Pos terdekat untuk mengirimkannya
Algoritma menghitung luas persegi panjang:
1. Masukkan panjang (P)
2. Masukkan lebar (L)
3. Luas P * L
4. Tulis Luas
1. Pembuatan algoritma mempunyai banyak keuntungan di antaranya:
a) Pembuatan atau penulisan algoritma tidak tergantung pada bahasa
pemrograman manapun, artinya penulisan algoritma independen dari bahasa
pemrograman dan komputer yang melaksanakannya.
b) Notasi algoritma dapat diterjemahkan ke dalam berbagai bahasa
pemrograman.
c) Apapun bahasa pemrogramannya, output yang akan dikeluarkan sama karena
algoritmanya sama.
2. Beberapa hal yang perlu diperhatikan dalam membuat algoritma:
a) Teks algoritma berisi deskripsi langkah-langkah penyelesaian masalah.
Deskripsi tersebut dapat ditulis dalam notasi apapun asalkan mudah
dimengerti dan dipahami.
b) Tidak ada notasi yang baku dalam penulisan teks algoritma seperti notasi
bahasa pemrograman. Notasi yang digunakan dalam menulis algoritma
disebut notasi algoritmik.
c) Setiap orang dapat membuat aturan penulisan dan notasi algoritmik sendiri.
Hal ini dikarenakan teks algoritma tidak sama dengan teks program. Namun,
supaya notasi algoritmik mudah ditranslasikan ke dalam notasi bahasa
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
4
pemrograman tertentu, maka sebaiknya notasi algoritmik tersebut
berkorespondensi dengan notasi bahasa pemrograman secara umum.
d) Notasi algoritmik bukan notasi bahasa pemrograman, karena itu pseudocode
dalam notasi algoritmik tidak dapat dijalankan oleh komputer. Agar dapat
dijalankan oleh komputer, pseudocode dalam notasi algoritmik harus
ditranslasikan atau diterjemahkan ke dalam notasi bahasa pemrograman yang
dipilih. Perlu diingat bahwa orang yang menulis program sangat terikat dalam
aturan tata bahasanya dan spesifikasi mesin yang menjalannya. pseudocode
adalah kode yang mirip dengan instruksi kode program sebenarnya.
e) Algoritma sebenarnya digunakan untuk membantu kita dalam
mengkonversikan suatu permasalahan ke dalam bahasa pemrograman.
f) Algoritma merupakan hasil pemikiran konseptual, supaya dapat dilaksanakan
oleh komputer, algoritma harus ditranslasikan ke dalam notasi bahasa
pemrograman.
C. Definisi Program / Pemrograman
Pemrograman adalah kumpulan instruksi-instruksi tersendiri yang biasanya disebut
source code yang dibuat oleh programmer (pembuat program)
Program adalah kumpulan instruksi atau perintah yang disusun sedemikian rupa
sehingga mempunyai urutan nalar yang tepat untuk menyelesaikan suatu persoalan.
(Menurut P. Insap Santosa)
Bahasa Pemrograman adalah alat untuk membuat program
Konstanta adalah variabel yang nilai datanya bersifat tetap dan tidak bisa diubah.
Untuk mendefinisikan konstanta dalam PHP, menggunakan fungsi define()
Hampir sama dengan variabel, konstanta juga digunakan untuk penyimpanan nilai
sementara. Namun perbedaan konstanta dengan variabel adalah pada konstanta an
da tidak dapat mengubah
nilainya jika sudah dideklarasikan. Cara pendeklarasiannya pun berbeda dengan v
ariabel. Pada konstanta digunakan keyword define untuk mendeklarasikan variabe
l. Konstanta juga tidak diawali dengan tanda $ (dollar).
define('HARGA', 1500);
define('NAMA', 'LUG STIKOMP Surabaya');
Dapat dilihat pada kode diatas bahwa kita selalu gunakan huruf KAPITAL untuk
konstanta. Hal ini tidak harus dilakukan namun semacam peraturan tidak tertulis ji
ka konstanta maka sebaiknya gunakan huruf kapital.
Contoh konstanta.
<?
define ("NAMA", "Achmad Solichin");
define ("NILAI", 90);
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
29
//NAMA = "Muhammad"; //akan menyebabkan error
echo "Nama : " . NAMA;
echo "<br>Nilai : " . NILAI;
?>
Hasil :
Nama : Achmad Solichin
Nilai : 90
Latihan konstanta
<?php
$menu1 ="Menu : Nasi Pecel";
define ('HARGA1',2000);
$menu ="Menu : Nasi Rawon";
define ('HARGA',5000);
echo"$menu1";
echo"<br>";
echo"Harga : ";
echo(HARGA);
?>
Hasil :
4. Operator
Operator adalah simbol yang digunakan dalam program untuk melakukan suatu operasi.
Operator berguna untuk melakukan suatu operasi pada suatu nilai. Operator di PHP
sangatlah umum sehingga mudah untuk dipahami. Disini kita akan membahas operator
yang sering digunakan.
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
30
Latihan(Operator)
<?php
$gaji = 1000000;
$pajak = 0.1;
$hasil = $gaji - ($gaji*$pajak);
echo "Gaji sebelum pajak = Rp. $gaji <br>";
echo "Gaji yang dibawa pulang = Rp. $hasil";
?>
Hasil :
Latihan Soal :
1. Tentukan salah atau benar pada nama-nama variabel berikut ini. Jika salah
cobalah berikan alasan.
a. nama.guru
b. NamaGuru
c. 2x
d. harga/buku
e. hargaPerBuku
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
31
2. Tentukan tipe data yang cocok untuk hal-hal berikut ini (perhatikan ini bukan
nama variabel) dan jelaskan alasannya.
a. Jumlah murid
b. Berat badan
c. Tinggi badan
d. Nama siswa
e. Tempat lahir
f. Tanggal lahir
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
32
BAB V
ARRAY
A. Definisi Array
Variabel-variabel yang kita gunakan selama ini adalah variable biasa yang
memiliki sifat bahwa sebuah nama variable hanya dapat menyatakan sebuah nilai
numeric atau string pada suatu saat. Apabila kita ingin memberi nilai yang baru
pada variable tersebut maka nilai lama akan hilang tergantikan oleh nilai yang
baru. Bagaimana apabila kita ingin menyimpan beberapa nilai/data dalam sebuah
variable dengan nama yang sama, tetapi semua nilai tetap tersimpan? Solusi
yang dapat dilakukan adalah dengan menggunakan indeks pada nama variable
tersebut. Cara ini biasa disebut dengan array. Array adalah struktur data yang
menyimpan sekumpulan elemen yang bertipe sama, setiap elemen diakses
langsung melalui indeksnya. Array merupakan tipe data terstruktur yang berguna
untuk menyimpan sejumlah data yang bertipe sama. Bagian yang menyusun array
disebut elemen array, yang masing-masing elemen dapat diakses tersendiri
melalui indeks array. Indeks array haruslah tipe data yang menyatakan
keterurutan, misalnya integer atau string. Array dapat dianalogikan sebagai
sebuah lemari atau locker yang memiliki sederetan kotak penyimpanan yang
diberi nomor berurutan (lihat Gambar 8). Untuk menyimpan atau mengambil
sesuatu dari kotak tertentu kita hanya cukup mengetahui nomor kotaknya saja.
Gambar 15. Lemari dengan banyak kotak laci di dalamnya
Pada variabel array, kita tidak hanya menentukan tipe datanya saja, tetapi juga
jumlah elemen dari array tersebut atau dalam hal ini adalah batas atas indeksnya.
Pada banyak bahasa pemrograman seperti PHP, C++, Visual Basic, dan beberapa
yang lainnya, nilai indeks awal adalah 0 bukan 1. Cara menuliskan variabel array
berbeda- beda tergantung bahasa pemrograman apa yang dipakai. Tetapi yang
pasti tipe data harus disebutkan dan batas atas indeks harus ditentukan. Untuk
mengisi data pada array kita dapat langsung menentukan pada indeks berapa kita
akan isikan demikian juga untuk memanggil atau menampilkan data dari array.
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
33
Elektronika
Telekomunikasi
Elektro Industri
Teknologi Informasi
Teknik Kimia
Elemen
Elemen Array
Array Jurusan
Dalam terminology array, array jurusan diatas bias dikatakan mempunyai 5 buah
elemen. Setiap elemen mempunyai sebuah nilai. Elemen pertama berisi string
Elektronika ,
elemen kedua berisi string Telekomunikasi , dan seterusnya.
Membuat Array
Suatu array dapat dibuat dengan menggunakan konstruksi array. Sebagai contoh
array jurusan diatas dapat dibentuk dengan menggunakan pernyataan sebagai
berikut ini :
$jurusan = array ( Elektronika ,
Telekomunikasi ,
Elektro Industri ,
Teknologi Informasi ,
Teknik Kimia );
Cara yang lain, anda bisa menggunakan cara sebagai berikut :
$jurusan[] = Elektronika
$jurusan[] = Telekomunikasi
$jurusan[] = Elektro Industri
$jurusan[] = Teknologi Informasi
$jurusan[] = Teknik Kimia
Angka yang diletakkan di dalam tanda [] biasanya disebut kunci atau indeks.
PHP, secara bawaan menggunakan indeks dimulai dengan nol.
Elektronika
Telekomunikasi
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
34
Elektro Industri
Teknologi Informasi
Teknik Kimia
Dalam prakteknya, indeks tidak harus dimulai dari nol. Bahkan anda bias
menciptakan indeks yang tidak berurut.
$bilangan[7] = 100;
$bilangan[13] = 150;
$bilangan[20] = 45;
Tampak pada indeks yang digunakan dimulai dari 7, dan berikutnya tidak
menggunkaan indeks 8 dan 9, melainkan 13 dan 20. hal ini boleh
boleh saja.
Perlu diketahui, bila anda menuliskan pernyataan seperti :
$bilangan[7] = 100;
$bilangan[13] = 150;
$bilangan[20] = 45;
$bilangan[] = 57;
Maka angka 21 akan disimpan ke elemen array yang memiliki indeks berupa 21
(20 + 1).
Mengambil isi Array
Untuk mengambil isi array, anda bias menggunakan notasi :
$nama_array[indeks]
Contoh :
Print ($jurusan[0]);
Akan menampilkan isi elemen pertama array jurusan.
Mengetahui Jumlah elemen Array
PHP menyediakan fungsi bernama count yang berguna untuk mendapatkan
jumlah
elemen array. Fungsi ini memerlukan argument berupa array bersangkutan.
Sebagai
contoh :
$jurusan[0]
Index
$jurusan[1]
MODUL ALGORITMA DAN PEMROGRAMAN
SMK N 1 KAWUNGANTEN
35
$jurusan $jurusan[2]
$jurusan[3]
$jurusan[4] $musik = array ( Jazz , Blues , Fusion );
Printf( Jumlah elemen : %d , count($musik));
Akan menampilkan :
Jumlah elemen = 3
Mengakses Elemen Array menggunakan kalang
Untuk menampilakan array yang berjumlah banyak, tidaklah praktis jika
memakai
sederetan instruksi sebagai berikut :
print ("nama_array[0]<br>]n");
print ("nama_array[1]<br>]n");
...
print ("nama_array[20]<br>]n");
Cara yang lebih baik adalah dengan menggunakan fungsi for. Adapun
perintahnya
sebagai berikut :
For ($i = 0; $i <= 20 ; $i++)
Print( nama_array[$i]<br> );
Array dengan Indeks berupa string
PHP memperkenankan indeks bertipe string. Sebagai contoh, anda bisa
membuat array
seperti berikut :
$hari[ Sunday ] = Minggu ;
$hari[ Monday ] = Senin ;
$hari[ Tuesday ] = Selasa
$hari[ Wednesday ] = Rabu
Pada contoh diatas,
Elemen berindeks Sunday berisi string Minggu ;
Elemen berindeks Sunday berisi string Senin ;
Elemen berindeks Tuesday berisi string Selasa ;
Elemen berindeks Wednesday berisi string Rabu ;
This document was created with Win2PDF available at http://www.daneprairie.com.The unregistered version of Win2PDF is for evaluation or non-commercial use only.