Pemrograman Komputer

advertisement
Pemrograman Komputer
Oleh : Agus Priyanto, M.Kom
Tujuan Pembelajaran
1. Memahami bagaimana komputer menangani
data elektronik
2. Memahami komponen yang terlibat dalam
memproduksi informasi
3. Memahami perbedaan bahasa pemrograman
di setiap tingkatan
Algoritma Dan Pemrograman
 Algoritma adalah jantung ilmu komputer dan
informatika. Banyak cabang dari ilmu komputer
yang diacu dalam terminology algoritma.
 Algoritma berasal dari kata algorism yang
berarti proses menghitung. Kata algorism
berasal dari nama penulis buku arab yang
terkenal yaitu Abu Ja’afar Muhammad Ibnu
Musa al-Khuwarizmi
3
Definisi Algoritma
 Urutan langkah-langkah logis penyelesaian
masalah yang disusun secara sistematis
 Urutan logis pengambilan keputusan untuk pemecahan
masalah
4
Ciri Penting Algoritma
 Memiliki Input
Algoritma dapat memiliki nol atau lebih inputan dari
luar.
 Memiliki Output
Algoritma harus memiliki minimal satu buah output
keluaran.
5
 Definiteness (pasti)
Algoritma memiliki instruksi-instruksi yang jelas dan
tidak ambigu atau memiliki arti ganda.
 Finiteness (ada batas atau berakhir)
Algoritma harus memiliki titik berhenti (stopping
role).
 Effectiveness(efektif dan efisien)
• Algoritma sebisa mungkin harus dapat dilaksanakan
dan efektif.
• Contoh instruksi yang tidak efektif adalah : A = A +
0 atau A = A * 1.
7
Belajar Memprogram dan
Belajar Bahasa Pemrograman
 Belajar Memprogram :
Pemahaman persoalan, analisis, dan sintesis
Pemecahan Masalah
-Strategi
-Metodologi
-Sistematika
Notasi yang telah
disepakati
 Belajar Bahasa Pemrograman :
• Belajar memakai suatu bahasa
• Aturan sintaks (tata bahasa)
8
Bahasa Pemrograman
 Bahasa pemrograman adalah bahasa buatan
yang digunakan untuk mengendalikan
perilaku dari sebuah mesin, biasanya berupa
mesin komputer, sehingga dapat digunakan
untuk memberitahu komputer tentang apa
yang harus dilakukan
 Struktur bahasa ini memiliki kemiripan dengan
bahasa natural manusia
Klasifikasi menurut generasi
1. First Generation Language (1GL)
Bahasa pemrograman ini berupa kode-kode mesin yang hanya
bisa dipahami oleh mikroprosesor.
2. Second Generation Language (2GL)
•
•
Bahasa pada generasi ini adalah assembly language, dimana
bahasa ini masih menggunakan kode-kode yang disebut
dengan mnemonic.
Bahasa assembly disebut sebagai generasi kedua karena
bahasa ini bukan bahasa asli mikroprosesor, meskipun
begitu programer tetap harus mengetahui keunikan dari
masing masing mikroprosesor (registe r dan jenis instruksi).
3. Generasi ketiga
•
•
•
Bahasa pemrograman generasi ketiga sengaja didesain
supaya
mudah dipahami oleh manusia.
Pada generasi ini mulai dikenalkan istilah variabel, tipe
data, ekspresi aljabar dan sudah mendukung
pemrograman terstruktur.C
Contoh bahasa: FORTRAN, COBOL, ALGOL, BASIC, C,
C++, Pascal, Java.
4. Generasi keempat
•
•
•
•
Pada generasi ini, bahasa pemrograman didesain
untuk mengurangi effort dan mempercepat proses
pembuatan program.
Pada 3GL, pembuatan program membutuhkan
waktu yang lama dan mudah sekali didapati
error.
Pada 4GL, telah menggunakan metod ologi dimana
sebuah perintah dapat menghasilkan beberapa
instruksi 3GL yang kompleks dengan sedikit error.
Contoh bahasa:
•
Contoh bahasa :
 Pemrograman umum : DataFlex, WinDev,
PowerBuilder
 Basis data : SQL, Progress 4GL
 Manipulasi data, analisis dan pelaporan : ABAP,
Matlab, PL/SQL.
5.
Generasi kelima
•
•
•
Bahasa pemrograman generasi kelima disebut sebagai
constraintprogramming atau declarative-programming.
Dalam membuat program tidak dituliskan dalam
bentuk algoritma melainkan dituliskan batasan atau
fakta dari sebuah lingkup masalah, sehingga program
akan menghasilkan luaran dalam bentuk solusi.
Bahasa pemrograman ini digunakan untuk
membangun sistem kecerdasan buatan dan belum
digunakan secara meluas di dunia industri. Contoh
bahasa: Prolog, LISP, Mercury
Klasifikasi menurut tingkatan
1. Low -level programming language
•
•
•
Tingkat bahasa pemrograman ini disebut rendah
bukan karena posisinya berada di bawah, melainkan
karena kurangnya abstraksi (penggambaran kode
instruksi) antara bahasa natural dengan bahasa mesin
Oleh karena itu, bahasa di tingkat ini sering disebut
sebagai ’bahasa mesin’
Bahasa pemrograman yang masuk kategori ini adalah
bahasa mesin itu sendiri (1GL) dan bahasa assembly
(2GL).
2. High-level programming l anguage
(HLL)
Bahasa pemrograman di tingkat ini memiliki
abstraksi yang lebih banyak dan terdapat
kemiripan dengan bahasa natural (bahasa Inggris),
lebih mudah untuk digunakan dan mudah untuk
dipindahkan antar platform
3. Very high-level programming language
(VHLL)
•
•
Bahasa ini memiliki abstraksi yang lebih tinggi
dibandingkan HLL, dan digunakan untuk
menunjang produktifitas programer profesional.
Biasanya VHLL digunakan hanya untuk tujuan
yang spesifik, misalnya untuk keperluan bisnis:
mengolah data, membuat laporan, dsb.
TIOBE Index
for August
2015
Flowchart
 Dalam membuat algoritma, diperlukan suatu
mekanisme atau alat bantu untuk menuangkan
hasil pemikiran mengenai langkah –langkah
penyelesaian masalah yang sistematis dan
terurut
 Pada dasarnya untuk bisa menyusun solusi
diperlukan kemampuan problem-solving yang
baik
 Secara formal, flowchart didefinisikan sebagai
skema penggambaran dari algoritma atau
proses
 Tabel berikut menampilkan simbol -simbol
yang digunakan dalam menyusun flowchart
Flowchart
Simbol
 Berikut ini adalah flowchart
untuk menggambarkan
kegiatan membuat telur
dadar :
Pseudocode
• Skema lain yang dapat digunakan untuk
menyusun algoritma adalah pseudocode
• Pseudocode adalah bentuk informal untuk
mendeskripsikan algoritma yang mengikuti
struktur bahasa pemrograman tertentu
• Tujuan dari penggunaan pseudocode adalah
supaya :
1. lebih mudah dibaca oleh manusia
2. lebih mudah untuk dipahami
3. lebih mudah dalam menuangkan ide/hasil
pemikiran
• Pseudocode lebih cocok digunakan untuk
menyusun algoritma dengan kasus yang besar
dan kompleks
• Sangat dianjurkan kepada programmer
pemula untuk mulai menggunakan
pseudocode dalam menyelesaikan masalah
Pseudocode
if sales > 1000 then
bonus  sales * 25%
salary  2000000 + bonus
output(salary)
C++
if (sales > 1000)
bonus = sales * 25%
salary = 2000000 + bonus
cout(salary)
Algoritma Pengerjaan didalam Resep Makanan
1.
2.
3.
4.
5.
Tuangkan satu gelas santan ke dalam wajan.
Masukkan bumbu-bumbu yang sudah dihaluskan.
Aduk hingga merata.
Tambahkan garam, merica dan kecap asin.
Masak dengan api sedang, sambil diaduk-aduk.
Algoritma Dalam Mengerjakan Praktikum
Kimia
1. Siapkan tabung reaksi ukuran 100cc.
2. Teteskan 50 cc larutan H2SO4 ke dalam
tabung.
3. Campurkan 20 cc larutan NaOH kedalamnya,
aduk hingga tercampur merata.
Algoritma Mengirim Surat Kepada Teman
1.
2.
3.
4.
5.
Tulis surat pada secarik kertas surat.
Ambil sampul surat.
Masukkan surat ke dalam sampul.
Tutup sampul surat menggunakan perekat.
Jika kita ingat alamat teman tersebut, maka tulis alamat
pada sampul surat.
6. Jika tidak ingat, lihat buku alamat, kemudian tulis alamat
pada sampul surat.
7. Tempel perangko pada surat.
8. Bawa surat ke kantor pos untuk diposkan.
Algoritma Mencari Kuadrat Suatu
Bilangan
1. Masukkan bilangan A yang akan dkuadratkan
2. Kalikan A dengan A
3. Selesai
Latihan Soal
1. Buatlah algoritma dalam mengganti ban
mobil yang pecah, tanpa masalah atau syarat.
2. Dari soal nomor 1, ban serep kempes.
3. Dari soal nomor 1, ban serep bocor dan
harus ditambal.
Algoritma Dalam Mengganti Ban Mobil Yang
Pecah,Tanpa Masalah Atau Syarat
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Start
Parkirkan mobil ditempat yang aman
Pasang segitiga pengaman pada sisi mobil
Ambil dongkrak dan kunci T
Ambil ban serep
Dongkrak mobil
Buka baut ban menggunakan kunci T
Lepas ban mobil yang pecah
Pasang ban serep
Pasang kembali baut ban
Lepaskan dongkrak
Simpan ban pecah, kunci T, dan segitiga pengaman
End.
Tugas
Buatlah algoritma untuk menghitung luas
dan keliling lingkaran. Dengan masukan jarijari lingkaran.
Menghitung Luas Lingkaran
1.
2.
3.
4.
Start
Menetapkan nilai Phi yaitu 3.14
Masukan jari-jari lingkaran
Menghitung luas lingkaran dengan rumus
L=phi x r x r
5. Mencetak nilai Luas
6. Finish
Menghitung Keliling Lingkaran
1.
2.
3.
4.
Start
Menetapkan nilai Phi yaitu 3.14
Masukan jari-jari lingkaran
Menghitung keliling lingkaran dengan rumus
K=2 x phi x r
5. Mencetak nilai Keliling
6. Finish
Download