Anda di halaman 1dari 30

IT132

Hendry, PhD.
 Komputer:
 Dari asal kata “Compute”: menghitung.
 mesin yang dapat melalukan proses komputasi /
menghitung.
 Mesin yang digunakan untuk melakukan tindakan
sesuai apa yang diperintahkan.

 Perlu suatu bahasa yang digunakan untuk


memerintahkan komputer melakukan suatu tindakan
yaitu bahasa mesin.
 2 komponen utama komputer:
o Hardware/Perangkat Keras
o Software/Perangkat Lunak

 Brainware: orang yang mengoperasikan


komputer.
 Software (perangkat lunak atau program
komputer) merupakan suatu aplikasi yang di
dalamnya terdiri dari kumpulan instruksi yang
memberitahukan pada komputer apa yang harus
dilakukan.
 Contoh Program Komputer:
 Notepad: menulis note, menyimpan note dsb.
 SIASAT: registrasi matakuliah, lihat nilai dsb.
 Dsb.
 Merupakan bahasa yang digunakan untuk
menulis instruksi yang dimengerti oleh komputer.
 Bahasa pemrograman  program komputer.
 Jenis bahasa pemrograman:
o Bahasa Mesin: tersusun dari kode biner (1 dan 0)
o Low Level: misal bahasa rakitan/Assembly.
contoh sintaks: ADD R1, R2
o High Level: misal: Pascal, C/C++, Java, Basic, dsb.
contoh sintaks: writeln(“saya”);  dalam Pascal
printf(“saya”);  dalam C.
Bahasa Mesin
Low Level

High Level
 Supaya perintah dalam bahasa pemrograman yang
digunakan (Assembly maupun bahasa tingkat tinggi) dapat
dipahami oleh komputer dan dapat dijalankan oleh
microprosessor, maka perintah-perintah tersebut harus
diterjemahkan terlebih dahulu ke bahasa mesin  proses
kompilasi (compiling).
 Program atau software yang digunakan untuk proses
kompilasi disebut compiler.
 Untuk bahasa pemrograman Pascal, compiler yang bisa
digunakan adalah Turbo Pascal dan Free Pascal.
 Dalam bahasa pemrograman apapun pasti tidak
lepas dari algoritma.
 Definisi Algoritma:
 Urutan langkah logis tertentu untuk memecahkan
suatu masalah ( Microsoft Press Computer and Internet
Dictionary 1997,1998)
 Alur pemikiran dalam menyelesaikan suatu pekerjaan
yang dituangkan secara tertulis. (Dari Algoritma dan
Struktur Data dengan C, C++, dan Java oleh Moh
Sjukani)
 Dari 2 definisi sebelumnya dapat disimpulkan
bahwa:
 Algoritma harus mengikuti suatu urutan aturan
tertentu dan tidak boleh melompat-lompat.
 Algoritma seseorang dengan yang lain dapat berbeda-
beda karena mempunyai alur pikir yang berbeda-beda
pula.
 Algoritma dapat berupa kalimat, gambar atau tabel
tertentu.
 Input: algoritma dapat memiliki nol atau lebih inputan
dari luar.
 Output: algoritma harus memiliki minimal satu buah
output keluaran.
 Definiteness (pasti): algoritma memiliki instruksi-instruksi
yang jelas.
 Finiteness (ada batas): algoritma harus memiliki titik
berhenti (stopping role).
 Effectiveness (tepat dan efisien): algoritma sebisa
mungkin harus dapat dilaksanakan dan efektif. Contoh
instruksi yang tidak efektif adalah:
A = A + 0 atau A = A * 1 efektif A+=6; A*=4; A
 Tidak menggunakan simbol atau sintaks dari
suatu bahasa pemrograman.
 Tidak tergantung pada suatu bahasa
pemrograman.
 Notasi-notasinya dapat digunakan untuk
seluruh bahasa manapun.
 Sequence Process: instruksi dikerjakan secara sekuensial,
berurutan.

 Selection / Choice Process: instruksi dikerjakan jika


memenuhi kriteria tertentu.

 Iteration / Repetition Process: instruksi dikerjakan selama


memenuhi suatu kondisi tertentu.

 Concurrent Process: beberapa instruksi dikerjakan secara


bersama.
 Problem: mencari bilangan terbesar dari dua bilangan
yang diinputkan user.
 Contoh Algoritma:
1. Masukkan bilangan pertama
2. Masukkan bilangan kedua
3. Jika bilangan pertama > bilangan kedua maka kerjakan
langkah 4, jika tidak, kerjakan langkah 5.
4. Tampilkan bilangan pertama
5. Tampilkan bilangan kedua
 Bagian-bagian program :
 Input
 Proses
 Output : Minimal satu output
1. Mendefinisikan Masalah
2. Mencari Solusi
3. Membuat Algoritma
4. Menulis Program
5. Menguji Program
6. Menulis Dokumentasi
1. Mendefinisikan Masalah:
 Langkah mendefinisikan masalah ini seringkali
dilupakan oleh orang / programmer
 Hukum Murphy (by Henry Ledgard) :
 “Semakin cepat menulis program, akan
semakin lama kita dapat menyelesaikannya”.
 Tentukan masalahnya, apa saja yang harus
dipecahkan dengan menggunakan komputer, dan
apa inputan serta outputnya.
1. Mencari Solusi:
 Jika masalah terlalu kompleks, maka ada baiknya
masalah tersebut dipecah menjadi modul-modul kecil
agar lebih mudah diselesaikan.
 Contohnya masalah invers matriks, maka kita dapat
membagi menjadi beberapa modul:
 meminta masukkan berupa matriks bujur sangkar
 mencari invers matriks
 menampilkan hasil kepada pengguna
 Dengan penggunaan modul tersebut program utama
akan menjadi lebih singkat dan mudah dilihat.
3. Membuat Algoritma:
Dalam membuat algoritma usahakan memenuhi
dua (syarat) utama, yaitu :
 Algoritma harus seefesien mungkin
 Algoritma harus benar-benar sesuai dengan solusi yang
kita dapatkan
4. Menulis program

Pilihlah bahasa yang mudah dipelajari, mudah


digunakan, dan lebih baik lagi jika sudah dikuasai,
memiliki tingkat kompatibilitas tinggi dengan
perangkat keras dan platform lainnya.
5. Menguji Program:
 Setelah program jadi, silahkan uji program
tersebut dengan segala macam kemungkinan
yang ada, termasuk error-handlingnya sehingga
program tersebut akan benar-benar handal dan
layak digunakan.
6. Menulis Dokumentasi:
 Menulis dokumentasi sangat penting agar pada
suatu saat jika kita akan melakukan perubahan
atau membaca source code yang sudah kita tulis
dapat kita ingat-ingat lagi dan kita akan mudah
membacanya. Caranya adalah dengan
menuliskan komentar-komentar kecil tentang
apa maksud kode tersebut, untuk apa, variabel
apa saja yang digunakan, untuk apa, dan
parameter-parameter yang ada pada suatu
prosedur dan fungsi.
 Definisi :
▪ Bentuk gambar/diagram yang mempunyai aliran satu atau dua
arah secara sekuensial

 Kegunaan :
▪ Mempermudah programmer dalam menentukan alur logika
program

▪ Untuk mempresentasikan program kepada orang lain

 Maka, flowchart harus dapat merepresentasikan


komponen-komponen dalam bahasa pemrograman
Mulai
 Menjumlahkan 2 bilangan.
 Algoritma : Masukkan a
1. Masukkan nilai bilangan 1 (a)
2. Masukkan nilai bilangan 2 (b)
Masukkan b
3. Jumlahkan kedua bilangan
yaitu Jumlah= a+b
4. Cetak Jumlah. Jumlah = a + b

Tulis Jumlah

Selesai
Buatlah algoritma dan flowchart untuk:
a) Menghitung luas segitiga.
b) Menghitung nilai rata-rata dari 3 buah
bilangan yang diinputkan oleh user.
 Buatlah algoritma dan flowchart untuk menghitung
rata-rata dari tiga nilai bilangan bulat yang diinput
oleh user. (10-100)
Jika rata-rata nilai lebih besar dari >60 nyatakan
atau cetak “Nilai Bagus”, jika tidak “Nilai Jelek”.

Kerjakan di kertas, tulis nama dan NIM.


dikumpulkan minggu depan
50 60 70
Rata2 = 180/3=60
Nilai Jelek

Anda mungkin juga menyukai