Zaenal Abidin, S.Si., M.Cs. Riza Arifudin, S.Pd., M.Cs.
Dalam kehidupan sehari-hari, untuk berkomunikasi butuh bahasa yang sama. Jika lawan bicara tidak penerjemah Analog di bahasa pemrograman, kita harus menggunakan bahasa yang dimengerti komputer. Komputer mesin digital. Komputer hanya hanya mengenal kondisi ada arus listrik (dilambangkan dengan 1) dan tidak ada arus listrik (dilambangkan dengan 0)
Untuk pemrograman menggunakan kode sandi 0 dan 1. Bahasa pemrograman yang menggunakan kode biner bahasa mesin Bahasa mesin susah kode biner diganti dengan singkatan kata (mnemonic). Bahasa pemrograman yang menggunakan singkatan kata bahasa assembly.
CMP AL, 0D Artinya : bandingkan nilai register AL dengan 0D. CMP singkatan dari CoMPare Perintah CMP AL, 0D lebih mudah dipahami dari pada 1010 0000 1011. Software yang mengkonversikan perintahperintah assembly ke dalam bahasa mesin assembler.
Bahasa assembly dirasa masih terlalu sulit. Diciptakan bahasa generasi ketiga 3GL (thirdgeneration language) atau Bahasa tingkat tinggi (high level language). Contoh: Basic, Pascal, C, C++,COBOL Umumnya bahasa tingkat tinggi menggunakan bahasa inggris sebagai bahasa internasional.
Software yang menerjemahkan program ke dalam bahasa assembly atau bahasa mesin ada 2 macam: 1. Interpreter 2. Compiler
Interpreter
Compiler
Menerjemahkan program baris per baris
Menerjemhakan semua perintah dalam bahasa mesin kemudian menjalankan hasil penerjemahan.
Contoh: Basic
Contoh: Pascal, C, C++
Mendefinisikan masalah. Menentukan solusi. Memilih algoritma. Menulis program. Menguji program. Menulis dokumentasi. Merawat program.
Algoritma adalah urutan langkah berhingga untuk memecahkan masalah logika atau matematika. Dalam kehidupan sehari-hari sering menggunakan algoritma untuk melakukan sesuatu.
contoh: Algoritma MENULIS SURAT
1. Mempersiapkan kertas dan amplop 2. Mempersiapkan alat tulis. 3. Mulai menulis. 4. Memasukkan kertas ke dalam amplop. 5. Pergi ke tempat pengiriman surat untuk mengeposkan surat.
Dalam kasus lain, Anda mungkin harus melakukan langkah-langkah tertentu beberapa kali. Dalam dunia pemrograman disebut pengulangan.
Menghitung luas daerah lingkaran. Rumus luas daerah lingkaran: L=R2. Contoh algoritmanya:
1. Masukkan R. 2. Pi 3.14.
3. L Pi*R*R. 4. Tulis L
Tanda “” dibaca “assigned” atau “diberi input/nilai”
Contoh berikut adalah algoritma untuk menuliskan nilai mutlak dari nilai yang dimasukkan oleh pengguna. Definisi nilai mutlak
Berikut ini adalah algoritma untuk melukiskan nilai absolut dari masukkan pengguna. 1. Masukkan x. 2. Jika (x<0) maka kerjakan baris 3, jika tidak
kerjakan baris 4. 3. x -x 4. Tulis x
Mencari rata-rata dari data xi yang berjumlah N. 1. 2. 3. 4. 5. 6. 7. 8. 9.
Masukkan N. i 1. jum 0. Selama (i<=N) kerjakan baris 4 sampai dengan 7. Masukkan dt i i+1. jum jum + dt Rata jum/N Tulis Rata
Input: suatu algoritma memiliki input atau kondisi awal sebelum algoritma dilaksanakan dan bisa berupa nilai-nilai pengubah yang diambil dari himpunan-himpunan khusus. Output: suatu algoritma akan menghasilkan output setelah dilaksanakan, atau mengubah kondisi awal menjadi kondisi akhir, dimana nilai output diperoleh dari nilai input yang telah diproses melalui algoritma. Definiteness: langkah-langkah yang dituliskan terdefinisi dengan jelas. Finiteness: algoritma harus memberi kondisi akhir. Effectiveness: algoritma dapat dilaksanakan dalam selang waktu tertentu sehingga memberi solusi seperti yang diharapkan. Generality: langkah-langkah algoritma berlaku untuk setiap himpunan input yang sesuai dengan persoalan yang akan diberikan tidak hanya untuk himpunan tertentu.
Flowchart untaian simbol gambar (chart) yang menunjukkan alira (flow) dari proses terhadap data. Flowchart dibedakan menjadi 2 bagian:
1. Program Flowchart
2. System Flowchart
Simbol
Nama
Keterangan
Terminator
Untuk MULAI atau SELESAI
Proses
Menyatakan proses terhadap suatu data
Input/Output
Menerima input atau menampilkan output
Seleksi/Pilihan
Memilih aliran berdasarkan syarat
Simbol
Nama
Keterangan
PredefinedData
Definisi awal dari variabel atau data
PredefinedProcess
Lambang fungsi atau sub-program
Connector
Penghubung pada halaman
Off-page connector
Penghubung halaman yang berbeda
Simbol
Nama Keyboard
Printer
File/Storage
Display/Monitor
Keterangan
Simbol
Nama Magnetic Tape
Magnetic Disk
Sorting
Extract
Merge
Keterangan
Menghitung luas lingkaran Mulai
Pi 3.14 Masukkan R
LPi*R*R
Tulis L
Selesai