460 likes | 672 Views
BAB I PENDAHULUAN. Oleh: Muchammad Abrori, S.Si., M.Kom. Langkah2 Penyelesaian Masalah. Analisis Masalah → Ide2 penyelesaian Merancang algoritma Menurunkan ide2 penyelesaian Menyatakan ide2 dlm bentuk algoritma Memvalidasi algoritma (benar utk semua input)
E N D
BAB IPENDAHULUAN Oleh: Muchammad Abrori, S.Si., M.Kom.
Langkah2 Penyelesaian Masalah • Analisis Masalah → Ide2 penyelesaian • Merancang algoritma • Menurunkan ide2 penyelesaian • Menyatakan ide2 dlm bentuk algoritma • Memvalidasi algoritma (benar utk semua input) • Menganalisis algoritma (efisiensi) • Membuat program (terstruktur) • Menguji hasil program (di lab) • Dokumentasi
Algoritma → Al-Khuwarizhmi → barat menyebutnya Algorism → Algorithm → Algoritma Algoritma adalah langkah2 yg logis yg dituliskan scr sistematis utk menyelesaikan masalah. Ciri2 algoritma: • Banyaknya langkah berhingga (pasti berhenti) • Setiap langkah tertentu dg pasti (jelas & tegas) • Ada penyelesaian
Contoh Algoritma • Algoritma memasak • Algoritma menambal ban • Algoritma menghitung luas dan keliling lingkaran
Flowchart (Bagan Alir) • Adalah gambaran langkah-langkah dan urutannya yang harus dikerjakan. • Simbol-simbol Flowchart. • Contoh: 1. FC Tambal Ban 2. FC Hitung Luas & Keliling Lingkaran 3. FC Konversi Suhu
BAB IIPROGRAM PASCAL Oleh: Muchammad Abrori, S.Si., M.Kom.
Terstruktur • Mudah dipahami, mudah dipelajari dan mudah dikembangkan • Mudah diperbaiki bila ada errornya Program adalah sekumpulan instruksi2 yg harus dikerjakan komputer utk menyelesaikan masalah. Program terstruktur adalah program yang mengandung sub routine program & mengandung sub program yang terstruktur juga.
Why is Pascal? • Ciri-ciri program terstruktur: • Mudah dipahami • Mudah diperbaiki bila ada errornya • Mudah dimodifikasi/dikembangkan • Tanpa GO TO statement
Pascal • Tahun 1968 ada konferensi program terstruktur: Niklaus Wirth & Dijkstra. • Tahun 1970: Pascal dari Niklaus Wirth. • Protek menggunakan statement kontrol: • Sequence/berurutan • Kondisional/pencabangan • Loop/Perulangan
Bahasa Pemrograman • Penggolongan: • Procedural: Basic, Pascal, C • Object Oriented: Smalltalk, C++ • Functional: Prolog, Lisp (AI) • Struktur Program Pascal: I. Judul Program II. Deklarasi: TYPE, LABEL, VAR, FUNCTION, PROCEDURE, CONST, UNIT (USES). III. Program Utama
Pengenal: • Dimulai dengan Alphabet. • Terdiri dari: Alphabet, angka, karakter khusus. • Tidak dipisahkan dengan spasi. • Panjang tidak dibatasi (sebaiknya yang informatif) • Tidak dibedakan huruf besar/kecil
Ketentuan lain: • Setiap akhir statement diakhiri dengan “;” • Semua variabel yang terlibat dalam program utama harus dideklarasikan dalam program bersama tipe datanya. • Assign operator “:=“
BAB IIIINPUT / OUTPUT Oleh: Muchammad Abrori, S.Si., M.Kom.
Input: read/readln + atribut/pelengkap • Output: write/writeln + atribut/pelengkap
Tipe Data Tipe data sederhana/standar: • Ordinal (8): • Byte (1 Byte = 8 bit) 0 s.d. 255 (256 macam) 2. Shortint (1 Byte) -128, …, -1, 0, 1, …, 127 • Integer (2 Byte) 216 macam = 65536 → -32768 s.d. 32767 • Word (2 Byte) 0, …, 65535 • Longint (4 Byte) 232 macam (-231, …, 231-1)
Char (1 Byte) 256 macam = 0, 1, …, 9, A, B, …, Z, a, b, …, ?, @, dll • Boolean (1 bit) true-false • Type Hari=(Senin, Selasa, Rabu, Kamis, Jumat, Sabtu) Var h : Hari; • Golongan real simple (4 Byte), real (6 Byte), double (8 Byte), extended (10 Byte) • String (256 Byte) Contoh:?
Tipe data terstruktur • Larik (Array) • Record
BAB IVOPERASI MATEMATIKA Oleh: Muchammad Abrori, S.Si., M.Kom.
Operator • Aritmatika • perkalian (*), pembagian (/) • sisa pembagian (mod, div) • penjumlahan, pengurangan • Relational (<, >, =, <=, >=, <>) • Logika (AND, OR, NOT, NOR) • Pemberian nilai (mis: x:=5)
Pembagian Integer • div: pembulatan ke bawah • Mod: sisa pembagian • Contoh program konversi bilangan
Pembagian dan Pengurangan dengan satu • Inc • Dec • S.d. fungsi trigonometri
BAB VPERULANGAN/LOOP Oleh: Muchammad Abrori, S.Si., M.Kom.
Perulangan/Loop • FOR var_name := nilai_awal TO nilai_akhir DO Begin [perintah yang diulang] End; FOR var_name := nilai_awal DOWNTO nilai_akhir DO Begin [perintah yang diulang] End; • WHILE kondisi DO perintah yang diulang • REPEAT perintah yang diulang UNTIL kondisi
BAB VPENCABANGAN/KONDISIONAL Oleh: Muchammad Abrori, S.Si., M.Kom.
Pencabangan/Kondisional • IF kondisi THEN proses untuk kondisi benar • IF kondisi THEN proses untuk kondisi benar ELSE proses untuk kondisi salah • CASE variabel_ordinal OF nilai_1 : perintah_1; nilai_2 : perintah_2; : ˙ nilai_n : perintah_n; END;
BAB VIIARRAY Oleh: Muchammad Abrori, S.Si., M.Kom.
Tipe Data Array Nama_var : ARRAY[nn1..mm1,nn2..mm2,…] OF tipe_var; Deklarasi Array: • Sebagai tipe data baru TYPE Data=ARRAY[1..100] OF Integer; VAR X : Data;
Diakses langsung sebagai VAR VAR X : ARRAY[1..100] OF Integer; Contoh-contoh?
BAB VIIIOPERASI KARAKTER DAN STRING Oleh: Muchammad Abrori, S.Si., M.Kom.
Antara String dan Karakter • Tipe char hanya mempunyai 1 huruf • Tipe string dapat mempunyai 255 karakter • Contoh pemakaian
Operasi Karakter • Upcase V_hasil:=Upcase(V_Asal); • Ord B_ASCII:=ORD(Kar) • Chr Karakter:=Chr(B_ASCII);
Operasi String dengan Unit System • Panjang String • Menghapus String • Menyisipkan String • Menduplikatkan String • dll.
BAB IXPROCEDURE DAN FUNCTION(SUBPROGRAM) Oleh: Muchammad Abrori, S.Si., M.Kom.
Ada dua jenis • Procedure / Function pustaka/bawaan dari Compiler Pascal (Turbo Pascal). Proc: CLRSCR, GOTOXY, READ/WRITE. Func: READKEY, KEYPRESSED, PI, SIN, LN, EXP, RANDOM. 2. Procedure / Function user defined.
Program …; Uses Const Type Var Procedure/Function Begin - - - End. Var global Program utama
Procedure • Deklarasi: Procedure Nama[(Daftar Parameter)]; • Pemanggilan: Nama [(Daftar Parameter)]; • Pertukaran Parameter: • Secara nilai (by value) • Secara acuan (by reference)
Deklarasi secara nilai (by value) Procedure Hitung(A, B, C: integer); • Dekarasi secara acuan (by reference) Procedure Hitung(Var A, B, C: integer);
Function • Function Nama[(Daftar Parameter)]: Tipe Data • Contoh…
BAB XOPERASI FILE Oleh: Muchammad Abrori, S.Si., M.Kom.
File Teks • File Bertipe • File Tidak Bertipe • Perintah-perintah File
BAB XIUNIT Oleh: Muchammad Abrori, S.Si., M.Kom.
Membuat Unit • Contoh Membuat Unit • Mengkompilasi Unit • TURBO.TPL dan TPUMOVER