PRAK. ALGORITMA DAN
PEMROGRAMAN (JAVA)
MATERI POKOK
Pengantar Algoritma
Konsep Bahasa Pemrograman
Flowchart
Tipe Data, Keywords, Konstanta, Variabel
Struktur Input/Output
Percabangan
Perulangan
Pemrograman Modular
Fungsi: parameter, kembalian fungsi by value
Array 1 dimensi
Array 2 dimensi
Manipulasi String
SILABUS
Pengantar Algoritma dan Konsep Bahasa Pemrograman
Flowchart dan Pengenalan Java
Tipe Data, Keywords, Konstanta dan Input/Output
Percabangan Sederhana
Percabangan Kompleks dan Switch
Loop Sederhana
Loop Kompleks
MID/TUGAS BESAR
Modular Programming
Fungsi by value: parameter, void dan non-void
Array 1 Dimensi
Array 2 Dimensi
Java Applet GUI
WHAT’S PROGRAM ?
Adalah kumpulan instruksi-instruksi tersendiri yang
biasanya disebut source code yang dibuat oleh
programmer (pembuat program).
Program adalah kumpulan instruksi atau perintah
yang disusun sedemikian rupa sehingga mempunyai
urutan nalar yang tepat untuk menyelesaikan suatu
persoalan. (Menurut P. Insap Santosa).
Instruksi (statement) yang dimaksud adalah syntax
(cara penulisan) sesuai dengan bahasa pemrograman
yang digunakan.
Mempunyai komponen-komponen : Input, Output,
PROGRAMMING LANGUAGE
Adalah alat untuk membuat program
Contoh: C, C++, C#, Pascal, Basic, Perl, PHP,
ASP, JHP, Java, dll.
Perbedaan: cara memberikan instruksi
Persamaan: bertujuan menghasilkan output
PROGRAMMING PARADIGM
Pemrograman Prosedural
Berdasarkan urutan-urutan, sekuensial
Program adalah suatu rangkaian prosedur untuk memanipulasi data.
Prosedur merupakan kumpulan instruksi yang dikerjakan secara berurutan.
Harus mengingat prosedur mana yang sudah dipanggil dan apa yang
sudah diubah.
Pemrograman Fungsional
Berdasarkan teori fungsi matematika Fungsi merupakan dasar utama program.
Pemrograman Terstruktur
Secara berurutan dan terstrukrtur.
Program dapat dibagai-bagi menjadi prosedur dan fungsi. Contoh: PASCAL dan C
Pemrograman Modular
Pemrograman ini membentuk banyak modul.
Modul merupakan kumpulan dari prosedur dan fungsi yang berdiri sendiri Sebuah program dapat merupakan kumpulan modul-modul.
PROGRAMMING PARADIGM
Pemrograman Berorientasi Obyek
Pemrograman berdasarkan prinsip obyek, dimana obyek
memiliki data/variabel/property dan
method/event/prosedur yang dapat dimanipulasi
Contoh: C++, Object Pascal, dan Java.
Pemrograman Berorientasi Fungsi
Pemrograman ini berfokus pada suatu fungsi tertentu saja.
Sangat tergantung pada tujuan pembuatan bahasa
pemrograman ini.
Contoh: SQL (Structured Query Language), HTML, XML
dan lain-lain.
Pemrograman Deklaratif
Pemrograman ini mendeskripsikan suatu masalah dengan
pernyataan daripada memecahkan masalah dengan
implementasi algoritma.
Contoh: PROLOG
DEFINISI ALGORITMA
Algoritma adalah urutan langkah logis tertentu
untuk memecahkan suatu masalah.
Urutan langkah logis, yang berarti algoritma harus
mengikuti suatu urutan tertentu, tidak boleh
melompat-lompat.
(Dari Microsoft Press Computer and Internet Dictionaary
1997, 1998)
Alur pemikiran dalam menyelesaikan suatu
pekerjaan yang dituangkan secara tertulis.
Alur pikiran, sehingga algoritma seseorang dapat juga
berbeda dari algoritma orang lain.
Tertulis, yang artinya dapat berupa kalimat, gambar, atau
tabel tertentu.
(Dari Algoritma dan Struktur Data dengan C, C++, dan
CONTOH ALGORITMA
1).Masalah menghitung Luas dan keliling lingkaran
Misal : input =R, output = L dan K,
Proses : L = pi* r
2K = 2 * pi * r
Algorithmanya:
Secara Struktur bahasa:
Tetapkan nilai pi = 3.14
Bacalah nilai R (jari-jari)
Hitung luas(L)
Hitung keliling(K)
Tulis L dan K
Secara Pseudocode:
pi 3.14
input
R
L
pi* r
2 K
2 * pi * r
Output L dan K
NOTE
Dalam bidang komputer, algoritma sangat diperlukan
dalam menyelesaikan berbagai masalah pemrograman,
terutama dalam komputasi numeris.
Tanpa algoritma yang dirancang baik maka proses
pemrograman akan menjadi salah, rusak, atau lambat dan
tidak efisien
Pelaksana algoritma adalah Komputer.
Manusia dan komputer berkomunikasi dengan cara:
manusia memberikan perintah-perintah kepada komputer
berupa instruksi-instruksi yang disebut program.
Alat yang digunakan untuk membuat program tersebut
adalah bahasa pemrograman.
Bahasa pemrograman sangat bermacam-macam: C, C++,
Pascal, Java, C#, Basic, Perl, PHP, ASP, JSP, J#, J++ dan
masih banyak bahasa lainnya. Dari berbagai bahasa
pemrograman cara memberikan instruksinya
berbeda-beda namun bertujuan menghasilkan output yang sama
KRITERIA ALGORITMA (DONALD E.
KNUTH)
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 dan tidak ambigu.
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
PENGENALAN JAVA
Java adalah satu dari beberapa kemajuan terpenting di bidang software
komputer dalam 20 tahun terakhir. Sama pentingnya dengan HyperText Markup Language(HTML) yang sangat sukses dalam penerbitan homepage static di World wide Web (WWW). Java meledakkan internet dengan isi yang lebih menarik dan interaktif.
Ada tiga kombinasi kunci yang membuat Java menjadi teknologi yang secara
fundamental berbeda dari yang lain yang ada saat ini. Pertama dan yang paling menarik adalah semua orang dapat menggunakan applet yang kecil, aman, dinamik, lintas platform, aktif dan siap dijalankan di jaringan. Sejak awal, Applet dapat disusun dan didstribusikan secara aman dalam bentuk homepage semudah aspek-aspek HTML.
Kedua, Java adalah bahasa pemrograman yang ampuh dan memiliki kekuatan
desain berorientasi objek dengan sintaks yang sederhana dan mudah dikenal disertai dukungan lingkungan yang kokoh serta enak digunakan. Java
memungkinkan programmer untuk membuat program dan komponen dan applet baru yang lebih menarik.
Ketiga, Java adalah kumpulan class objek yang ampuh sehingga dapat
melayani programmer dengan uraian yang jelas untuk menerangkan berbagai fungsi sistem yang umum seperti pembuatan window, penggunaan jaringan dan input / output. Kunci class-class ini adalah kemampuannya yang dapat melayani aplikasi lintas platform untuk beragam variasi yang umum
KELEBIHAN JAVA
Sederhana dan Ampuh
Aman
Berorientasi Objek
Kokoh
Interaktif
Netral Terhadap Berbagai Arsitektur
Terinterpretasi dan Berkinerja Tinggi
Mudah Dipelajari
PENGENALAN OOP
Pemrograman berorientasi objek sangat ampuh
dan merupakan paradigma alami untuk
membuat program yang dapat bertahan
terhadap
kemungkinan
perubahan
yang
berkaitan
dengan
pertumbuhan
dan
pertambahan umur sistem apapun.
Bahasa berorientasi objek sejati menyediakan
mekanisme yang dikenal sebagai enkapsulasi,
inheritansi dan polimorfisme.
TIPE DATA DALAM JAVA
Java memiliki delapan tipe data sederhana, yaitu:
byte, short, int, long, char, float, double dan Boolean.
Berikut ini adalah pembahasan masing-masing tipe
data :
int
int adalah tipe 32 bit bertanda yang memiliki rentang nilai
dari -2147483648 sampai 2147483647. tipe ini paling
banyak digunakan untuk menyimpan besaran integer
sederhana karena nilainya dapat mencapai trilyunan. Tipe
data int sangat baik digunakan untuk pertambahan array
dan pencacahan.
Contoh deklarasi variable int :
int i;
TIPE DATA DALAM JAVA
long
long adalah tipe data 64 bit bertanda yang memiliki rentang nilai
cukup besar. Ada beberapa kasus dimana int tidak cukup besar
untuk menampung nilai yang diinginkan. Ketika menghitung
pernyataan integer dengan bilangan yang cukup besar operasi
perkalian dapat menghasilkan bilangan ribuan trilyun. Jika
menggunakan int maka akan terjadi overflow karena data hanya
berukuran 32 bit. Oleh karena itu anda sebaiknya menggunakan tipe
long untuk mengolah data dengan kuantitas besar.
Contoh deklarasi long :
long m;
long n = 0x55aa000055aa0000;
double
double merupakan tipe data untuk bilangan pecahan dengan
ketelitian ganda karena tipe data ini memilili lebar 64 bit dengan
ketelitian 1.7E-308 sampai 1.7E+308.ketelitian ganda ini digunakan
untuk fungsi matematis transidental seperti sin, cos dan sqrt.
Contoh deklarasi double:
double d;
TIPE DATA DALAM JAVA
byte
byte adalah tipe 8 bit bertanda yang memiliki rentang nilai
dari -128 sampai 127. sebaiknya digunakan jika kita
menangani aliran aliran byte asing dari network atau file.
Variable byte dideklarasikan dengan kata kunci byte.
Contoh deklarasi variabel byte :
byte b;
byte c = 0x55;
short
short adalah tipe 16 bit bertanda yang memiliki rentang nilai
dari -32768 sampai 32767. Tipe ini mungkin merupakan tipe
yang paling jarang digunakan karena bersifat big-endian,
format data bit-atas di depan sehingga tidak mungkin diolah
ada mesin-mesin little-endian seperti PC.
Contoh deklarasi variabel short :
short a ;
TIPE DATA DALAM JAVA
karakter
Tipe integer terkecil di dalam Java adalah byte yang menyimpan besaran 8 bit. Java menggunakan Unicode untuk merepresentasikan karakter pada string, maka tipe char 16 bit tidak bertanda digunakan untuk menyimpan puluhan ribu karakter dari kumpulan karakter Unicode internasional. rentang nilai char ini adalah 0 sampai 65535. Tidak ada char negatif. Kumpulan
karakter standar yang dikenal sebagai ASCII hanya meliputi rentang nilai dari 0 sampai 127 dan memiliki pengembangan kumpulan karakter 8 bit, ISO latin dari 0 sampai 255.
Contoh deklarasi variable char : char c;
char c3 = 'a'; char c4 = '\n' ;
boolean
Java memiliki tipe data sederhana untuk besaran logika yang disebut Boolean. Tipe ini memiliki dua buah kemungkinan nilai yaitu true dan false, keduanya merupakan kata simpanan. Tipe inilah yang dikeluarkan oleh operator
perbandingan seperti (a < b).
Contoh deklarasi variable boolean : boolean done = false;
CONTOH PROGRAM
class SimpleType {
public static void main (String args[] ) { byte b=0x55; short s=0x55ff; int i = 1000000; long l = 0xffffffffL; char c = 'a'; double d = .00001234; boolean bool = true;
System.out.println("byte b = "+b); System.out.println("short s = "+s); System.out.println("int i = "+i); System.out.println("long l = "+l); System.out.println("char c = "+c); System.out.println("double d = "+d);
System.out.println("boolean bool = "+bool); }
}