Anda di halaman 1dari 53

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

Merupakan tipe data bilangan bulat

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.

 antara proses digambarkan dengan garis

penghubung.

8/8/2020 23 Logika Algoritma


Macam Flow Chart
 System flowchart
 Bagan yang memperlihatkan urutan
prosedur dan proses dari beberapa file
dalam media tertentu.
 System flowchart menggambarkan :
 Hubungan antar suatu file dengan file lainnya
 Media yang dipakai untuk setiap file

8/8/2020 24 Logika Algoritma


Macam Flow Chart

 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

8/8/2020 25 Logika Algoritma


Kaidah-kaidah Umum Pembuatan
Flowchart

 tidak ada rumus atau patokan yang


bersifat mutlak.
 Karena flowchart merupakan gambaran
hasil pemikiran dalam menganalisa suatu
masalah dengan komputer.
 Sehingga flowchart yang dihasilkan
dapat bervariasi antara satu pemrogram
dengan yang lainnya.
8/8/2020 26 Logika Algoritma
Kaidah-kaidah Umum Pembuatan
Flowchart

 secara garis besar setiap pengolahan


selalu terdiri dari 3 bagian

Input Proses Output


(Bahan mentah) (Bahan Jadi)

8/8/2020 27 Logika Algoritma


Isi Flow Chart
 START, berisi instruksi untuk persiapan peralatan
yang diperlukan sebelum menangani pemecahan
persoalan
 READ, berisi instruksi kegiatan untuk membaca
data dari suatu peralatan input
 PROSES, berisi kegiatan yang berkaitan dengan
pemecahan persoalan sesuai dengan data yang
dibaca
 WRITE, berisi instruksi untuk merekan hasil
kegiatan ke peralatan output
 END, mengakhiri kegiatan pengolahan
8/8/2020 28 Logika Algoritma
Anjuran – Pembuatan Flow
Chart

 Hindari pengulangan proses yang tidak perlu dan


logika yang berbelit sehingga jalannya proses
menjadi singkat
 Jalannya proses digambarkan dari atas ke bawah
dan diberikan tanda panah untuk memperjelas
 Sebuah flowchart diawali dari satu titik START dan
diakhiri dengan END

8/8/2020 29 Logika Algoritma


Simbol Dalam Flow Chart -
Input
 digunakan untuk melambangkan kegiatan
penerimaan input.
 Dalam simbol ini, kita dapat menuliskan input
 yang diperlukan pada suatu waktu secara satu per
satu maupun secara keseluruhan,
 biasanya input yang dimasukkan pada suatu
waktu, dituliskan bersamaan secara keseluruhan
dengan tujuan efisiensi ruang gambar.

8/8/2020 30 Logika Algoritma


Simbol Dalam Flow Chart -
Proses
 Simbol proses digambarkan dengan bangun
persegi panjang.
 digunakan untuk melambangkan kegiatan
pemrosesan input. Dalam simbol ini, kita dapat
menuliskan operasi-operasi yang dikenakan pada
input, maupun operasi lainnya.

8/8/2020 31 Logika Algoritma


Simbol Dalam Flow Chart -
output
 digunakan untuk melambangkan kegiatan proses
output.
 Dalam simbol ini, kita dapat menuliskan output
 yang dihasilkan pada suatu waktu secara satu per
satu maupun secara keseluruhan,

8/8/2020 32 Logika Algoritma


Simbol Dalam Flow Chart -
Percabangan

 Simbol ini digunakan untuk melambangkan


percabangan, yaitu pemeriksaan terhadap suatu
kondisi. Dalam simbol ini, kita menuliskan keadaan
yang harus dipenuhi.
 Hasil dari perbandingannya adalah ya/tidak

8/8/2020 33 Logika Algoritma


Simbol Dalam Flow Chart –
Garis Alir
 Digunakan untuk menghubungkan setiap langkah
dalam flowchart dan menunjukkan kemana arah
aliran diagram.
 Anak panah ini harus mempunyai arah dari kiri ke
kanan atau dari atas ke bawah.
 dapat diberi label, khususnya jika keluar dari
simbol percabangan.

8/8/2020 34 Logika Algoritma


Simbol Dalam Flow Chart – Terminator

 Berfungsi untuk menandai awal dan akhir dari


suatu flowchart.
 Biasa diberi label start atau stop

8/8/2020 35 Logika Algoritma


Simbol Dalam Flow Chart –
Konektor
 Digunakan untuk menghubungkan bagian flow
chart.
 Biasa digunakan bila media gambar tidak cukup
luas

8/8/2020 36 Logika Algoritma


Flow Chart
Mulai

Syarat Perintah 1

Perintah 2

Selesai

8/8/2020 37 Logika Algoritma


Variabel
 Variable: Besaran yang dapat berubah-ubah
harganya

A←10 A=10

X←A+B X=A+B

8/8/2020 38 Logika Algoritma


Variabel
 a. Numerik/bilangan
 Syarat penamaan:
 Harus diawali huruf

 Diikuti dengan huruf/angka/symbol

 Tidak boleh ada spasi

 Contoh: A, A123, Angka

 b. String
 Syarat penamaan sama dengan numeric (untuk

membedakan biasanya diakhiri dengan $)


 Contoh: A$, Nama$

8/8/2020 39 Logika Algoritma


Contoh Kondisi
 Contoh kondisi penerimaan Calon Pegawai

Umur < 30
Capeg diterima
dan
nilai > 60

Capeg tidak diterima

8/8/2020 40 Logika Algoritma


Contoh Kondisi (2)
 Contoh Besarnya tunjangan calon Pegawai

Status$=’kawi MK>= TJ=6%*GP


n’ 3

TJ=0 TJ= 3%*GP

8/8/2020 41 Logika Algoritma


Contoh Kondisi (3)
 Contoh Kasus Tunjangan Pensiun Pegawai

Usia>60 Mendapat
Atau tunjangan pensiun
MK>25

Tidak mendapat
tunjangan pensiun

8/8/2020 42 Logika Algoritma


Contoh Kondisi (4)
 Mencetak Bilangan Yang paling Mulai

besar dari dua buah bilangan


Baca A,B
yang diinputkan

A>B Cetak
A

Cetak
B

selesai

8/8/2020 43 Logika Algoritma


Contoh Kondisi 5
 Buat diagaram alur untuk Mulai
menentukan apakah suatu
Baca bil
bilangan termasuk bilangan
positif, negatif atau nol! Cetak
“nol”
Bil=
0

Cetak
Bil< “Negatif”
0

Cetak
“positif”

Selesai

8/8/2020 44 Logika Algoritma


Contoh Soal
 Seorang mahasiswa S2 mengambil 3
mata kuliah, dan mendapat nilai 4,3,3.
Masing-masing mata kuliah mempunyai
bobot 3 sks. Buatlah flowchart untuk
menghitung index prestasi yang
diperoleh oleh mahasiswa tersebut.

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.

8/8/2020 49 Logika Algoritma


Soal 2
 Buat diagram alur untuk menentukan kelulusan
seorang siswa. Kelulusan dihitung dari nilai rata-
rata 3 mata pelajaran UN. Bila nilai rata-rata lebih
dari atau sama dengan 60, siswa dinyatakan lulus.
Sebaliknya siswa dinyatakan tidak lulus.

8/8/2020 50 Logika Algoritma


Soal 3
1. buat diagram alur yang digunakan untuk
menghitung dan mencetak luas dan keliling
lingkaran yang diketahui jari-jarinya
 (luas = 3,14 * r^2, keliling = 2* 3,14*r); r = jari –
jari.

8/8/2020 51 Logika Algoritma


Soal 4
1. Dalam pemilihan jurusan IPA dan IPS, dinilai 3
pelajaran eksakta dan 2 pelajaran non eksakta.
Bila nilai rata-rata eksakta lebih besar dari nilai
rata-rata non eksakta maka siswa dijuruskan ke
IPA, bila nilai rata-rata eksakta dan non eksakta
sama maka siswa diperbolehkan memilih.

8/8/2020 52 Logika Algoritma


 The end

Sesi 1 Matrikulasi S2 - 2008 53

Anda mungkin juga menyukai