Pk 1 kimia algo and flowchart

Post on 25-Jun-2015

1.269 views 3 download

Transcript of Pk 1 kimia algo and flowchart

1

Titin Sri MartiniFMIPA Universitas Sebelas Maret

PEMROGRAMAN KOMPUTER

2

BAB 1ALGORITMA

DAN FLOWCHART

3

TUJUAN

• Mahasiswa mampu menganalisa, menentukan atau membuat algoritma untuk menyelesaikan suatu permasalahan.

• Mahasiswa dapat membuat flowchart dengan benar

• Mahasiswa mampu mengimplementasikan algoritma dan flowchart dalam bahasa pemrograman Pascal.

4

OUTLINE

• Algoritma• Flowchart

5

Algoritma

• Algoritma adalah urutan langkah logis tertentu untuk memecahkan suatu masalah.

• Urutan langkah logis mempunyai arti bahwa algoritma harus mengikuti suatu urutan tertentu, tidak boleh melompat-lompat.

6

Contoh

Algoritma dalam kehidupan nyata:• jika seorang ingin memasak mie instan, maka

langkah-langkah yang harus dilakukan :Merebus air hingga mendidihMemasukkan mie ke dalam air tersebut sambil

diaduk, tunggu hingga 3 menitMasukkan bumbu ke dalam mangkokTuang mie ke dalam mangkok, aduk merataMie siap disajikan.

7

Algoritma

• Dalam bidang komputer, algoritma sangat diperlukan untuk menyelesaikan berbagai masalah pemrograman, terutama dalam komputasi numeris

• Notasi AlgoritmaKalimat deskriptifFlowchartPseudo-code

8

Kriteria Algoritma Menurut Donal E. Knuth :

Input :Algoritma dapat memiliki nol atau lebih inputan dari luar

Output : Algoritma harus memiliki minimal satu output

Algoritma memiliki instruksi-instruksi yang jelas dan tidak ambigu

Definiteness (Pasti) :

9

Kriteria Algoritma Menurut Donal E. Knuth :

Finiteness (Ada Batas) :Algoritma harus memiliki titik berhenti (stopping role)

Effectiveness (Tepat dan Efisien) :

Algoritma sebisa mungkin harus dapat dilaksanakan dan efektif

A = A+0, A=A*1 Tidak efektif

10

Jenis Proses Algoritma

Sequence Process : instruksi dikerjakan secara sekuensial, berurutan

Selection Process : instruksi dikerjakan jika memenuhi kriteria tertentu

Iteration Process : instruksi dikerjakan selama memenuhi suatu kondisi tertentu

11

Jenis Proses Algoritma

Concurrent Process : instruksi dikerjakan secara bersama

12

Algoritma

• Dalam Algoritma, tidak dipakai simbol-simbol / sintaks dari suatu bahasa pemrograman tertentu, melainkan bersifat umum dan tidak tergantung pada suatu bahasa pemrograman apapun juga.

• Notasi-notasi algoritma dapat digunakan untuk seluruh bahasa pemrograman manapun.

13

Contoh Algoritma

Menghitung Luas Lingkaran1. Start2. Masukkan jari-jari (r)3. Masukkan phi4. Hitung Luas = phi x r x r5. Cetak Luas6. Stop

14

Langkah-langkah dalam Pemrograman Komputer

Start

DesainAlgoritma & Flowchart

Menulis program

Test Kebenaran Program

Dokumentasi

Arsip

Definisi dan analisa masalah

15

Langkah-langkah dalam Pemrograman Komputer• Mendefinisikan masalah

Tentukan masalahnyaTentukan apa saja yang harus dikerjakan oleh

komputerTentukan input dan outputnya

• Menemukan solusiJika masalah terlalu kompleks, maka adabaiknya masalah tersebut dipecah menjadi modul-modul kecil agar lebih mudah diselesaikan.

16

Langkah-langkah dalam Pemrograman Komputer

• Memilih algoritma Pilihlah algoritma yang benar-benar sesuai dan efisien untuk permasalahan tersebut

• Menulis program Pilihlah bahasa yang mudah dipelajari, mudah digunakan, dan lebih baik lagi jika sudah dikuasai, memiliki tingkat kompatibilitas tinggi dengan perangkat keras dan platform lainnya.

17

Langkah-langkah dalam Pemrograman Komputer

• Menguji programtermasuk error handlingnya agar program benar-benar handal

• Menulis dokumentasi• Merawat Program

18

Flowchart

• Flowchart adalah bentuk gambar/diagram yang mempunyai aliran satu atau dua arah secara sekuensial.

• Flowchart harus bisa merepresentasikan komponen-komponen dalam bahasa pemrograman.

19

Keterangan Lambang Contoh

Mulai/selesai

Input/Output

Memberi nilai awal

Cetak

Aliran Data

Percabangan

Proses

Mulai

Input r

Input phi

Lß phi*r*r

Cetak L

Selesai

20

Pseudo code

• Kode atau tanda yang menyerupai (pseudo) atau merupakan penjelasan cara menyelesaikan suatu masalah.

• Pseudo-code sering digunakan untuk menuliskan algoritma.

21

Problem: mencari bilangan terbesar dari dua bilangan yang diinputkan

• Solusi :1. Algoritma dengan kalimat deskriptif :

a. Startb. Masukkan bilangan pertamac. Masukkan bilangan keduad. Jika bilangan pertama > bilangan kedua maka

kerjakan langkah e, jika tidak,kerjakan langkah fe. Tampilkan bilangan pertamaf. Tampilkan bilangan keduag. Stop

22

• Contoh Algoritma1. Start2. Input (a)3. Input (b)4. if a > b then kerjakan langkah 5, jika tidak maka ke langkah

65. print a6. print b7. Stop Pseudo-code Kalimat dekriptif

AA+5 Nilai A ditambah dengan 5

IF A > 10 THEN PRINT A Cetak nilai A bila lebih besar dari 10

IF A > B THEN PRINT A ELSE PRINT B

Dari dua bilangan A dan B, cari bilangan yang terbesar

23

Tugas Di Kelas

1. Buatlah Algoritma dan flowchart dari kasus berikut :Mengkonversi suhu dari Fahrenheit ke Celcius

2. Buatlah algoritma menjalankan sepeda motor

a. bukan matic b. matic

3. Diketahui dua buah algirotma berikut, yang

menjelaskan tentang sikap yang harus dilakukan bila menemui traffic-light di jalan raya:

24

Tugas Di Kelas

(1) if trafific light menyala then if lampu merah then

berhenti else

jalan

(2) if trafific light menyala then if lampu merah then

berhenti else

jalan

25

Tugas di Kelas(dikerjakan secara berkelompok)

Buat algoritma dan flowchart dari kasus berikut :4. Menentukan bilangan terbesar dari tiga bilangan yang di

inputkan (dikerjakan oleh kel 9, kel 14,)5. Menampilkan 10 bilangan asli yang pertama (dikerjakan kel 7

kel 10)6. Meng-outputkan N bilangan ganjil yang pertama (misal utk

N=5 maka bilangan tersebut 1 3 5 7 9 ) ( dikerjakan oleh kel 5, kel 11, )

7. Meng-outputkan N bilangan genap yang pertama (misal utk N=5 maka bilangan tersebut 2 4 6 8 10) (dikerjakan oleh kel 4, kel 6)

26

Tugas di Kelas(dikerjakan secara berkelompok)

Buat algoritma dan flowchart dari kasus berikut :8. Menghitung rata-rata N bilangan asli ( dikerjakan oleh kel 3,

kel 15)9. Menghitung jumlah kumulatif N bilangan asli (misal

diinputkan N=5 maka jumlah kumulatifnya adl 1+2+3+4+5=15 (dikerjakan oleh kel 8, kel 12)

10. Menghitung jumlah kumulatif dari dua pangkat semua cacah dari N, misal diinputkan N=3 maka jumlah kumulatifnya adl

(dikerjakan oleh kel 1, kel 2, kel 13)

27

Minggu depan dikumpulkan dalam folio bergaris. Di beri penjelasan lengkap ttg alur dr flowchart yg kelompok anda buat.

Dari masing2 kelompok akan ditunjuk 2 orang utk menjelaskan algoritma dan flowchart masing2.

Jika saat menjelaskan menggunakan bhs Inggris, akan diberi point lebih utk individu yg menjelaskan

Tugas di Kelas(dikerjakan secara berkelompok)