270 likes | 606 Views
PEMROGRAMAN TERSTRUKTUR. Catur Iswahyudi, S.Kom, S.E Email: catur@staff.akprind.ac.id Blog: catur.dosen.akprind.ac.id Mobile : 081 668 6130 / 0274 6541993. Course overview. Matakuliah : Pemrograman Terstruktr SKS : 3 (3 x 50 menit) Jadwal : Kamis / 7.40 – 10.00 Sifat : Wajib
E N D
PEMROGRAMAN TERSTRUKTUR Catur Iswahyudi, S.Kom, S.E Email:catur@staff.akprind.ac.id Blog:catur.dosen.akprind.ac.id Mobile : 081 668 6130 / 0274 6541993
Course overview • Matakuliah : Pemrograman Terstruktr • SKS : 3 (3 x 50 menit) • Jadwal : Kamis / 7.40 – 10.00 • Sifat : Wajib • Prasyarat : - • Tools : Turbo C / Borland C++
MATERI • Pendahuluan : Rancangan Pembelajaran & Administratif • Pengantar Sistem Komputer • Dasar-dasar Algoritma dan Pemrograman • Pemrograman Terstruktur dan C • Struktur Pemrograman/Kontrol • Operasi masukan dan keluaran (i/o operation) • Seleksi / Percabangan (branching) • Perulangan (looping) • Tipe data Larik (array) • Fungsi (function) • Pengurutan (sorting) • Pencarian (searching)
KOMPETENSI • Memahami konsep pemrograman terstruktur • Mampu membuat algoritma untuk memecahkan masalah • Mampu menganalisis kasus, serta membuat aplikasi dengan bahasa C
PUSTAKA • Jery R. Hanly and Elliot B. Koffman, 2004, Problem Solving and Program Design in C, 4th ed. update, Addison Wesley – Pearson Education, Inc., USA • Rinaldi Munir, 2000, Algoritma dan Pemrograman dalam Bahasa Pascal dan C, Penerbit Informatika, Bandung • Ema Utami & Sukrisno, 2005, 10 Langkah Belajar Logika dan Algoritma Menggunakan C dan C++, Penerbit Andi, Yogyakarta • Tri Basuki & Misinem, 2006, Pemrograman C++, Ardana Media, Yogyakarta • Hanif Al Fatta, 2006, Dasar Pemrograman C++, Penerbit Andi, Yogyakarta
Administratif • Penilaian : • Tugas : 50 % • UTS : 20 % • UAS : 20 % • Kehadiran : 10 % • Syarat ikut UAS, kehadiran min. 75% dari kehadiran dosen (14 x) SE no. 231/Rek/II/2011 • Jumlah Ijin maks 4 kali
Penilaian Acuan Patokan • Skor Nilai Akhir : • Dasar : SK No. 073/Skep/Rek/2008, tanggal 20 Peb 2008) • NA = 0,5*Tugas+0,2*UTS+0,2*UAS+0,1*Hadir • A NA = 80 – 100 • B NA = 60 – 79 • C NA = 40 – 59 • D NA = 20 – 39 • E NA = 0 - 19
Strategi Perkuliahan • Metode perkuliahan yang akan digunakan berupa kuliah tatap muka (40 %), diskusi dan tugas (60%). • Tugas diberikan 4 kali dalam satu semester; 2 sebelum UTS dan 2 sebelum UAS • Quiz dilakukan minimal 1 kali dalam satu semester; dengan tidak terjadwal • Setiap bahan bacaan yang dijadikan materi pada setiap tatap muka harus sudah dibaca terlebih dahulu sebelum mengikuti perkuliahan agar mahasiswa lebih mudah mengikuti acara perkuliahan • Mahasiswa WAJIB mengerjakan tugas-tugas yang diberikan setelah acara perkuliahan
Download materi • Staff site: elista.akprind.ac.id/staff/catur
Kalender Akademik • Kuliah : 28 Feb – 17 Juni 2011 • UTS : 18 – 29 April 2011 • Pengganti : 20 – 22 Juni 2011 • UAS : 27 Juni – 28 Juli 2011
Introduction • Computer • Device capable of performing computations and making logical decisions • Computers process data under the control of sets of instructions called computer programs • Hardware • Various devices comprising a computer • Keyboard, screen, mouse, disks, memory, CD-ROM/RW, DVD-ROM/RW, and processing units • Software • Programs that run on a computer
Basic computer model Von Neumann architecture Input CPU Output Memory Instructions + Data
Software • Operating System (OS) • Software that controls interaction of user and computer hardware and that manages allocation of computer resources • Application Software • Software used for a specific task such as word processing, accounting, or database management • Computer Language • Machine language • Binary number codes understood by a specific CPU • Assembly language • Mnemonic codes that correspond to machine language instructions • High-level language • Machine-independent programming language that combines algebraic expressions and English symbols • Compiler • Software that translates a high-level language program into machine language
Software (cont.) • Sources file • File containing a program written in a high-level language; the input for a compiler • Syntax • Grammar rules of a programming language • Object file • File of machine language instructions that is the output of a compiler • Linker • Software that combines object filesand resolves cross-references to create an executable machine language program • Integrated Development Environment (IDE) • Software packagecombining a word processor, compiler, linker, loader, and tools for finding errors • Input data • The data valuesthat are scanned by a program • Program output • The lines displayedby a program
Programming language Three types of programming languages: 1. Machine languages • Strings of numbers giving machine specific instructions • Example: +1300042774 +1400593419 +1200274027 2. Assembly languages • English-like abbreviationsrepresenting elementary computer operations (translated via assemblers) • Example: LOAD BASEPAY ADD OVERPAY STROKE GROSSPAY
Programming language (cont.) 3. High level languages • Codes similar to everyday English • Use mathematical notations (translated via compilers) • Example grossPay = basePay + overTimePay
Programming language (cont.) +1300042774 +1400593419 +1200274027 Machine Languages LOAD A ADD B STORE C Assembly Languages C=A+B High-Level Languages
Introduction to C • 1972: Denis Richie menyempurnakan hasil penelitian sebelumnya; bahasa BCPL, B) • 1978: Terbit buku yang berjudul “The C Programming Language” oleh Dennis Ritchie & Brian Kernighan membuat C sangat Populer • Terdapat banyak pengembang Compiler C sesuai dengan mesin komputer • 1988: ANSI C • Sekarang: PHP dan Java menggunakan sintaks dasar yang mirip bahasa C.
Mengapa memakai C ? • Memiliki portabilitas tinggi • Kata kunci (keyword) yang sedikit • Fleksibel • Bersifat modular • Paling populer dan tersedia hampir di semua jenis komputer • Proses executable program bahasa C lebih cepat • Dukungan pustaka (library) yang banyak • C adalah bahasa yang terstruktur • Bahasa C termasuk bahasa tingkat menengah
Memahami C/C++ • Seperti bahasa pemrograman prosedural lainnya bahasa C++ dibagi dalam dua blok besar yaitu blok deklarasi dan blok statement • Blok-blok ini diturunkan secara langsung dalam subprogram (prosedur/fungsi) • Masing masing blok ini mempunyai sub-sub yang lainnya
Aturan Leksikal • Token yaitu element terkecil pada bahasa pemrograman yang memiliki arti penting bagi compiler. Yang termasuk token antara lain: identifier, keywords(reserved words), operator, dan sebagainya. • Identifier Identifier merupakan kumpulan karakter yang digunakan sebagai penanda untuk nama variable, nama tipe data, fungsi, prosedur, dan sebagainya. Dengan persyaratan sbb: • diawali oleh karakter non angka • Selanjutnya boleh menggunakan karakter angka maupun karakter non angka namun tidak boleh menggunakan karakter khusus/spesial • Keywords (Reserved Words) merupakan kata-kata yang telah ada/didefinisikan oleh bahasa pemrograman yang bersangkutan Operator
Aturan Leksikal • Komentar • Inline //komentar • Groupline /* komentar */ • Operator • Arithmetic Operator • Assignment Operator • Bitwise dan Logical Operator • Relational Operator • Pointer Operator