Pengantar Pemrograman
Pengantar Pemrograman
1
Pengantar
Program komputer: kumpulan instruksi yang
disusun dengan logika tertentu untuk
menyelesaikan suatu persoalan
Macam program komputer:
Sistem operasi
Aplikasi
Perlu bahasa pemrograman untuk menulis
suatu program komputer
Sesi 1 2
Bahasa Pemrograman
Kumpulan aturan (sintaksis) yang harus
diikuti untuk menulis program
menggunakan ‘dialek’ tertentu
Jenis bahasa pemrograman:
Aras rendah (bahasa mesin)
Aras menengah (assembly)
Aras tinggi (Pascal, C, C++, C#, Java,
Visual Basic, dll)
Sesi 1 3
Eksekusi Program
Secara umum, program akan
dieksekusi baris demi baris, dimulai dari
baris pertama, ke baris kedua, dan
seterusnya sampai baris terakhir
Jenis eksekusi:
Berurutan (sequential)
Test kondisi
Proses berulang (looping)
Sesi 1 4
Teknik Pemrograman
Strategi untuk menulis bahasa
pemrograman
Teknik pemrograman:
Unstructured programming (sudah tidak
digunakan lagi)
Structured programming
Modular programming
Object-oriented programming
Sesi 1 5
Unstructured Programming
Program yang “aliran” eksekusinya sulit
dilacak
Biang keroknya adalah adanya
statemen goto yang digunakan untuk
melompatkan eksekusi program ke
statemen tanpa mengindahkan
“keindahan” alur eksekusi
Sesi 1 6
Structured Programming
Program yang “aliran” eksekusinya lebih
mudah ditebak, karena mengalir dari atas ke
bawah, kecuali untuk looping atau proses
berulang.
Sesi 1 7
Modular Programming
Teknik pemrograman yang memecah-
mecah program besar menjadi sejumlah
modul untuk mempermudah debugging
Antar modul dapat dikomunikasikan
satu dengan yang lain menggunakan
module caller
Sesi 1 8
Object-oriented Programming
Pada unstructured dan structured
programming, data dan bagian yang
memanipulasinya (subroutine, function,
modul) terpisah satu sama lain
Pada OOP data dan bagian yang
memanipulasinya “dikemas” menjadi
satu, dan dinamakan dengan object.
Sesi 1 9
Program
Program adalah kumpulan instruksi yang
ditulis dengan dialek (bahasa) tertentu
Komponen:
Input: data masukan
Proses: bagian program yang mengolah data
masukan
Output: keluaran (hasil olahan data masukan)
Sesi 1 10
Data
Secara konvensional, tipe data terbagi
menjadi dua:
Numerik
Alphanumerik (string) kombinasi antara angka dan
alphabeth
Berdasarkan kebutuhan, tipe data
berkembang menjadi
Date - Pointer
Time - Array
Boolean - dan lain-lain
Text
Sesi 1 Matrikulasi S2 - 2008 11
Tipe data Char dan String
Ini merupakan tipe data dasar, tipe data ini didefinisikan pada
deklarsi var dibagian algoritma/program.
Example :
Var Nama : String Nilai : Char
Keterangan :
Nama merupakan sebuah variabel didefinisikan sebagai
variabel bertipe string, maksudnya pada variabel tersebut
digunakan untuk menerima masukan sebuah nama yang terdiri
dari sekumpulan huruf, dapat berupa huruf besar, kecil, atau
campuran kedua-duanya.
Nilai, didefinisikan sebagai variabel yang bertipe data char,
maksudnya variabel tersebut hanya dapat digunakan untuk
memasukkan sebuah huruf dari huruf besar, seperti A, B, C,..
atau huruf kecil, a, b, c, ….
12
Tipe data Boolean
Tipe data ini digunakan untuk
pengambilan keputusan dalam operasi
logika. Terdiri dari true disimbolkan ‘T’
dan False yang disimbolkan ‘F’. Ketika
kita ingin mendapatklan hasil yang
valid/pasti, kita menggunakan tipe data
boolean untuk memperoleh keputusan
dalam suatu penyelesaian yang pasti
Sesi 1 13
Tipe Data Integer
Sesi 1 14
Tipe Data Array (Larik)
Tipe data ini sudah terstruktur dengan
baik, walaupun masih sederhana. Tipe
data ini menampung sejumlah data
dengan tipe data sama (homogen)
dalam sebuah variabel
Sesi 1 15
Penyimpan Data
Penyimpan data terbagi menjadi dua:
Primer (RAM): volatil, mudah hilang jika
tidak ada catu daya
Sekunder: permanen, data tidak akan
hilang meskipun tidak ada catu daya ->
harddisk, CD, DVD, flash memory
Sesi 1 16
Satuan Penyimpan Data(1)
Satuan Penyimpan Data adalah Byte
1 byte = 8 bit
Bit singkatan dari binary digit (digit
biner), yaitu sistem bilangan yang
hanya mengenal angka 0 dan angka 1
(bandingkan dengan sistem bilangan
desimal, oktal, dan heksadesimal).
Sesi 1 17
Satuan Penyimpan Data(2)
1 KiloByte (KB) = 1024 = 210 byte
1 MegaByte (MB) = 1024 KB = 220 byte
1 GigaByte (GB) = 1024 MB = 230 byte
1 TerraByte (TB) = 1024 GB = 240 byte
Sesi 1 18
Data Numerik
Data numerik dapat dikelompokkan
menjadi:
Integer (bilangan bulat, whole number)
Small integer: 1 byte
Integer: 4 byte
Long integer: 8 byte
Pecahan (fraction, floating point)
Single precision
Double precision
Sesi 1 19
Data String
Pada dasarnya, setiap karakter pada data
string membutuhkan 1 byte, sehingga tidak
ada pembagian jenis-jenis data string seperti
halnya data numerik
Ingat kembali 1 byte = 8 bit, sehingga di
dapat 256 buah kombinasi 8-bit karakter (dari
00000000 sampai 11111111)
Tabel ASCII (American Standard Code for
Information Interchange) memuat daftar ke-
256 karakter di atas
Sesi 1 20
Pembandingan Data
Pada data numerik, pembandingan data
sudah jelas
Pada data string, pembandingan data
didasarkan pada tabel ASCII
Tabel ASCII menunjukkan “kode numerik”
setiap karakter. Sebagai contoh 65 adalah
“A”, 32 adalah karakter spasi, 97 adalah “a”,
dan lain-lain.
Sesi 1 21
Memahami Program
Flowchart: diagram yang menggunakan
simbol-simbol tertentu untuk menunjukkan
proses/aktifitas yang berbeda
Pseudocode: narasi yang menggunakan
sintaksis yang mirip dengan bahasa
pemrograman untuk menunjukkan
proses/aktifitas yang berbeda
Sesi 1 22
Pengenalan dan Definisi
Flowchart
Flowchart merupakan gambar atau bagan yang
memperlihatkan urutan dan hubungan antar proses
beserta instruksinya.
Gambaran ini dinyatakan dengan symbol.
setiap symbol menggambarkan proses tertentu.
penghubung.
Program flowchart
Bagan yang memperlihatkan urutan dan
hubungan proses dalam suatu program.
FLOWCHART (Diagram Alur)
Langkah awal pembuatan program
Urutan proses di program menjadi lebih jelas
Syarat Perintah 1
Perintah 2
Selesai
A←10 A=10
X←A+B X=A+B
b. String
Syarat penamaan sama dengan numeric (untuk
Umur < 30
Capeg diterima
dan
nilai > 60
Usia>60 Mendapat
Atau tunjangan pensiun
MK>25
Tidak mendapat
tunjangan pensiun
A>B Cetak
A
Cetak
B
selesai
Cetak
Bil< “Negatif”
0
Cetak
“positif”
Selesai
Sesi 1 45
Solusi
Diketahui:
Jumlah mata kuliah: 3
Nilai diperoleh:
MK 1 = 4 (3 sks)
MK 2 = 3 (3 sks)
MK 3 = 3 (3 sks)
Ditanyakan:
Indeks prestasi
Yang perlu diketahui:
Rumus untuk menghitung indeks prestasi
Sesi 1 46
Flowchart
Mulai A
Total = nMK1*SKS1 +
nMK1 = 4 nMK2*SKS2 +
nMK2 = 3 nMK3*SKS3
nMK3 = 3 Proses
Input
IP = Total/3
SKS1 = 3
SKS2 = 3
Cetak
SKS3 = 3
hasil Selesai
A Output
Sesi 1 47
Pseudocode
Tentukan sks setiap mata kuliah
Tentukan nilai setiap mata kuliah
Hitung total sks*nilai untuk semua mata kuliah
Hitung indeks prestasi
Cetak hasil
Sesi 1 48
Soal 1
Buat Diagram alur, untuk menghitung luas persegi
panjang.