Pk 1 Algo Flowchart

27
PEMROGRAMAN DASAR Titin Sri Martini 1

Transcript of Pk 1 Algo Flowchart

Page 1: Pk 1 Algo Flowchart

PEMROGRAMAN DASAR

Titin Sri Martini

1

Page 2: Pk 1 Algo Flowchart

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. 2

Page 3: Pk 1 Algo Flowchart

MATERI

Algoritma dan FlowchartStruktur program pascal

Tipe data sederhanaStatement input/output

Statement kondisiStatement perulangan

Operasi stringProcedure dan function

Array dan recordPointer

(Unit & Rekursi)

3

Page 4: Pk 1 Algo Flowchart

PraktikumMateri kuliah struktur program bahasa pascal sampai dengan Tipe data terstruktur

Penilaiano Tes KD I-IVo Tugas individu dan kelompoko Praktikumo Responsi

4

Page 5: Pk 1 Algo Flowchart

REFERENSI

Insap Santoso, “Dasar-dasar pemrograman pascal, teori dan program terapan”, Andi Offset, 1987.

Ali Behforooz and Martin O. Holoien,”Problem solving and structured programming with pascal”, Brooks/Cole Publihing Company.

Chendra Hadi S,”Memahami struktur dan element pada bahasa pemrograman”, IlmuKomputer.com

Alwin Sanjaya,”Cepat mahir bahasa pascal (2-4)”, IlmuKomputer.com

5

Page 6: Pk 1 Algo Flowchart

PEMROGRAMAN KOMPUTER

Komputer itu “bodoh”o Instruksi matematika dan logika

dieksekusi sangat cepat dan akurat.o Komputer sangat patuh pada perintah

yang kita berikan bahkan pada perintah yang salah.

o Kesalahan kecil pada suatu program dapat menyebabkan masalah yang besar ketika program itu dieksekusi.

6

Page 7: Pk 1 Algo Flowchart

diperlukan perencanaan yang matang.

Suatu rencana agar komputer melakukan sesuatu yang berguna disebut “Program”.

Flowchart adalah suatu alat yang berguna untuk menggambarkan alur program secara visual.

7

Page 8: Pk 1 Algo Flowchart

Langkah Pembuatan Program

Start

DesainAlgoritma & Flowchart

Menulis program

Test Kebenaran Program

Dokumentasi

Arsip

Definisi dan analisa masalah

8

Page 9: Pk 1 Algo Flowchart

BAHASA PEMROGRAMAN Bahasa Tingkat Rendah

Bahasa yang menggunakan angka 0 dan 1.

+ Kecepatan proses program dan kecilnya ukuran program.

- Kesulitan dan keruwetan yang tinggi dalam menyusun program

Contoh : Bahasa mesin dan Bahasa asembler

Bahasa Tingkat MenengahMempunyai cara pemrograman yang melambangkan beberapa perintah dalam bahasa mesin dengan satu kata saja. Contoh : Bahasa C

9

Page 10: Pk 1 Algo Flowchart

Lanjutan…

Bahasa Tingkat Tinggibahasa pemrograman yang menggunakan kata-kata yang sering digunakan dalam bahasa manusia, khususnya bahasa Inggris + Mudah dimengerti- Kecepatan prosesnya yang kurang baik Contoh : BASIC, COBOL, FORTRAN,

PASCAL

10

Page 11: Pk 1 Algo Flowchart

PEMROGRAMAN TERTRUKTUR

DefinisiProses mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program yang memiliki rancang bangun yang terstruktur dan tidak berbelit-belit sehingga mudah ditelusuri, dipahami dan dikembangkan oleh siapa saja

11

Page 12: Pk 1 Algo Flowchart

PEMROGRAMAN TERTRUKTUR

Ciri-Ciri Mengandung algoritma pemecahan

masalah yang tepat, benar, sederhana, standar, dan efektif,

Memiliki struktur logika dan struktur program yang benar dan mudah dipahami serta menghindari penggunaan instruksi GOTO,

Membutuhkan biaya pengujian, pemeliharaan dan pengembangan yang rendah,

Memiliki dokumentasi yang baik.

12

Page 13: Pk 1 Algo Flowchart

SEJARAH PASCAL

Disusun pertama kali oleh Niklaus Wirth, 1970.

Dikembangkan untuk pengajaran, 1971.

Turbo pascal (DOS) diproduksi Borland, awal 1980.

Turbo pascal under windows, awal 1990.

13

Page 14: Pk 1 Algo Flowchart

PASCAL HARI INI

Kompiler pascal jarang digunakan pada pengembangan komersial.

Tetapi Menyediakan suatu bahasa

pengajaran yang menyoroti konsep-konsep yang berlaku pada semua bahasa komputer

Menstandarkan bahasanya sedemikian rupa sehingga membuat program mudah ditulis. 14

Page 15: Pk 1 Algo Flowchart

STRUKTUR PROGRAM Input

Proses untuk memasukkan data ke komputer melalui device yang ada misalnya keyboard, mouse, scanner dll. Program melakukan proses membaca data yang akan diolah dari device tersebut.

Outputproses untuk menampilkan data yang telah diolah, melaporkan hasil pegolahan data melalui device seperti monitor, printer dll. Program melakukan proses mencetak data ke device tersebut.

15

Page 16: Pk 1 Algo Flowchart

Proses Pengolahan DataProses mengolah data yang diinputkan dengan menerapkan metode-metode, teknik-teknik, algoritma-algoritma yang ada. Proses ini menghasilkan data output yang akan dioutputkan kepada pengguna program.

Penyimpanan DataProses menyimpan data dalam memori atau device penyimpanan data seperti disket, harddisk, CD dll. 16

Page 17: Pk 1 Algo Flowchart

InputProses

Pengolahan Data

Output

Memory

17

Page 18: Pk 1 Algo Flowchart

ALGORITMA Definisi

Urutan langkah-langkah logika yang menyatakan suatu tugas dalam menyelesaikan suatu masalah atau problem.

ContohBuat algoritma untuk menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap.

Algoritmanya :Bagi bilangan dengan bilangan 2Hitung sisa hasil bagi pada langkah 1Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan ganjil.

18

Page 19: Pk 1 Algo Flowchart

Ciri-Ciri Algoritma yang Baik

1. Tepat, benar, sederhana, standar, dan efektif

2. Logis, terstruktur, dan sistematis3. Semua operasi harus terdefinisi4. Semua proses harus berakhir5. Ditulis dengan bahasa standar

dengan format pemrograman agar mudah diimplementasikan dan tidak menimbulkan arti ganda.

19

Page 20: Pk 1 Algo Flowchart

Algoritma penentuan bilangan genap atau ganjil

1. Input bilangan2. Bagi bilangan dengan 23. Hitung sisa step 24. Jika sisa = 0, maka

4.1 bilangan adalah genap4.2 Jika tidak maka bilangan

adalah ganjil5. STOP

20

Page 21: Pk 1 Algo Flowchart

Contoh 2

Mencari bilangan terbesar dari bilangan-bilangan x1, x2, x3, x4, x5

Algoritma yang mungkin untuk menyelesaikan masalah di

atas adalah1. Input bilangan-bilangan x1, x2, x3, x4, x52. Inisialisasi max = x1 dan i = 13. Jika i <= 5, maka ke step 4

Jika tidak, maka ke step 54. Jika xi > max, maka

4.1 max = xi4.2 Jika tidak maka max = max4.3 i = i + 14.4 Kembali ke step 3

5. Cetak/output 'Nilai maksimum dari bilangan tersebut = max'.

6. STOP

21

Page 22: Pk 1 Algo Flowchart

Implementasi program lebihbesar; uses wincrt; var A:array[1..5] of integer; max, i : integer; begin for i:= 1 to 5 do begin write('data ke ',i,' adalah : '); readln(A[i]); end; max:=A[1]; i:=1; while i<=5 do begin if A[i] > max then max:=A[i] else max:=max; i:=i+1; end; write('nilai maksimumnya adalah : ',max); end.

22

Page 23: Pk 1 Algo Flowchart

FLOWCHART Diagram alir yang menggambarkan

urutan logika dari suatu prosedur pemecahan masalah.

Awal / Akhir

program

Pengujian program

Arah aliran program Keterangan

Pemberian nilai awal

(inisialisasi)Konektor pd

satu halaman

ProsesKonektor pd halaman lain

input/output 23

Page 24: Pk 1 Algo Flowchart

Y

T

Start

Input Bilangan

Hitung sisa bagi antara

bilangan dengan 2

A

A

Apakah

Sisa = 0

Cetak Genap

Cetak Ganjil

End

24

Page 25: Pk 1 Algo Flowchart

Soal - Soal

1. Buat algoritma untuk menghitung luas empat peregipanjang, kmd buat flowchartnya.

2. Buat algoritma untuk menentukan jenis akar dari suatu persamaan kuadrat, kmd buat flowchartnya.

3. Buat algoritma untuk mencari deret bilangan kelipatan 3 antara 0 s/d 100 , kmd buat flowchartnya.

4. Buat algoritma dan flowchart untuk menghitung jumlah N suku dari deret aritmatika berikut :

Sn = 3 + 7 + 11 + …… + (4n-1)25

Page 26: Pk 1 Algo Flowchart

Soal - Soal

5. Buat algoritma untuk menghitung nilai faktorial dari suatu bilangan, kemudian buat flowchart untuk program tersebut !

6. Buat flowchart untuk mencetak pasangan nilai x dan Y dimana hubungan antara x dan Y memenuhi persamaan Y = x3 – 2x +1 dan nilai x berubah dari –10 sampai 10 !

26

Page 27: Pk 1 Algo Flowchart

27