1. Pengantar Algoritma dan Pemrograman ALGORITMA DAN STRUKTUR DATA Pengertian Program dan Bahasa Pemrograman Orang yang membuat program disebut pemrogram (programmer) Aktivitas yang berhubugan dengan pembuatan program disebut pemrograman (programming) Bahasa pemrograman dapat dikelompokkan menjadi: 1. Bahasa tingkat tinggi (high-level language) 2. Bahasa tingkat rendah (low-level language) Instruksi dalam Bahasa Rendah Keterangan B402 atau 1011 0100 0000 0010 Muatlah bilangan 2 ke register AH B22A atau 1011 0010 0010 1010 Muatlah bilangan 2A heksadesimal ke register DL CD21 atau 1100 1101 0010 0001 Jalankan instruksi 21 heksadesimal Intruksi dalam Bahasa Tinggi Bahasa WRITE (‘*’) ; Pascal DISPLAY ‘*” . COBOL PRINT “*” BASIC Printf (“*”) ; C cout << “*” ; C++ System.out.println (“*”) ; Java Penerjemah Bahasa Proses penerjemahan yang dilakukan oleh program disebut translator (penerjemah). Dapat berupa: 1. Interpreter 2. kompiler a). Proses penerjemahan pada interpreter b). Proses penerjemahan pada kompiler Kode Sumber : Urutan Pengerjaan : Instruksi 1 Instruksi 2 Instruksi 3 1. Instruksi 1 diterjemahkan kemudian dijalankan 2. Instruksi 2 diterjemahkan kemudian dijalankan 3. Instruksi 3 diterjemahkan kemudian dijalankan Kode Sumber : Urutan Pengerjaan : Instruksi 1 Instruksi 2 Instruksi 3 Instruksi 1 hingga instruksi 3 diterjemahkan menjadi kode objek. Pengeksekusian Program : Ketika kode objek dijalankan, tidak ada penerjemahan lagi dan tidak bergantung kode sumber. Penyelesaian Masalah dengan Program Sebelum menyelesaikan masalah dengan program, terdapat 3 langkah yg perlu dilakukan. 1. Menganalisis masalah dan membuat algoritma 2. Menuangkan algoritma ke dalam bentuk program 3. Mengeksekusi dan menguji program 1. Menganalisis masalah dan membuat algoritma Pengalaman, pengetahuan, kreativitas, imajinasi, dan kelihaian adalah faktor – faktor yang sangat menentukan keberhasilan langkah ini. Diperlukan tindakan untuk mengidentifikasi informasi yaitu keluaran yang menjadi pemecahan masalah dan data yang menjadi masukan. Langkah detail yang ditujukan untuk komputer guna menyelesaikan suatu masalah inilah yang disebut algoritma. Algoritma berbeda dengan program, karena algoritma bersifat bebas terhadap bahasa pemrograman. Istilah algoritma berasal dari nama seorang berkebagsaan Arab bernama Abu Jafar Mohammed ibn Musa al Khowarizmi (tahun 790 – 840), yang sangat terkenal sebagai ‘Bapak Aljabar’ 1. Menganalisis masalah dan membuat algoritma Contoh sederhana, menghitung luas lingkaran dengan menggunakan komputer. Keluaran berupa = Luas Masukan berupa = jari-jari Menentukan bagaimana luas lingkaran dihitung berdasarkan data jari-jari Algoritmanya: 1. Peroleh jari-jari lingkaran 2. Hitung luas lingkaran dengan rumus 3,14 x jari x jari 3. Tampikan nilai luas lingkaran 1. Menganalisis masalah dan membuat algoritma Contoh pseudokode : 1. jariJari 10 2. luas 3.14 * jariJari * jariJari 3. write(luas) Contoh flowchart : 2. Menuangkan algoritma ke dalam bentuk program #include <iostream> using namespace std; int main() { double jariJari; double luas; jari = 10; luas = 3.14 * jariJari * jariJari ; cout << "Luas Lingkaran = " << luas << endl; return 0; } Luas Lingkaran = 314 2. Menuangkan algoritma ke dalam bentuk program 3. Mengeksekusi dan menguji program Beberapa kesalahan yang terjadi pada proses kompilasi hingga pengeksekusian program: 1. Kesalahan sintaksis Kesalahan dalam menuliskan program yang tidak sesuai dengan kaidah bahasa pemrograman 2. Kesalahan logika kesalahan yang terjadi karena ada logika yang salah. 3. Kesalahan runtime kesalahan yang terjadl karena suatu operasi dalam program tidak dapat dilakukan oleh komputer Contoh Struktur Data Contoh Struktur Data 1. Bandingkan dua pemain 2. Jika peman di sebelah kiri lebih besar, Tukar posisi kedua 3. Bergerak satu posisi ke kanan.