materi ap#1

12
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, silakan interupsi There’s no point in giving classes if nobody understands me Do Exercise! You’re deluding yourself if you think you can learn the material without doing the exercises

Upload: niken-halimy

Post on 10-Jul-2015

81 views

Category:

Education


7 download

TRANSCRIPT

Page 1: Materi ap#1

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

Page 2: Materi ap#1

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

Page 3: Materi ap#1

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

Page 4: Materi ap#1

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

Page 5: Materi ap#1

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

Page 6: Materi ap#1

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

Page 7: Materi ap#1

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

Page 8: Materi ap#1

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

Page 9: Materi ap#1

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 ... !?

Page 10: Materi ap#1

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

Page 11: Materi ap#1

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

Page 12: Materi ap#1

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