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.
5
MATERI
Algoritma dan Flowchart Struktur program pascal Tipe data sederhana Statement input/output Statement kondisi Statement perulangan Operasi string Procedure dan function Array dan record Pointer (Unit & Rekursi)
6
Praktikum
Materi kuliah struktur program bahasa pascal sampai dengan Tipe data terstruktur
Penilaian
o o
o
o
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
8
PEMROGRAMAN KOMPUTER
Instruksi matematika dan logika dieksekusi sangat cepat dan akurat. Komputer sangat patuh pada perintah yang kita berikan bahkan pada perintah yang salah. Kesalahan kecil pada suatu program dapat menyebabkan masalah yang besar ketika program itu dieksekusi.
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.
10
Menulis program
Test Kebenaran Program Dokumentasi Arsip
11
BAHASA PEMROGRAMAN
Lanjutan
13
PEMROGRAMAN TERTRUKTUR
Definisi
Proses 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
14
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.
15
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.
16
Tetapi Menyediakan suatu bahasa pengajaran yang menyoroti konsep-konsep yang berlaku pada semua bahasa komputer Menstandarkan bahasanya sedemikian rupa sehingga membuat program mudah ditulis.
17
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.
Output
proses untuk menampilkan data yang telah diolah, melaporkan hasil pegolahan data melalui device seperti monitor, printer dll. Program melakukan proses mencetak data ke device tersebut.
18
Penyimpanan Data
Proses menyimpan data dalam memori atau device penyimpanan data seperti disket, harddisk, CD dll.
19
Input
Output
Memory
20
ALGORITMA
Definisi
Urutan langkah-langkah logika yang menyatakan suatu tugas dalam menyelesaikan suatu masalah atau problem.
Contoh
Buat algoritma untuk menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap.
Algoritmanya :
Bagi
bilangan dengan bilangan 2 Hitung sisa hasil bagi pada langkah 1 Bila 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.
21
Algoritma penentuan bilangan genap atau ganjil 1. Input bilangan 2. Bagi bilangan dengan 2 3. Hitung sisa step 2 4. Jika sisa = 0, maka 4.1 bilangan adalah genap 4.2 Jika tidak maka bilangan adalah ganjil 5. STOP
23
Contoh 2
Mencari bilangan terbesar dari bilangan-bilangan x1, x2, x3, x4, x5 Algoritma yang mungkin untuk menyelesaikan masalah di atas adalah 1. Input bilangan-bilangan x1, x2, x3, x4, x5 2. Inisialisasi max = x1 dan i = 1 3. Jika i <= 5, maka ke step 4 Jika tidak, maka ke step 5 4. Jika xi > max, maka 4.1 max = xi 4.2 Jika tidak maka max = max 4.3 i = i + 1 4.4 Kembali ke step 3 5. Cetak/output 'Nilai maksimum dari bilangan tersebut = max'. 6. STOP
24
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.
25
FLOWCHART
Diagram alir yang menggambarkan urutan logika dari suatu prosedur pemecahan masalah.
Awal / Akhir program Arah aliran program Pemberian nilai awal (inisialisasi) Proses input/output
26
Start
Input Bilangan
Cetak Ganjil
End A
27
Soal - Soal
1.
2.
3.
4.
Buat algoritma untuk menghitung luas empat peregipanjang, kmd buat flowchartnya. Buat algoritma untuk menentukan jenis akar dari suatu persamaan kuadrat, kmd buat flowchartnya. Buat algoritma untuk mencari deret bilangan kelipatan 3 antara 0 s/d 100 , kmd buat flowchartnya. Buat algoritma dan flowchart untuk menghitung jumlah N suku dari deret aritmatika berikut : Sn = 3 + 7 + 11 + + (4n-1)
28
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 !
29
30