Upload
niken-halimy
View
82
Download
7
Embed Size (px)
Citation preview
08/09/2013
1
%
• UTS : 35%
• UAS : 35%
• Tugas & Praktikum : 30
By: Vilia Eka Meyana, M.Kom
Email: [email protected]
HP : 085711678818
Selama kuliah….
• Ajukan pertanyaan dan berikan feedback
• Jika Anda merasa saya terlalu cepat, s i lakan interupsi
• There ’s no point in giving classes if nobody understands me
• Do Exercise!
– You’re deluding you rsel f if you think you can learn the material without doing the exercises
08/09/2013
2
1. Absensi selesai sampai 30 menit dari pengajaran di mulai.
2. Berpakaianlah Rapi selayaknya
Anda berada di lingkungan pendidikan
3. Bawalah alat tulis untuk mencatat hal yang tdk ada dimodul
4. Tidak ada pengumpulan tugas
susulan. 5. Informasikan jika pengajaran yang di
lakukan terasa kecepatan 6. Silahkan bertanya jika dirasa kurang
jelas
7. Kerjakan Tugas yang diberikan !
Pendahuluan LOGIKA DAN ALGORITMA
Diperkenalkan Oleh Ahli Matematika : Abu Ja’far
Muhammad Ibnu Musa Al Khawarizmi.
Definisi Algoritma
1. Langkah- langkah yg dilakukan agar solusi masalah dapat diperoleh.
2. Suatu prosedur yg merupakan urutan langkah-langkah yg berintegrasi.
3. Suatu metode khusus yg digunakan untuk menyelesaikan suatu masalah yg nyata.(Webster Dictionary)
4. Urutan langkah atau kegiatan untuk memecahkan masalah
Pertemuan # Materi
1 Konsep Algoritma dan Pemrograman & Flowchar t
2 Tipe Data , Variabel dan konstanta pada
bahasa C
3 Percabangan ( IF , IF thwn Else, Nested IF )
TAHAP PENYELESAIAN MASALAH
Masa l ah
Model
4 Percabangan ( Switch case ) Analisis
5 Pengulangan ( For, DO While, While DO )
6 UTS
7 Array dimensi satu dan Multidim ensi
8 Konsep Graph
9 Tree
10 Teknik Searching
11 Review Materi
Analisis
Algoritm a
Progra m
Ekse k usi
Hasil
Analisis
Data
08/09/2013
3
Kriteria Pemilihan Algoritma
1. Ada Output,
2. Efektifitas dan Efesiensi, 3. Jumlah Langkahnya Berhingga, 4. Berakhir, ( SEMI ALGORITMA ) 5. Terstruktur,
Suatu Algoritma yg terbaik (The Best) : “ 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 dip’oleh suatu solusi ataupun tdk ada solusinya. “
Struktur Dasar Algoritma 1. Runtunan (Sequence)
instruksi dikerjakan secara sekuensial, berurutan.
2. Pemilihan (Selection)
instruksi dikerjakan jika memenuhi kriteria tertentu
3. Pengulangan (Repetition)
instruksi dikerjakan selama memenuhi suatu kondisi tertentu.
Algoritma dan Pemrograman I
Kriteria Algoritma (Donald E. Knuth) • Input: a lgoritma dapat memiliki nol atau lebih
inputan dari luar.
• Output: a lgoritma harus memiliki minimal satu buah output keluaran.
• Definiteness (pasti): algoritma memiliki instruksi- ins truksi yang jelas dan tidak ambigu.
• Finiteness (ada batas): algoritma harus memiliki titik berhenti (stopping role).
• Effectiveness (tepat dan efisien): algoritma sebisa mungkin harus dapat dilaksanakan dan efektif.
Runtunan (Sequence) • Algoritma merupakan runtunan
(sequence) satu atau lebih instruksi/pernyataan,
• setiap pernyataan dikerjakan secara berurutan sesuai dengan urutan penulisannya. Sebuah instruksi dilaksanakan setelah instruksi sebelumnya selesai dilaksanakan.
• Urutan instruksi menentukan keadaan akhir algoritma
Algoritma dan Pemrograman I
08/09/2013
4
Contoh 1 (Runtunan) :
Diberikan 2 buah gelas, A dan B;
gelas A berisi a ir berwarna merah, gelas B berisi air berwarna biru. Pertukarkan i si kedua gelas itu sedemikian sehingga
gelas A berisi a ir berwarna biru dan gelas B berisi a i r berwarna merah.
ilustrasi BA
BA AC
AC
A B A B
Algoritma dan Pemrograman I Algoritma dan Pemrograman I
ALGORITMA:
Tuangkan air dari gelas A kedalam gelas B Tuangkan air dari gelas B kedalam gelas A
ilustrasi C
Caranya : A B
Kita siapkan satu buah gelas C untuk menampung sementara air dari gelas A B sebelum dipindah ke gelas B
C
Algoritma dan Pemrograman I Algoritma dan Pemrograman I
08/09/2013
5
Program Tukar_isi Diberikan 2 buah gelas, A dan B; gelas A berisi air
berwarna merah, gelas B berisi air berwarna biru. Isi kedua gelas A dan B ditukar sedemikian sehingga gelas A berisi air berwarna biru dan gelas B berisi air berwarna merah.
KAMUS : gelas A,gelas B, gelas C : air
ALGORITMA: Tuangkan air dari gelas A kedalam gelas C Tuangkan air dari gelas B kedalam gelas A Tuangkan air dari gelas C kedalam gelas B
Hasil akhir algoritma adalah: gelas A berisi air dari gelas B, dan
gelas B berisi air dari gelas A semula
Pemilihan (Selection)
If kondisi then aksi
endIf
If kondisi then aksi1
else aksi2
endIf Algoritma dan Pemrograman I
Contoh 2 (runtunan):
Misal nilai A=8, B=5. Tukarkan nilai A dan B,
Pengulangan (Repetition)
for var awal to akhir do
aksi sehingga menjadi A=5, B=8.
Algoritma : B A
A B
Endfor
Do
aksi
Algoritma :
C A
While kondisi_stop
while kondisi_ulang do
aksi
A B Do
B C Algoritma dan Pemrograman I
Algoritma dan Pemrograman I
08/09/2013
6
Algoritma disajikan gambar
KEGUNAAN FLOW CHART Kegunaan:
Untuk mendesain program
Untuk merepresentasikan program
Flowchart harus dapat merepresentasikan komponen-komponen dalam bahasa pemrograman
FLOWCHART Flowchart (bagan alir) adalah
Algoritma ini menggunakan sejumlah simbol untuk menyatakan kegiatan- kegiatan secara keseluruhan suatu bagan yang menggambarkan/ mempresentasikan suatu algoritma/ prosedur untuk menyelesaikan masalah. bentuk gambar/diagram yang mempunyai aliran satu atau dua arah secara sekuensial.
FUNGSI FLOW CHART
Sebelum pembuatan program Mempermudah programmer dalam menentukan alur logika program
Sesudah pembuatan program
Menjelaskan alur program kepada orang lain
08/09/2013
7
JENIS FLOWCHART
SIMBOL FLOW CHART SYSTEM
Flowchart ada dua macam : 1. FLOWCHART SYSTEM
2. FLOWCHART PROGRAM
Proses/
Program
Punched card
Terminal
(start dan end)
Hubungan
Magnetic disk
Looping
Hubungan paralel
Garis alir
Pusat data Keyboard Prosedur/
Sub routin Fungsi
Dokumen
tape
Ya Tidak
Display Operasi
Manual
FLOW CHART SYSTEM Yaitu bagan yang menggambarkan suatu prosedur dan proses suatu file dalam suatu media menjadi file dalam media yang lain dalam sistem data.
Yang dijelaskan adalah:
File-file yang diproses oleh program
Jenis piranti yang digunakan oleh file
Operasi terhadap file (I/O)
SIMBOL FLOW CHART SYSTEM
Keyboard
CPU
Monitor
08/09/2013
8
FLOWCHART PROGRAM Yaitu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses (logika) dan hubungan antar proses secara detail di dalam suatu program dari suatu prosedur pemecahan masalah.
Yang dijelaskan adalah:
Pembacaan data
Pemrosesan data
Pengambilan keputusan terhadap data
Penyajian hasil pemrosesan data
KAIDAH PEMBUATAN
FLOW CHART
PROGRAM Untuk pengolahan data dengan komputer, urutan dasar pemecahan suatu masalah (Urutan Baku Flowchart Program ) :
START, berisi pernya t a a n untuk persiapan peralat a n yang diperlukan
sebelum menangani pemecahan persoalan. READ, berisi pernya t a a n kegiat a n untuk membaca data dari suatu
perala t a n input.
PROSES, berisi kegia t a n yang berkaitan dengan pemecahan persoalan sesuai dengan data yang dibaca.
WRITE, berisi pernya t a a n untuk mereka m hasil kegiat a n ke peralatan output.
END, menga khi ri kegiatan pengolahan.
Jalannya proses digamb a r ka n dari atas ke bawah dan diberikan tanda panah untuk memperjelas
Sebuah flowchart diawali dari satu titik START dan diakhiri dengan END.
KAIDAH PEMBUATAN
FLOW CHART
PROGRAM
Secara garis besar, setiap pengolahan selalu terdiri dari 3 unsur utama dalam pemrograman yaitu Input - Proses - Output.
SIMBOL FLOWCHART PROGRAM
Simbol yang digunakan : menunjukkan awal dan akhir dari program memberikan niai awal pada suatu variabel atau counter menunjukkan pengolahan aritma tika dan pemindaha n data menunjukkan proses input atau output
INPUT
(bahan mentah) PROSES
OUTPUT
(bahan jadi)
untuk mewakili operasi perbanding an logika proses yang ditulis sebagai sub program, yaitu prosedur/ fungsi penghubu ng pada halaman yang sama penghubu ng pada halaman yang berbeda
08/09/2013
9
Keterangan Simbol
Connector (di halaman yang sama)
Connector (di halaman lain)
Keterangan Simbol Percabangan/keputusan
Pemberian nilai awal suatu variabel (preparation)
Memanggil prosedur/fungsi (call)
SIMBOL FLOWCHART
PROGRAM (1/3)
SIMBOL FLOWCHART PROGRAM (3/3)
Keterangan Simbol
Mulai/selesai (terminator)
Aliran data
Input/Output
Proses
SIMBOL FLOWCHART PROGRAM (2/3)
CONTOH-1 : FLOW-CHART
kasus :
Buatlah sebuah rancangan program dengan menggunakan flowchart,
MENCARI LUAS PERSEGI PANJANG ... !?
08/09/2013
1010
Solusi :
Perumusan untuk mencari luas persegi panjang
adalah:
L = p * l
di mana, L adalah Luas persegi panjang, p adalah panjang persegi, dan l adalah lebar persegi.
CONTOH-2 : FLOW-CHART
kasus :
Buatlah sebuah rancang an progra m dengan mengg un akan flowchart,
MENGHITUNG LUAS LINGKARAN ... !?
39
Start
p
1 Keterangan : 1 . Simbol pertama menunjukkan dimulainya
sebuah program 2
2. Simbol kedua menunjukkan bahwa input data dari p
PENYAJIAN ALGORITMA Algorit ma untuk mencari luas lingkaran
a. Algoritma dengan struktur bahasa Indonesia
l 3 3. Simbol kedua menunjukkan bahwa
input data dari l
1) Beri nilai phi dengan 3.14 2) Masukkan jari-jari lingkaran
START
L = p*l
4. Data dari p dan l akan diproses pada
4 simbol ketiga dengan menggunakan perumusan L=p* l
5. Simbol kellima menunjukkan hasil output
3) Kalikan phi dengan phi=3.14
kuadrat dari jari-jarinya 4) Tulis hasilnya i n p u t R
L
End
5 dari proses dari simbol ketiga
6. Simbol keenam atau terakhir menunjukkan berakhirnya progrm
6
b. Algoritma dengan pseudocod e 1) phi 3.14 2) input (R) 3) L phi *R*R 4) Output (L)
c. Algoritma dengan flowchart
L = phi*R*R
Print L
END
40
08/09/2013
1111
CONTOH-3 : FLOW-
CHART
kasus :
CONTOH-4 : FLOW-CHART
kasus :
Buatlah sebuah rancang an progra m dengan mengg un akan flowchart,
MENCARI RATA-RATA DARI 3 BILANGAN YG DIINPUTKAN ... !?
Buatlah sebuah rancang an progra m dengan mengg un akan flowchart, MENENTUKAN BILANGAN GENAP / GANJIL... ?!
41 43
PENYAJIAN ALGORITMA Algorit ma untuk mencari rata-rata dari 3 bilang a n yang diinputkan
a. Algoritma dengan struktur bahasa Indonesia
1) Baca bilangan a, b, dan c
2) Jumlahkan ketiga bilangan tersebut
3) Bagi jumlahnya dengan 3
4) Tulis hasilnya
b. Algoritma dengan pseudocode
1) Input (a,b,c)
2) Jml (a+b+c)
3) Rerata Jml/3
4) Output (Rerata)
c. Algoritma dengan flowchart
START
Input a,b,c Jml
= a+b+c Rerata =
Jml /3
Print Rerata
END
42
08/09/2013
1212
HOMEWORK :
Buat dalam 3 format algoritma : kalimat deskriptif, pseudo-code dan flowchart ?!
1. Mencari Bilangan Terbesar dari 2
buah bilangan yang diinputkan ... ?! .
2. Mencari Bilangan Terkecil dari 3 buah
bilangan yang diinputkan . . ?!
45
S e l e s a i Sampai ketemu minggu depan