



























































































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
Matakuliah dasar pemrograman, berisi materi materi pengenalan mata kuliah dasar pemrograman
Typology: Papers
1 / 99
This page cannot be seen from the preview
Don't miss anything!
Penyusunan Bahan Ajar Dalam Kurikulum Berbasis Kompetensi (Kurikulum 2007) ini dibiayai dari DIPA Politeknik Negeri Bandung Kementerian Pendidikan Nasional Tahun Anggaran 2010
Disusun oleh : Ade Chandra Nugraha, S.Si, MT NIP. 132 231 592
i
Bandung, Juli 2010
Mengetahui, Ketua KBK Penulis 1,
Joe Lian Min, M.Eng Ade Chandra Nugraha, S. Si, MT NIP. 132 140 889 NIP. 132 231 592
Menyetujui, Ketua Program Studi D3 Teknik Informatika
Irwan Setiawan, S.Si, MT NIP. 198004192005011002
vi
File : Kumpulan data yang tersimpan dalam media “secondary storage”. Final State : keadaan akhir, merupakan penterjemahan tujuan program Initial State : keadaan awal, merupakan titik tolak dari sebuah program. p/l : Perangkat lunak, yaitu komponen/elemen sistem komputasi yang tidak dapat dijamah secara fisik. Merupakan bagian sistem komputasi hasil implementasi dari logika pemrograman.
vii
Halaman
Tabel 1. Aspek Kunci sebuah Program .................................................................................... 2 Tabel 2. Karakteristik bahasa pemrograman ............................................................................ 7 Tabel 3. Perbandingan Coding ................................................................................................. 7 Tabel 4. Perbedaan Logika dalam struktur Pengulangan ....................................................... 42
ix
Identitas Mata Kuliah
a. Judul Mata Kuliah : Dasar-dasar Pemrograman b. Nomor Kode / SKS : TI 1014 / 4 c. Semester / Tingkat : 1 / I d. Prasyarat : Ilmu matematika SMA e. Jumlah Jam / Minggu : 7
Ringkasan Topik / Silabus
Berpikir logis dibutuhkan dalam menyelesaikan suatu permasalahan. Solusi yang sistematis akan mengoptimalkan langkah kerja. Keterbatasan manusia menuntut adanya peran alat (computer) dalam membantu menyelesaikan permasalahan di bidang informatika. Agar komputer dapat berperan dalam menyelesaikan permasalahan di dunia nyata, tentunya perlu diturunkan langkah kerja / proses yang sistematis sehingga Final State dapat dicapai dari Initial State yang didefinisikan.
Pembahasan dimulai dengan membiasakan diri untuk berpikiran logis, detil dan sistematis. Dilanjutkan dengan cara pendokumentasian pola pikir tersebut kedalam format baku dunia informatika. Algoritma yang disusun ditambah dengan kemampuan memahami syntaks dalam bahasa pemrograman tertentu akan memudahkan coding untuk mengimplementasikan perangkat lunak aplikasi yang sesuai dengan kebutuhannya. Optimalisasi dan pemikiran akan sifat reusability dari algoritma yang dibuat menuntut adanya pemahaman modularitas program yang memecah program menjadi beberapa sub program dengan tujuan yang spesifik.
Setalah mahasiswa dapat mendokumentasikan algoritma dari proses-proses sederhana, maka di phase berikut mahasiswa mulai diberikan pemahaman terkait dengan bahasa pemrograman tertentu dengan pendekatan terstruktur, dimulai dari
x
keyword dalam bahasa pemrograman, struktur program sampai dengan pembuatan modul program yang memudahkan pembuatan program besar secara teamwork.
Diharapkan dengan kemampuan mahasiswa untuk meng coding modul-modul generic – seperti counting, summing, searching dan sorting - dapat menjadi modal dalam pembuatan algoritma dan implementasi program yang memiliki kemampuan lebih kompleks.
Kompetensi yang Ditunjang
Kompetensi yang ditunjang oleh mata kuliah Dasar-dasar pemrograman adalah berpikir logis dan algoritmik, Menganalisis kebutuhan perangkat lunak, merancang perangkat lunak, mengembangkan perangkat lunak, serta mendokumentasikan perangkat lunak.
Tujuan Pembelajaran Umum
Setelah menyelesaikan matakuliah ini, mahasiswa dapat mengenal metode pemecahan masalah dan pengembangan algoritma melalui pendekatan yang taat aturan; mengetahui abstraksi proses dan data; mengetahui dan dapat merancang, meng- coding , men- debugging , melakukan testing dan menyusun dokumentasi program menggunakan gaya pemrograman yang baik; serta dapat menerapkan keterkaitan dan hirarki program; sehingga dapat memberikan dasar bagi studi lanjut dalam kajian ilmu komputer.
Tujuan Pembelajaran Khusus
Setelah menyelesaikan matakuliah ini, mahasiswa dapat berfikir logis dan terstruktur dalam rangka memberikan alternatif solusi bagi permasalahan yang diberikan, khususnya dalam proses komputasi. Pemberian alternatif solusi untuk komputasi dapat didukung oleh adanya struktur proses dan struktur data yang dipilih. Mahasiswa juga harus mampu menguraikan dan mendokumentasikan alternatif solusi menggunakan sequential statement ( pseudocode ) atau menggunakan diagram flowchart.
Setelah mengikuti mata kuliah ini mahasiswa diharapkan :
xii
Pedoman Mahasiswa
Pengajaran dilaksanakan dengan menggunakan cara-cara sebagai berikut :
Pedoman Pengajar
Beberapa faktor penting dalam pelaksanaan pengajaran :
Penggunaan Ilustrasi dalam Bahan Ajar
Ilustrasi dan bahan ajar dalam buku ini sebagian besar diadopsi dari referensi yang tercantum dalam Daftar Pustaka.
Tujuan Pembelajaran Umum :
Memberikan wawasan dan pengetahuan secara umum tentang ‘ bagaimana memahami permasalahan ’ dan ‘ bagaimana berfikir logis untuk memberikan alternatif solusi’.
Setelah menyelesaikan pembahasan ini, mahasiswa :
Tujuan Pembelajaran Khusus :
Setelah menyelesaikan pembahasan ini, mahasiswa :
Dapat menyebut definisi program dan program komputer, definisi algoritma serta mengetahui pentingnya berpikir logis dan sistematis. Mengetahui langkah dan proses umum pembuatan program komputer serta pola penterjemahan instruksi komputer ditinjau dari level bahasa pemrograman. Menterjemahkan naratif proses dunia nyata dalam struktur yang sistematis dan logis serta dapat merumuskan bagaimana komputer dapat membantu proses otomatisasi.
Pre Test
v Sebutkan tahapan proses untuk satu kegiatan rutin yang biasa dilakukan. v Definisi program (secara umum) yang mahasiswa ketahui.
Pengertian struktur pada suatu program adalah "established relationship" ( keterkaitan yang dimapankan ) antara 2 atau lebih bagian dari suatu program ( operasi adalah bagian terkecil dari suatu program ). Struktur dapat dibedakan dalam 2 kelompok besar sbb :
operasi ⇒ himpunan operasi ⇒ super himpunan operasi ⇒ ....dst s/d ⇒ program atau program ⇒ subprogram ⇒ sub-sub-program ⇒ ...dst s/d operasi
Operasi adalah " Action " yang menghasilkan " Effect ". Yang dimaksud dengan effect ialah suatu perubahan state tertentu. Dengan kata lain :
Operasi harus menghasilkan perubahan dari suatu state ke state lainnya.
Operasi harus bersifat " well-defined ", yang berarti : diketahui secara definitif
Dalam sebuah program, bahasa dapat diterjemahkan sebagai :
Program komputer adalah program yang pelaksananya adalah komputer. Komputer pada dasarnya adalah pemroses logika elementer (biner), dengan objek nilai biner ( octal/hexadecimal ) yang merepresentasi-kan data atau objek arsitektural komputer ybs. Dengan kata lain, dalam pemrogramannya hanya boleh dipergunakan :
demikian diciptakan sebuah lingkungan pemrograman aras tinggi (" high-level " ), bahasanya disebut sebagai bahasa-aras-tinggi (" high-level-language ").
Program yang ditulis dalam bahasa aras tinggi harus diterjemahkan menjadi program bahasa mesin yang setara dengannya. Penterjemahan ini dapat dilakukan melalui 2 cara :
Dalam pembuatan dan realisasi bahasa pemrograman tingkat tinggi selanjutnya dilakukan usaha-usaha lebih jauh untuk memberi sebanyak mungkin kemudahan dalam proses pembuatan program komputer. Teknologi bahasa pemrograman saat ini dapat diklasifikasikan sebagai berikut:
penterjemahanoleh program lain
programbahasa tingkat
programbahasa mesin
tinggi
source-program
object-program
( compiler )
bahasa^ kompilasi tingkat^ program tinggi menjadi programmesin bahasa Gambar 2. Proses Kompilasi
Sebagai kesimpulan dapat diperlihatkan sebuah perbandingan karakteristik bahasa pemrograman seperti di bawah ini: Tabel 2. Karakteristik bahasa pemrograman aras/ level operasi spesifik objek operasi spesifik rendah logika biner seperti and, or, shitf-left, shift-right dalam bentuk kode biner/ heksadesimal
nilai biner/ heksadesimal, alamat memori, register CPU dan alamat I/O port dalam kode biner/ heksadesimal menengah idem diatas tapi dalam kode mnemonic
kode mnemonic dari suatu nilai atau register CPU Tinggi matematis seperti : +, -, sinus dsb., baca dan tulis I/O, semuanya dalam kode mnemonic
kode mnemonic yang mewakili : variabel atau file yang berisi nilai tertentu
Dari kesimpulan di atas, maka bandingan coding yang dapat dilakukan dalam sebuah "program" untuk menambahkan 2 buah nilai adalah sebagai berikut : Tabel 3. Perbandingan Coding Level bentuk "program" penjelasan Rendah A1A
A1 adalah kode hex untuk operasi salin ke register AX dari memori, 01A6 adalah alamat memori data yang disalin 0306 adalah kode hex untuk operasi penambahan ke register AX dengan nilai dari memori, 01A8 adalah alamat memori data yang ditambahkan A3 adalah kode hex untuk operasi salin dari register AX ke memori, 01AA adalah alamat memorinya.