This is the summary of the featured post. This is great place to add your call to action or any other brief message. This is a Blogger template by Lasantha - PremiumBloggerTemplates.com.
Sabtu, 20 Mei 2017
Algoritma dan Pemrograman
Assalamualaikum Warahmatullahi Wabarakatuh
Bissmillahirohmanirohim.
Selamat siang pembaca Blogger STMIK Muhammadiyah Jakarta. Kali ini saya akan
memposting tugas kuliah sebagai berikut :
Mata Kuliah : Algoritma dan Pemrograman
Dosen : Ibu Habibah Nur Fauziah Syafa, S.kom M.Si
Tugas : UAS 1
Judul : "Materi Algoritma dan Pemrograman"
Baiklah berikut postingan saya mengenai materi Algoritma dan Pemrograman.
------------------------------------------------------------------------------------------------------------------------
I. Definisi Algoritma
Serangkaian langkah yang terstruktur secara sistematis yang akan dikerjakan untuk menyelesaikan suatu masalah dengan bantuan computer. Serta alur pemikiran dalam menyelesaikan suatu pekerjaan yang dituangkan secara tertulis.
v Alur pikiran, sehingga algoritma seseorang dapat juga berbeda dari algoritma orang lain.
v Tertulis, artinya dapat berupa kalimat, gambar atau table tertentu.
Contoh Algoritma :
v Jika seseorang ingin mengirim surat kepada kenalannya ditempat lain, maka langkah yang harus dilakukan adalah :
1. Menulis surat.
2. Surat dimasukkan kedalam amplop tertutup.
3. Amplop ditempeli perangko secukupnya.
4. Pergi ke kantor pos terdekatuntuk mengirimkannya.
Dalam suatu bidang computer, algoritma sangat diperlukan dalam menyelesaikan berbagai suatu masalah pemrograman terutama dalam komputasi numeris.
Tanpa algoritma yang dirancang dengan baik, maka proses pemrograman akan menjadi salah, rusak, lambat dan tidak efisien.
II. Kriteria Algoritma
v Input, algoritma dapat memiliki nol atau lebih inputan dari luar.
v Output, algoritma harus memiliki minimal satu buat output (keluaran).
v Definiteness (Pasti), algoritma memiliki intruksi-intruksi yang jelas dan tidak ambigu.
v Finiteness (ada batas), algoritma harus memiliki titik berhenti (stopping role).
v Effectiveness (tepat dan efisien), algoritma sebisa mungkin harus dapat dilaksanakan dan efektif. Contoh intruksi yang tidak efektif adalah :
A = A + 0 atau A = A * 1
III. Jenis Proses Algoritma
v Sequence Process, intruksi dikerjakan secara sekuensial, berurutan.
v Selection Process, Intruksi dikerjakan jika memenuhi kriteria tertentu.
v Iteration Process, Intruksi dikerjakan selama memenuhi suatu kondisi tertentu.
v Concurrent Process, beberapa intruksi dikerjakan secara bersamaan.
Contoh :
Algoritma menghitung luas persegi panjang :
· Masukkan panjang (P)
· Masukkan Lebar (L)
· Luas = P*L
· Tulis Luas.
v Sifat Umum :
· Tidak menggunakan symbol atau sintaks dari suatubahasa pemrograman.
· Tidak tergantung pada suatu bahasa pemrograman.
· Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun.
Selasa, 16 Mei 2017
Flowchart dan Pseudo Code
I.
Definisi Algoritma
Serangkaian langkah
yang terstruktur secara sistematis yang akan dikerjakan untuk menyelesaikan
suatu masalah dengan bantuan computer. Serta alur pemikiran dalam menyelesaikan
suatu pekerjaan yang dituangkan secara tertulis.
v Alur pikiran, sehingga algoritma seseorang dapat juga berbeda dari
algoritma orang lain.
v Tertulis, artinya dapat berupa kalimat, gambar atau table
tertentu.
Contoh Algoritma :
v
Jika
seseorang ingin mengirim surat kepada kenalannya ditempat lain, maka langkah yang
harus dilakukan adalah :
1. Menulis surat.
2. Surat dimasukkan kedalam amplop tertutup.
3. Amplop ditempeli perangko secukupnya.
4. Pergi ke kantor pos terdekatuntuk mengirimkannya.
Dalam suatu bidang computer, algoritma sangat
diperlukan dalam menyelesaikan berbagai suatu masalah pemrograman terutama
dalam komputasi numeris.
Tanpa algoritma yang dirancang dengan baik, maka
proses pemrograman akan menjadi salah, rusak, lambat dan tidak efisien.
II. Kriteria
Algoritma
v
Input,
algoritma dapat memiliki nol atau lebih inputan dari luar.
v
Output,
algoritma harus memiliki minimal satu buat output (keluaran).
v
Definiteness (Pasti), algoritma memiliki intruksi-intruksi yang jelas dan
tidak ambigu.
v
Finiteness (ada batas), algoritma harus memiliki titik berhenti (stopping
role).
v
Effectiveness (tepat dan efisien), algoritma sebisa mungkin harus dapat dilaksanakan dan
efektif. Contoh intruksi yang tidak efektif adalah :
A = A + 0 atau A = A *
1
III. Jenis
Proses Algoritma
v
Sequence
Process, intruksi dikerjakan secara sekuensial, berurutan.
v
Selection
Process, Intruksi dikerjakan jika memenuhi kriteria tertentu.
v
Iteration
Process, Intruksi dikerjakan selama
memenuhi suatu kondisi tertentu.
v
Concurrent
Process, beberapa intruksi dikerjakan secara bersamaan.
Contoh :
Algoritma menghitung
luas persegi panjang :
·
Masukkan
panjang (P)
·
Masukkan
Lebar (L)
·
Luas =
P*L
·
Tulis
Luas.
v
Ciri –
ciri algoritma :
·
Ada
input,
·
Ada
proses,
·
Ada
Output,
·
Memiliki
intruksi – intruksi yang jelas dan tidak ambigu.
·
Harus
mempunyai Stopping role.
v
Sifat
Umum :
·
Tidak
menggunakan symbol atau sintaks dari suatubahasa pemrograman.
·
Tidak
tergantung pada suatu bahasa pemrograman.
·
Notasi-notasinya
dapat digunakan untuk seluruh bahasa manapun.
Contoh kasus dalam
kehidupan sehari – hari :
·
Rebus
air hingga mendidih.
·
Masukkan
mie instan kedalam air mendidih tersebut.
·
Tunggu
beberapa hingga mie terlihat matang.
·
Jika
mie sudah matang, angkat dan tiriskan.
·
Campurkan
bumbu – bumbu dan aduk hingga merata.
I. Flowchart
Flowchart adalah Bagan-bagan yang mempunyai arus yang
menggambarkan langkah-langkah penyelesaian suatu masalah. Flowchart merupakan
cara penyajian dari suatu algoritma.
Ada beberapa jenis
flowchart diantaranya adalah sebagai berikut :
1. System Flowchart
Bagan yang
memperlihatkan urutan proses dalam system dengan menunjukan alat media input,
output serta jenis media penyimpanan dalam proses pengolahan data.
2. Document
Flowchart
Bagan alir dokumen (document flowchart)
atau disebut juga bagan alir formulir (form flowchart)
atau paperwork flowchart merupakan bagan alir yang menunjukkan arus dari
laporan dan formulir termasuk tembusan-tembusannya.
3. Schematic
Flowchart
Bagan alir skematik (schematic flowchart)
merupakan bagan alir yang mirip dengan bagan alir sistem, yaitu untuk
menggambarkan prosedur di dalam sistem. Perbedaannya adalah, bagan alir
skematik selain menggunakan simbol-simbol bagan alir sistem, juga menggunakan
gambar-gambar komputer dan peralatan lainnya yang digunakan. Maksud penggunaan
gambar-gambar ini adalah untuk memudahkan komunikasi kepada orang yang kurang
paham dengan simbol-simbol bagan alir. Penggunaan gambar-gambar ini
memudahkan untuk dipahami, tetapi sulit dan lama menggambarnya.
4. Program Flowchart
Bagan yang
memerlihatkan urutan intruksi yang digambarkan dengan symbol tertentu untuk
memecahkan masalah dalam suatu program.
5. Process
Flowchart
Bagan alir proses (process
flowchart) merupakan bagan alir yang banyak digunakan di teknik
industri. Bagan alir ini juga berguna bagi analis sistem untuk menggambarkan
proses dalam suatu prosedur.
Definisi Flowchart
Bentuk gambar/ diagram
yang mempunyai aliran satu atau dua arah secara sekuensial.
Kegunaan Flowchart :
·
Untuk
mendesain program.
·
Untuk
mempersentasikan program
Secara garis besar,
unsur – unsur pemrograman adalah Input –
Proses – Output. Semua bahasa pemrograman, pasti mempunyai komponen –
komponen sebagai berikut :
·
Input
(scanf)
·
Percabangan
(if, switch)
·
Perulangan
(while, for, for each, loop).
·
Output
(print).
Berikut ini adalah symbol – symbol flowchart :
Contoh flowchart :
Menghitung luas segitiga.
Algoritma :
· Masukkan alas (a)
· Masukkan tinggi (t)
· Hitung luas (L), yaitu hasil
0.5 * alas * tinggi
· Cetak luas (L)
II. Pseudo-Code
v Pseudo-code
adalah kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara
menyelesaikan suatu masalah.
v Pseudo-code
sering digunakan oleh seseorang untuk menuliskan algoritma dari suatu masalah.
v Pseudo-code
berisikan langkah-langkah untuk menyelesaikan suatu permasalahan (hamper sama
dengan algoritma), hanya saja bentuk nya sedikit berbeda dari algoritma.
v Pseudo-code
menggunakan bahasa yang hamper menyerupai bahasa pemrograman. Selain itu,
biasanya pseudo-code menggunakan
bahasa yang mudah dipahami secara universal dan juga lebih ringkas dari pada
algoritma.
v Beda
antara algoritma dan pseudo-code :
Contoh algoritma
mencari luas persegi panjang :


Challenge :
§ Algoritma Luas_Segiempat
§ Menghitung luas segiempat dengan memasukkan nilai
lebar dan panjang segiempat
§ Deklarasi luas,panjang,lebar : bil. bulat
§ Deskripsi :
1. Masukkan nilai lebar dan panjang
2. Hitung luas sama dengan panjang kali lebar
3. Tampilkan Luas
Menghitung luas segitiga
Algoritma :
- Masukkan alas (a)
- Masukkan tinggi (t)
- Hitung luas (L); yaitu 0.5 * alas * tinggi
- Cetak luas (L)
Buatlah algoritma menggunakan
pseudocode & flowchart untuk menentukan luas persegi panjang.
§ Pseudocode
:
Start
Input panjang
Input lebar
Hitung Luas=Panjang*lebar
Cetak "Luas"
Stop
Start
Input panjang
Input lebar
Hitung Luas=Panjang*lebar
Cetak "Luas"
Stop
Buatlah algoritma menggunakan
pseudocode & flowchart untuk mengubah jam dan menit yang diinput ke dalam
satuan detik
§ Pseudocode
:
Start
Input jam
Input menit
Hitung detik=(jam*3600)+(menit*60)
Cetak "detik"
Start
Input jam
Input menit
Hitung detik=(jam*3600)+(menit*60)
Cetak "detik"
Stop
Buatlah algoritma menggunakan pseudocode
& flowchart untuk menghitung luas lingkaran.
§ Pseudocode
:
Start
Input π
Input r
Hitung Luas=Ï€*r*r
Cetak "Luas"
Stop
Input π
Input r
Hitung Luas=Ï€*r*r
Cetak "Luas"
Stop
III. Algoritma dan flowchart untuk deret bilangan Fibonacci
( 1, 1, 2, 3, 5, 8, 13,
21 )
IV.
Algoritma
Pemrograman - Pengulangan atau Looping
§ Pengulangan / looping adalah
pelaksanaan suatu instruksi berulang kali. Di dalam algoritma, pengulangan
dapat dilakukan sejumlah kali, atau sampai kondisi berhenti pengulangan
tercapai.
§ Struktur Pengulangan
Bentuk Umum:
Bentuk Umum:
<inisialisasi>
awal pengulangan
badan pengulangan
akhir pengulangan
<terminasi>
awal pengulangan
badan pengulangan
akhir pengulangan
<terminasi>
§ <inisialisasi>: aksi
yang dilakukan sebelum pengulangan dilakukan untuk pertama kalinya.
§ Badan pengulangan: bagian algoritma
yang diulang
§ <terminasi>: aksi yang
dilakukan setelah pengulangan selesai dilaksanakan
§ <inisialisasi> dan
<terminasi> tidak selalu ada, namun pada berbagi kasus inisialisasi
umumnya diperlukan awal dan akhir pengulangan dinyatakan sebagai kata kunci
yang bergantung pada struktur pengulangan yang digunakan.
§ Macam struktur pengulangan
Struktur FOR pengulangan tanpa kondisi (unconditional looping) jumlah pengulangan sudah diketahui sebelum eksekusi
Struktur FOR pengulangan tanpa kondisi (unconditional looping) jumlah pengulangan sudah diketahui sebelum eksekusi
§ Struktur WHILE
§ pengulangan dengan kondisi
(conditional looping) jumlah pengulangan tidak diketahui sebelum
eksekusi program. Yang dapat ditentukan hanya kondisi berhenti
Struktur REPEAT pengulangan (instruksi-instruksi di dalam badan pengulangan diulangi sampai kondisi berhenti terpenuhi).
Struktur REPEAT pengulangan (instruksi-instruksi di dalam badan pengulangan diulangi sampai kondisi berhenti terpenuhi).
Struktur
FOR
Struktur pengulangan FOR digunakan untuk mengulang statemen atau satu blok statemen berulang kali.
Jumlah pengulangan diketahui atau dapat ditentukan sebelum eksekusi.
Untuk mencacah sudah jumlah pengulangan diperlukan sebuah peubah (variable) pencacah (counter). Peubah ini nilainya selalu bertambah satu setiap kali pengulangan dilakukan.
Jika cacah pengulangan sudah mencapai jumlah yang dispesifikasikan, maka proses pengulangan berhenti.
Bentuk umum struktur FOR:
– Menaik (ascending)
– Menurun (descending)
Struktur pengulangan FOR digunakan untuk mengulang statemen atau satu blok statemen berulang kali.
Jumlah pengulangan diketahui atau dapat ditentukan sebelum eksekusi.
Untuk mencacah sudah jumlah pengulangan diperlukan sebuah peubah (variable) pencacah (counter). Peubah ini nilainya selalu bertambah satu setiap kali pengulangan dilakukan.
Jika cacah pengulangan sudah mencapai jumlah yang dispesifikasikan, maka proses pengulangan berhenti.
Bentuk umum struktur FOR:
– Menaik (ascending)
– Menurun (descending)
§ FOR menaik
for pencacah <- nilai_awal to nilai_akhir do
aksi
endfor
§ pencacah -> menggunakan
tipe data yang memiliki predecessor dan successor, yaitu integer atau karakter
(tipe riil tidak dapat digunakan sebagai pencacah)
§ aksi -> satu atau lebih
instruksi yang diulang.
§ nilai_awal harus lebih kecil
atau sama dengan nilai_akhir (jika nilai_awal lebih besar dari nilai_akhir,
maka badan pengulangan tidak dimasuki)
§ pada awalnya pencacah
diinisialisasikan dengan nilai_awal. Nilai pencacah secara otomatis bertambah
satu setiap kali aksi pengulangan dimasuki, sampai akhirnya nilai pencacah sama
dengan nilai_akhir
§ jumlah pengulangan yang
terjadi = nilai_akhir – nilai_awal + 1
Contoh:
Mencetak tulisan ‘Informatika’ sebanyak 5 kali
Algoritma CETAK_INFORMATIKA
{ Mencetak ‘Informatika’ sebanyak 5 kali }
DEKLARASI
k : integer { pencacah pengulangan }
DESKRIPSI :
for k¬1 to 5 do { ulangi sebanyak 5 kali }
write(‘Informatika’)
endfor
Algoritma CETAK_INFORMATIKA
{ Mencetak ‘Informatika’ sebanyak 5 kali }
DEKLARASI
k : integer { pencacah pengulangan }
DESKRIPSI :
for k¬1 to 5 do { ulangi sebanyak 5 kali }
write(‘Informatika’)
endfor
Langganan:
Postingan (Atom)










