Pengenalan Pemrograman Java Pengenalan Pemrograman 1
Versi 2.0
tujuan Pada akhir pembahasan, peserta diharapkan dapat: Mengidentifikasi
perbedaan komponen-komponen
pada komputer Mengetahui tentang bahasa pemrograman dan kategorinya Mengerti alur kerja pembuatan program (algoritma) dan menerapkannya pada pemecahan masalah Mempelajari perbedaan sistem bilangan dan konversinya
pengenalan
Komputer
◦ Sebuah mesin yang melaksanakan berbagai macam tugas berdasarkan perintah khusus
Dua komponen utama:
◦ Hardware
Bagian komputer yang dapat diukur Terdiri atas bagian elektronik dan mekanik ◦ Software
Bagian komputer yang tidak dapat diukur Terdiri dari data dan program komputer
Komponen Dasar pada Komputer : Hardware
CPU
◦ Central Processing Unit ◦ Processor merupakan “otak” pada komputer ◦ Yang melakukan komputasi dasar dalam sistem ◦ Contoh: Pentium, Athlon and SPARC.
Komponen Dasar pada Komputer : Hardware
Memori ◦ Tempat dimana dapat ditemukannya data dan perintah yang dibutuhkan oleh CPU untuk melakukan tugas-tugas yang ditetapkan ◦ 2 Tipe: Memori utama (Main Memory) Memori Sekunder (Secondary Memory)
Komponen Dasar pada Komputer : Hardware Memori Utama ◦ Digunakan untuk mengendalikan program dan data, dimana prosesor secara aktif bekerja ◦ Tidak digunakan untuk penyimpanan jangka panjang ◦ Biasanya disebut dengan RAM (Random Access Memory) ◦ Diperlukan sebagai volatile storage – yang artinya ketika komputer dimatikan, semua informasi yang berada pada memory utama akan terhapus
Komponen Dasar pada Komputer : Hardware Memory sekunder ◦ Digunakan untuk mengendalikan program dan data untuk penggunaan jangka panjang. ◦ Contoh dari memory sekunder adalah hard disk dan cd-rom. ◦ Diperlukan sebagai non-volatile storage
Komponen Dasar pada Komputer : Hardware Perbandingan antara memory utama dan memory sekunder :
Komponen Dasar pada Komputer : Hardware I/O Device ◦ Digunakan supaya sistem komputer dapat berinteraksi dengan dunia luar dengan cara memindahkan data ke dalam dan keluar sistem ◦ Contoh:
Input device: keyboard, mouse dan mikrofon Output device: monitor, printer dan speaker
Komponen Dasar pada Komputer : Software Software
◦ Suatu program yang digunakan oleh komputer untuk melakukan suatu fungsi ◦ Disimpan pada beberapa piranti keras (hardware) seperti hard disk, tetapi software sendiri bersifat tidak dapat diukur (intangible) ◦ data yang komputer gunakan dapat berupa apapun yang program perlukan Program
◦ Tindakan seperti instruksi untuk processor.
Komponen Dasar pada Komputer : Software Beberapa Tipe Program Komputer ◦ Program Sistem ◦ Program Aplikasi ◦ Compiler
Komponen Dasar pada Komputer : Software Program Sistem ◦ Program yang diperlukan untuk menyimpan semua sistem hardware dan software yang berjalan secara bersamaan ◦ Contoh : Sistem Operasi seperti Linux, Windows, Unix, Solaris, MacOS
Komponen Dasar pada Komputer : Software Program Aplikasi ◦ Program yang digunakan user untuk menyelesaikan tugas mereka ◦ Contoh : Word Processor, Game programs, Spreadsheets
Komponen Dasar pada Komputer : Software Compiler ◦ Menerjemahkan program komputer ke dalam bahasa mesin ◦ Bahasa mesin Bahasa yang dimengerti oleh komputer.
Bahasa pemrograman
Bahasa Pemrograman ◦ Suatu teknik komunikasi yang distandarisasi untuk menyatakan instruksi pada komputer ◦ Seperti bahasa manusia, masing-masing bahasa memiliki sintaks dan tata-bahasa sendiri ◦ Terdapat perbedaan tipe dari bahasa pemrograman yang dapat digunakan untuk membuat suatu program, tetapi hal itu tergantung pada bahasa yang Anda gunakan, instruksiinstruksi ini diterjemahkan ke dalam bahasa mesin yang dapat dimengerti oleh komputer.
Kategori bahasa pemrograman
Bahasa Pemrograman Tingkat Tinggi ◦ Suatu bahasa pemrograman yang lebih mudah dioperasikan, untuk beberapa extent platform-independent, dan abstrak dari operasi prosesor komputer tingkat rendah seperti mengakses memory ◦ Suatu statement pemrograman dapat diterjemahkan ke dalam satu atau beberapa perintah-perintah mesin oleh sebuah compiler. ◦ Contoh: Java, C, C++, Basic, Fortran
Kategori bahasa pemrograman
Bahasa
Assembly Tingkat Rendah
◦ Bahasa assembly serupa dengan bahasa mesin, tetapi bahasa assembly jauh lebih mudah untuk diprogram karena programmer dapat mengganti nama menjadi angka ◦ Bahasa assembly tersedia untuk masing-masing keluarga CPU, dan setiap instruksi assembly diterjemahkan ke dalam satu perintah mesin oleh sebuah program assembler
Kategori bahasa pemrograman
catatan: ◦ Istilah “tingkat tinggi" dan “tingkat rendah" merupakan relasi turunan. ◦ Bahasa assembly digolongkan dalam tingkat rendah, sedangkan COBOL, C, dll. digolongkan dalam tingkat tinggi. ◦ Banyak programmer saat ini lebih mengacu pada bahasa yang belakangan disebut sebagai tingkat rendah
Alur Kerja Pembuatan Program
Langkah-langkah dasar menyelesaikan masalah pada komputer: 1. Mendefinisikan masalah 2. Menganalisa masalah 3. Mendesain algoritma dan representasi atau penyajian (Pseudocode atau flowchart) 4. Coding dan debugging
1. Mendefinisikan Masalah
Suatu masalah yang dideklarasikan secara jelas sudah merupakan setengah solusi.
Pemrograman komputer memerlukan pendefinisian masalah terlebih dahulu sebelum kita mencoba untuk membuat sebuah solusi.
Saatnya kita mendefinisikan contoh permasalahan kita: “Buatlah sebuah program yang akan menampilkan berapa kali suatu nama tampil pada sebuah daftar.”
2. Menganalisa Masalah
Setelah masalah telah cukup didefinisikan, pendekatan paling sederhana, paling efisien dan paling efektif untuk menyelesaikan masalah harus dirumuskan.
Biasanya, langkah ini melibatkan pemecahan masalah ke dalam sub permasalahan yang lebih sederhana dan lebih kecil.
Contoh Permasalahan:
◦ Hitung berapa kali suatu nama tampil pada sebuah daftar
Input program:
◦ Daftar dari nama-nama (kita sebut nameList) ◦ Nama yang dicari (kita sebut keyName)
Output program:
◦ Jumlah seringnya suatu nama tampil pada suatu daftar
3. Desain Algoritma & penyajian
Algoritma
◦ Langkah-langkah yang jelas dan dengan spesifikasi yang tidak ambigu sangat dibutuhkan dalam memecahkan suatu permasalahan ◦ Mungkin juga dinyatakan dalam : Bahasa manusia (Bahasa Inggris, Bahasa Tagalog) Representasi grafik seperti flowchart atau diagram alur Pseudocode – yang menjembatani antara bahasa manusia dengan bahasa pemrograman
3. Desain Algoritma dan Penyajian dalam Bahasa Manusia Menyatakan solusi melalui bahasa manusia: 1. Ambil daftar dari nama-nama, kita sebut dengan nameList 2. Ambil nama yang akan dicari, kita sebut dengan keyname 3. Bandingkan keyname pada masing-masing nama dalam nameList 4. Jika keyname sama dengan nama pada daftar, tambahkan 1 pada count (penghitungan) 5. Jika semua nama telah dibandingkan, keluarkan hasil tersebut
3. Desain Algoritma dan Penyajian - Flowchart Nyatakan solusi melalui sebuah flowchart:
Simbol Flowchart
Simbol Flowchart
Simbol Flowchart
catatan: Ini hanya sebagai petunjuk untuk simbol-simbol yang umum dipakai dalam pembuatan flowcharts. Anda dapat menggunakan simbol apapun dalam pembuatan flowcharts Anda, selama Anda konsisten dalam penggunaan simbol-simbol tersebut.
3. Desain Algoritma dan Penyajian- Pseudocode
Menyatakan solusi menggunakan pseudocode: Let nameList = List of Names Let keyName = the name to be sought Let Count = 0 For each name in NameList do the following if name == keyName Count = Count + 1 Display Count
4. Coding dan Debugging
Setelah membuat algoritma-nya, sekarang memungkinkan untuk membuat source code-nya. Menggunakan algoritma sebagai dasar, source code sekarang dapat ditulis menggunakan bahasa pemrograman yang telah dipilih.
Debugging
◦ Proses perbaikan beberapa error (bug) pada program Anda
Tipe-Tipe Error
Compile-time error atau syntax error ◦ Terjadi jika terdapat syntax error pada code. ◦ Compiler akan mendeteksi error dan program tidak akan melakukan kompilasi. Dalam hal ini, programmer tidak dapat menghasilkan program eksekusi yang user dapat jalankan hingga error diperbaiki.
Runtime Error ◦ Compiler tidaklah sempurna sehingga tidak dapat menangkap semua error pada waktu proses kompilasi. Hal ini sepenuhnya benar untuk error yang logis seperti pengulangan tanpa batas. Tipe error ini disebut dengan runtime error.
Sistem bilangan
Bilangan
dapat direpresentasikan dalam berbagai macam cara.
Representasi
didasarkan pada apa yang disebut dengan BASIS.
Anda
menulis bilangan ini sebagai mana berikut: Bilangan basis
Sistem bilangan
Berikut ini representasi paling umum. ◦ Desimal (basis 10) Umum digunakan Digit valid dari 0 hingga 9 Contoh: 12610 (biasanya hanya ditulis 126) ◦ Biner (basis 2) Digit valid adalah 0 dan 1 Contoh: 11111102
Sistem bilangan
Berikut ini representasi paling umum. (lanjutan) ◦ Oktal (basis 8) Digit valid dari 0 hingga 7 Contoh: 1768 ◦ Heksadesimal (basis 16) Digit valid dari 0 hingga 9 dan A hingga F (atau dari a hingga f) Contoh: 7E16
Sistem bilangan
Konversi: Desimal ke Biner Metode: ◦ ◦ ◦ ◦ ◦ ◦
Secara berkesinambungan membagi bilangan dengan 2 Mendapatkan sisa (yang mana bisa berupa 0 atau 1) Ambil nomor sisa tersebut menjadi bentuk biner Ambil hasil tersebut dan bagi dengan bilangan 2 Ulangi proses seperti tadi hingga hasil mencapai 0 atau 1 Kita akhirnya mendapat semua sisa dari sisa yang sebelumnya, dan hasil akhirnya adalah dalam bentuk biner ◦ CATATAN: Untuk digit terakhir yang hasilnya telah kurang dari pembagi (yaitu 2) copy nilai tersebut ke sisa.
contoh: Desimal ke Biner
Konversi: Biner ke Desimal
Metode: ◦ Kita mengalikan digit biner ke "2 dinaikkan ke posisi bilangan biner" ◦ Kita kemudian menambahkan semua produk untuk mendapatkan hasil bilangan desimal.
contoh: Biner ke Desimal
Konversi: Desimal ke Oktal/Heksadesimal
Metode: ◦ Konversi bilangan desimal ke Oktal atau heksadesimal pada dasarnya sama seperti konversi dari desimal ke biner. ◦ Bagaimanapun, sebagai ganti 2 sebagai pembagi, Anda menggantinya dengan 8 (untuk oktal) atau 16 (untuk heksadesimal)
contoh: Desimal ke Oktal/Heksadesimal
Konversi: Oktal/Heksadesimal ke Desimal
Metode: ◦ Konversi bilangan oktal atau heksadesimal juga sama caranya seperti pada konversi bilangan biner ke desimal. ◦ Untuk melakukannya, kita hanya akan mengganti bilangan basis 2 dengan 8 untuk Oktal dan 16 untuk heksadesimal.
contoh: Oktal/Heksadesimal ke Desimal
Konversi: Biner ke Oktal
Metode: ◦ membagi bilangan biner ke dalam kumpulan 3 digit (dari kanan ke kiri) ◦ Ganti dengan nol jika digit bilangan tidak dapat dibagi dengan 3 ◦ Mengkonversi masingmasing pembagi ke dalam digit oktal nya yang sesuai ◦ Berikut ini tabel yang menunjukkan representasi biner dari masing-masing digit oktal.
Contoh: Biner ke Oktal
Konversi: Oktal ke Biner
Metode: ◦ Mengkonversi bilangan oktal ke biner hanya kebalikan dari apa yang telah diberikan sebelumnya. ◦ Mengkonversi masing-masing digit oktal ke dalam representasi biner nya (diberikan pada tabel) dan menggabungkannya. ◦ Hasilnya merupakan representasi biner.
Contoh: Oktal ke Biner
Konversi: Biner ke Heksadesimal
Metode: ◦ Membagi bilangan biner ke dalam kumpulan 4 digit (dari kanan ke kiri) ◦ Ganti dengan nol jika digit bilangan tidak dapat dibagi dengan 4 ◦ Mengkonversi setiap pembagi ke dalam digit heksadesimalnya yang sesuai ◦ Berikut ini tabel yang menunjukkan representasi biner dari setiap digit heksadesimal
Contoh: Biner ke Heksadesimal
Konversi: Heksadesimal ke Biner
Metode:
◦ Mengkonversi bilangan heksadesimal ke biner hanya kebalikan dari apa yang telah diberikan sebelumnya. ◦ Mengkonversi setiap digit heksadesimal ke dalam representasi biner nya (diberikan pada tabel) dan menggabungnya. ◦ Hasil merupakan representasi biner.
Contoh: Heksadesimal ke Biner
kesimpulan Komponen dasar dari komputer ◦ Hardware ◦ Software Ikhtisar Bahasa Pemrograman Komputer ◦ Apakah bahasa pemrograman itu? ◦ Kategori bahasa pemrograman Alur Kerja Pembuatan Program ◦ 1. Definisi Permasalahan ◦ 2. Analisa Permasalahan ◦ 3. Desain Algoritma dan representasi (bhs. manusia, Flowchart, Pseudocode) ◦ 4. Coding dan Debugging
kesimpulan Tipe-tipe
Error
◦ Compile time error/syntax error ◦ Runtime error Sistem
Bilangan
◦ Desimal, Heksadesimal, Biner, Oktal ◦ Konversi