APRESIASI
Algoritma adalah : Jantung ilmu komputer atau informatika
Dalam kehidupan sehari-hari banyak terdapat proses yang
dinyatakan dalam suatu algoritma .
Secara umum ,pihak (benda) yang mengerjakan proses disebut pemroses
(processor).Pemroses tersebut dapat berupa manusia,komputer,robot atau
alat-alat elektronik lainnya.Pemroses melakuan suatu proses dengn melksanakan
atau mengeksekusi algoritma yang menjabarkan proses tersebut.
Mikroprosesor ialah suatu IC yang bertindak sebagai otak untuk mengolah sistem
sebuh komputer.
Sebuah mikroprosesor mengontrol semua fungsi dari CPU dari komputer atau
perangkat digital lainnya.Mikroprosesor diprogram untuk memberi dan menerima
instruksi komponen lain dari perangkat.Sistem ini dapat mengontrol segala
sesuatu dari perangkat kecil seperti kalkulator dan ponsel hingga mobil besar.
A. ALGORITMA PEMROGRAMAN
* Dalam matematika dan ilmu komputer,algoritma adalah urutan
atau langkah-langkah untuk menyelesaikan suatu masalah yang ditulis secara
berurutan .
*Algoritma pemrograman adalah urutan atau langkah – langkah
untuk menyelesaikan masalah pemrograman komputer.
*Dalam pemrograman ,hal yang paling penting untuk dipahami
adalah logika kita dalam berpikir bagiamana cara untukmemecahkan masalah
pemrograman yag akan dibuat.
1.Sejarah Singkat Algoritma
Algoritma berasal dari kata algorism yang berarti proses
menghitung dengan angka Arab
Algorithm/algoritma berasal dari nama penemunya,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
Walmuqobala yang artiya “ Buku pemugaran dan pengurangan (The book of
restoration and reduction). Al-khuwarizmi juga dikenal sebagai penemu aljabar
atau algebra serta beliau ini adalah seorang ahli astronomi pada masanya.
2.Algoritma
Algoritma secara singkat dapat didefinisikan sebagai
langkah-langkah sistematis dan logis dalam menyelesaikan suatu masalah
a. Pertimbangan dalam pemilihan algoritma
1. Algoritma haruslah benar
Artinya algoritma akan memberikan keluaran
yang dikehendaki dari sejumlah masukan yang diberikan .Tidak peduli sebagus apapun
algoritma,jika membeikan keluaran yang salah,pastilah algorita tersebut
bukanlah algoritma yang baik.
2. Mengetahui seberapa baik hasil yang dicapai oleh
algoritma
Hal ini penting terutama pada algoritma untuk
menyelesaikan masalah yang memerlukan aproksimasi hasil (hasil yang berupa
pendekatan).algoritma yang baik harus mampu memberikan hasil yang sedekat
mungkin dengan nilai sebenarnya.
3. Efisiensi Algoritma
Efisiensi algoritma dapat ditinjau dari dua
hal yaitu efisiensi waktu dan memori.Semakin cepat algoritma menghasilkan
output semakin bagus.Semakin kecil memori yang terpakai semakin bagus algoritma
tersebut.
b. Sifat ,Struktur Dasar,an Cara penulisan algoritma
1.Tidak menggunakan simbul atau sintaks dari suatu bahasa
pemrograman tertentu.
2.Tidak tergantung pada suatu bahasa pemrograman tertentu.
3.Notasi-notasinya dapat digunakan untuk seluruh bahasa
manapun
4.Dapat digunakan untuk mepresentasikan suatu urutan kejadian
secara logis dan dapat diterapkan disemua kejadian sehari-hari.
Penyusun atau struktur dasar algoritma adalah
langkah-langkah.Suatu algoritma dpat terdiri tiga struktir dasar ,yaitu
runtunan ,pemilihan dan pengulangan .
Ketiga jenis langkah tersebut membentuk konstruksi suatu
algoritma.
1.Runtutan (Sequence)
Sebuah runtutan terdiri dari suatu atau lebih Instuksi.Tiap
instruksi dikerjakan secara berurutan sesuai dengan uruta penulisannya,yaitu
sebuah instruksi dilaksanakan setelah instruksi sebelum selesai
dikerjakan.Urutan dari instruksi menentukan hasil akhir dari suatu
algoritma.Bila urutan penulisan berubah,maka mungkin juga hasil akhirnya
berubah.Perhatikan contoh operasi aritmatika berikut ini,
(4+3)*7 = 49,tetapi bila urutan aksinya diubah ,maka hasil
keluaranakan berbeda menjadi 4+(3*7)=25.
2.Pemilihan (Selection)
* Pemilihan yaitu instruksi yang dikerjakan dengn kondisi
tertentu.
*Kondisi adalah persyaratan yang dapat bernilai benar atau
salah.Satu atau beberapa instruksi hanya dilaksanakan apabila kondisi bernilai
benar.Sebaliknya ,apabila salah,maka instruksi tidak akan diaksanakan.
Contoh kasus pemilihan adalah dalam penentuan bilangan genap
atau ganjil sebagai berikut :
a.Masukkan bilangan sebagai sebuah bilangan bulat.
b. Bagi bilangan dengan angka 2,simpan nilai sisa pembagin
dalam variabel sisa.
c.Jika nilai sisa sama dengan 0,maka kerjakan langkah d.
d.Tampilkan GENAP ke layar.
e.Jika nilai sisa tidak sama dengan 0,maka kerjakan langkah
f.
f. Tampilkan GANJIL ke layar.
g. Selesai
3.Pengulangan (Repetition)
Salah satu kelebihan komputer adalah kemampuannya untuk
mengerjaan pekerjaan yang sama berulang kali tnpa mengenal lelah.User tidak
perlu menulis instruksi yang sama berulang kali ,tetapi cukup melakukan
pengulangan dengan instruksi yang tersedia.
Beberapa statment pengulangan di bahasa pemrograman ,yaitu
for.....,while()....,do....while(),repeat..... Until,for....down
to....do, for...to...do dan lain-lain.Contohnya adalah menampilkan
huruf-huruf tertentu sebanyak n kali ke layar sebagai berikut :
a. Deklarasikan variabel huruf untuk menyimpan karakter yang
akan ditampilkan.
b.Deklarasikan variabel counter yang digunakan sebagai
counter pengulangan yang sudah dilakukan.
c.Deklarasikan variabel counter yang digunakan sebagai
counter perulangan yang sudah dilakukan.
d.Masukkan sebuah karakter dan simpan dalam variabel huruf.
e.Masukkan banyaknya perulangan yang diinginkan dan simpan
dalam variabel n.
f. Set nilai counter dengan 0
g.Tampilkan huruf ke layar
h.lakukan penambahan counter dengan 1.
i.Jika nilai counter <n,kerjakan langkah f.
j.Jika nilai counter =n selesai
C. Notasi Penulisan Algoritma
Beberapa notasi yang digunakan dlam penulisn algoritma
diantaranya :
1. 1. Notasi yang
dinyatakan dalam kalimat Deskriptif
Dengan notasi ini,deskripsi setiap langkah djelaskan dengan bahasa yang
jelas.Notasi ini cocok untuk algoritma yang pendek ,namun untuk masalah yang
algoritmanya besar,notasi ini jelas tidak efektif .selain itu ,pengoperasian
notasi algoritma ke notasi bahasa pemrograman cenderung relatif sukar.
Contoh:
Agoritma Bilngan Maksimum
Diberikan tiga buah bilangan bulat .Carilah bilangan bulat
maksimum diantara ketiga bilngan tersebut.
Deskripsi :
a.Baca bilangan 1
b.Baca bilangan 2
c. Bandingkan bilngan 1 dan bilangan 2,kita ambil yang lebih
besar. Jika kedua bilangan tersebut sama besar ,dapat kita ambil bilangan 1 dan
sebut bilangan tersebut MAX
d.Baca bilangan 3
e.Bandingkan MAX dengan bilangan 3 dan pilih yang lebi
besar.Jik kedua sama besar,pilih MAX dan sebut ilangan tersebut MAX.
f.Keluaran sebagai output MAX.
2.Notasi yang dinyatakan dengan Pseudo Code
Pseudo Code adalah notasi yng menyerupai bahasa pemrograman
tingkat tinggi.Keuntungan menggunakan notasi pseudo code adalah kemudahan
mengonversinya lebih tepat yang disebut mentranslasi ke notasi bahasa
pemrograman,karena terdapat korespondensi antara setiap pseudo code dengan
notasi bahasa pemrograman.
Contoh :
Algoritma Bilangan Maksimum
{Dibaca tiga buah bilangan dari peranti masukan .Carilah
bilangan bulat maksium diantara ketiga bilangan tersebut}
Deklarasi :
Bil1,Bil2,Bil3 : integer {bilangan yang dicari maksimumnya}
MAX: integer {variabel bantu}
Deskripsi :
Read(Bil1,Bil2)
IfBil1> = Bil 2 then
Bil1
= MAX
Else
Bil2
= MAX
Read (Bil3)
If Bil3 > = MAX then
Bil3 = MAX
Write = (MAX)
3.Notasi yang dinyatakan dalam flowchart
Sama halnya dengan notasi deskriptif .notsi ini cocok untuk
algoritma yang pendek ,namun untuk masalah yang algoritmanya besar,notasi ini
jeas tidak efektif.Selain itu,pengonversian notasi algoritma ke notasi
pemrograman cenderung relatif sukar.Contoh : Algoritma Bilangan Maksimum dalam
Flowchart.
Aturan umum flowchart
Semua simbol dari flowchart dihubungkan oleh garis aliran
(arrows) yang mengindikasikan arah aliran bukan garis biasa.
Garis aliran memasuki bagian atas simbol dan keluar dari
bagian bawah, kecuali untuk simbol keputusan (decision), yang memiliki garis
aliran yang keluar dari bawah atau samping.
Aliran proses bergerak dari atas ke bawah.
Awal dan akhir pada flowchart disimbolkan dengan terminal.

Pertanyaan :
1.Sebutkan 3 Notasi Algoritma yang dapat dipresentasikan !
2.Jelaskan tentang 3 notasi algoritma tersebut !
3.Sebutkan aturan umum flowchart !
4.Gambarkan bagan flowchart menurut pemahaman kalian
masing-masing,dan upload foto gambar bagan flowchart tersebut di lembar jawaban
google form !

Tidak ada komentar:
Posting Komentar