Anda di halaman 1dari 12

1446T Algorithm and Programming

LECTURE NOTES

Introduction to Algorithm and Java


Programming

1446T Algorithm and Programming

LEARNING OUTCOMES
1. LO1: Describe the algorithm in problem solving
2. LO2: Explain the usefulness of java syntax

OUTLINE MATERI :
-

Algorithm and the characteristic

Programming language

Six basic operation

Expression of algorithm (Pseudocode and Flowchart)

Introduction to Java
o Java language specification and API
o Java Edition, JRE and JDK

Creating, compiling, and executing

Simple Java program

1446T Algorithm and Programming

ISI MATERI
Introduction to Algorithm
Pada pertemuan pertama ini kita akan mempelajari/mereview mengenai algoritma terlebih
dahulu sebelum masuk kedalam materi pokok matakuliah ini, yaitu Java. Apa itu algoritma?
Ketika Anda ingin melakukan sesuatu, Anda secara tidak langsung mengimplemetasikan
algoritma. Langkah-langkah yang Anda lakukan untuk mencapai suatu tujuan dapat
diterjemahkan menjadi sebuah algoritma. Contohnya adalah ketika Anda ingin makan, maka
Anda akan melakukan beberapa langkah secara terurut. Dimulai dari mengambil piring dan
sendok, kemudian Anda akan mengambil nasi dan menaruhnya kedalam piring Anda.
Dilanjutkan dengan menyendokkan nasi sesuap demi sesuap ke dalam mulut Anda, dan hal ini
dilakukan hingga nasi didalam piring Anda habis. Algoritma adalah sebuah kumpulan instruksi
yang terurut dan jelas serta rinci untuk mendeskripsikan proses untuk mencapai output yang
diinginkan dari input yang diberikan.

Contoh diatas menunjukkan sebuah algoritma untuk mengoperasikan kalkulator guna


menghitung hasil penjumlahan dari angka yang dimasukkan. Dimulai dari menyalakan
kalkulator, kemudian menekan tombol clear (C) untuk memastikan bahwa perhitungan dimulai
dari 0. Sebuah perulangan dimana instruksi yang diberikan adalah mengenai penginputan angkaangka yang ingin dijumlahkan. Langkah tersebut terdiri dari peng-entry-an jumlah dollar,
dilanjutkan dengan tanda desimal (.), jumlah cents, dan diakhiri dengan tanda plus (+) untuk
menjumlahkan. Setelah semua angka sudah dimasukkan, maka kalkulator tersebut akan

1446T Algorithm and Programming

menampilkan hasil penjumlahan tersebut. Pada akhirnya langkah akan berakhir dengan
mematikan kalkulator tersebut.
Sebuah algoritma pasti memiliki sebuah input dan ada output yang dituju. Selain itu algoritma
juga harus jelas terdefiniskan. Sebuah algoritma yang baik harus jelas, tepat dan tidak
membingungkan. Selain itu algoritma itu sendiri harus memberikan solusi yang benar untuk
seluruh kasus yang ada, dan tentutnya harus memiliki akhir.
Apa itu programming? Programming merupakan sebuah kreasi dari program yang dapat di
eksekusi oleh komputer dan memenuhi tujuan yang diinginkan dari program tersebut. Algoritma
yang sudah dibuat dapat diubah kedalam sebuah program dimana instruksi-instruksi tersebut
akan dijalankan oleh komputer. Tentunya, karena instruksi tersebut akan dieksekusi oleh
komputer, dan komputer tidak mengerti bahasa manusia, maka kita harus menggunakan bahasa
pemograman. Sebenarnya apa itu bahasa pemograman? bahasa pemograman dapat dikatakan
menyerupai bahasa inggris dimana pada level tingkat tinggi (high-level language), bahasa
tersebut lebih ke human language in English, sehingga mudah dipelajari dan memprogram.
Beberapa bahasa level tingkat tinggi yang cukup ternama adalah COBOL, FORTRAN, Pascal,
C, C++ dan Java (Bahasa pemograman yang dipelajari dalam matakuliah ini).
Algoritma yang Anda pikirkan dapat Anda tuangkan kedalam bentuk pseudocode dan flow chart
sebelum akhirnya Anda ubah kedalam bahasa pemograman yang Anda inginkan.
Pseudocode
Pseudocode merupakan rangkaian bahasa manusia sederhana yang singkat dan jelas sehingga
mudah dimengerti. Beberapa kata kunci yang digunakan untuk menerima input dan output dalam
sebuah pesudocode yaitu read, get, print, write, dll. Sedangkan flow chart banyak digunakan
oleh banyak programmer untuk mendesign sebuah algoritma. Bila pseudocode menggunakan
kata-kata untuk menggambarkan algoritma tersebut, flow chart menggunakan simbol-simbol dan
sedikit kata-kata untuk mengilustrasikan sebuah algoritma.

1446T Algorithm and Programming

Sebelum Anda memulai untuk mendesign algoritma, maka perlu Anda ketahui bahwa komputer
dapat mengoperasikan 6 operasi dasar yaitu:
1. Komputer dapat meminta inputan dari System/keyboard, ataupun membaca dari file.
2. Komputer dapat menghasilkan sebuah output dan menampilkannya ke layar monitor,
ataupun menuliskannya ke dalam sebuah file.
3. Komputer dapat melakukan operasi perulangan.
4. Komputer dapat melakukan operasi seleksi.
5. Komputer juga dapat membandingkan nilai dari dua buah variable.
6. Komputer dapat melakukan inisialisasi atau mengalokasikan sebuah nilai ke dalam
memori.

Berikut adalah contoh dari Pseudocode yang bertujuan untuk menelpon dan menentukan sebuah
bilangan bernilai ganjil atau genap.
Menelpon
BEGIN
Hold up the phone
WHILE not dial
Press dial button
WHILE not connected
Waiting dial
IF connected THEN
WHILE not finish
Talking
Hold down the phone
END

Menentukan_bilangan_ganjil_genap
BEGIN
Number = Input Number
Result = Number % 2
IF Result = 0
THEN Print The number is even
number
ELSE
THEN Print The number is odd
number
END

Untuk sebuah pesudocode selalu dimulai dengan keyword BEGIN dan untuk mengakhiri
digunakan keyword END. Berdasarkan pseudocode untuk menelpon, maka langkah pertama
adalah mengangkat ganggang telepon. Kemudian terdapat sebuah pengecekan kondisi disertai
dengan perulangan, dimana ketika telepon belum terdengar nada panggil maka tekan kembali
nomor panggilan. Tetapi bila sudah terdengar nada panggil maka terdapat pengecekan berikutnya
yaitu apakah telepon telah tersambung pada orang yang dituju. Bila belum maka akan dilakukan
perulangan yaitu menunggu hingga telepon tersambung ke orang yang dituju (diangkat). Bila

1446T Algorithm and Programming

sudah tersambung maka terdapat pengecekan dimana bila pembicaraan belum berakhir maka
teruskan berbicara. Pada akhirnya telepon ditutup kembali.
Untuk menentukan bilangan ganjil dan genap, digunakan perhitungan modulus (%) yaitu
mencari sisa dari hasil pembagian. Seperti yang kita ketahui bahwa sebuah bilangan dapat
dikategorikan sebagai bilangan ganjil bila terdapat hasil bagi antara bilangan tersebut dengan 2.
Maka

pada

pseudocode

Menentukan_bilangan_ganjil_genap,

tahap

pertama

adalah

menyimpan inputan dari user ke dalam variable Number. Kemudian menghitung sisa pembagian
dari bilangan tersebut, dimana hasilnya akan disimpan ke dalam variable Result. Bila sudah
mengetahui hasil Resultnya, maka langkah selanjutnya adalah pengecekan apakah hasil sisa
tersebut adalah 0 (bilangan genap) atau 1 (bilangan ganjil).
Flow Chart
Seperti yang sudah dibahas sebelumnya bahwa sebuah flow chart dapat menggambarkan
algoritma yang diilustrasikan dalam bentuk gambar. Kita perlu mengetahui symbol yang
digunakan dalam sebuah flow chart, yaitu sebagai berikut:

Setiap symbol tersebut mempunyai makna yang berbeda-beda. Berikut adalah penjelasan singkat
mengenai symbol tersebut:
1. Terminator digunakan untuk mengartikan kapan sebuah algoritma dimulai atau
dihentikan. Biasa kita gunakan untuk BEGIN dan END.
2. Flow line digunakan untuk memberikan arah aliran algoritma dan data yang ada.
(menghubungkan symbol yang satu dengan yang lainnya).

1446T Algorithm and Programming

3. Preparation: digunakan untuk persiapan seperti menginisialisasikan value, dll.


4. Process: Untuk menggambarkan sebuah proses.
5. Input/Output data: menggambarkan bahwa data tersebut adalah output / input.
6. Decision: digunakan untuk menunjukan sebuah seleksi.
7. On page connector: digunakan untuk menghubungkan/melanjutkan flow chart pada
halaman yang sama.
8. Off page connector: digunakan untuk menghubungkan/melanjutkan flow chart pada
halaman yang berbeda.
Berikut adalah contoh flow chart dari dua pesudocode diatas (menelpon dan menentukan ganjil
genap):

Introduction to Java
Pada mulanya Java dikembangkan oleh semua tim yang dipimpin oleh James Gosling dibawah
naungan Sun Microsystems. Pada tahun 1991, Java diberi nama Oak dan dikembangkan di area
embedded chips pada peralatan elektronik. Namun pada tahun 1995, nama Oak diganti menjadi
Java dan di design ulang kembali untuk membantu dalam pengembangan aplikasi internet. Java
menjadi popular saat ini dan tidak hanya mendukung apliasi Web Programming,tetapi juga untuk
mendukung pengembangan aplikasi stand-alone antar platform baik di server, desktops ataupun
mobile device.

1446T Algorithm and Programming

Komputer mempunyai aturan khusus dimana bila aturan tersebut tidak diikuti dalam menulis
sebuah program, maka computer tidak dapat menjalankan program tersebut karena tidak dapat
dimengerti oleh computer. Oleh karena itu, Java language specification muncul sebagai definisi
teknikal dari bahasa program tersebut yang terdiri dari sintaks dan semantic dari bahasa
pemograman Java. Java API terdiri dari kelas-kelas yang sudah didefinisikan dan interface untuk
membantu developer dalam melakukan pengembangan aplikasi. Spesifikasi bahasa pemograman
Java stabil sedangkan Java API masih terus diperkaya/dikembangkan.
Terdapat beberapa Java edition, yaitu Java Standard Edition (Java SE), Java Enterprise Edition
(Java EE) dan Java Micro Edition (Java ME). Banyak versi dari Java SE, yang paling akhir saat
ini adalah Java SE 7. Tetapi untuk sintaks dan fungsi yang akan dipelajari dalam matakuliah ini
adalah Java SE 6 dimana masih banyak digunakan oleh developer. Setiap versi dari Java SE
dirilis bersama dengan JDK (Java Development Toolkit). JDK adalah sebuah library, yang terdiri
dari set of program yang dibuat untuk mendukung pengembangan dan pengetesan sebuah
program Java. Selain JDk, dapat pula menggunakan Java development tools, seperti Eclipse,
NetBeans, atau TextPad. Untuk mengeksekusi program Java, diperlukan Java Runtime
Environment (JRE).
How Java Works
Ketika kita membuat sebuah program denganmenggunakan bahasa Java, maka kita tentu akan
mempunya sebuah file dengan extension .java (yaitu source code kita). Komputer tidak dapat
mengerti bahasa pemograman secara langsung, maka bahasa Java tersebut perlu diubah menjadi
byte code agar dapat dibaca oleh Java Virtual Machine (JVM). Proses perubahan dari Java
source code ke bentuk byte code disebut compile. Java merupakan high-level language,
sedangkan bytecode termasuk dalam low-level language. Di dalam java, terdapat Java Compiler
yang ditugaskan untuk menghasilkan Java bytecode. Extension untuk java bytecode yang
dihasilkan adalah .class. File bytecode tersebut yang kemudian dieksekusi oleh JVM untuk
menghasilkan output dari program yang anda buat.

1446T Algorithm and Programming

Creating, Compiling and Executing

Gambar diatas merupakan ilustrasi dari proses penulisan program sehingga dihasilkan output
yang diinginkan. Tahapan dimulai dari proses penulisan program. Program yang telah dibuat
akan disimpan ke dalam disk Anda. Ketika program Anda di compile oleh Java compiler (javac),
maka javac akan menghasilkan bytecode yang secara otomatis juga tersimpan didalam disk
Anda. Bila terjadi kesalahan pada proses kompilasi, maka Anda perlu memodifikasi ulang
program Anda. Kesalahan yang dapat membuat kompilasi error misalnya adalah penulisan
sintaks yang salah. Anda perlu membenarkan kesalahan tersebut dan kemudian mengkompilasi
ulang program Anda. Setelah itu bytecode akan di eksekusi oleh JVM sehingga menghasilkan
output yang diinginkan. Bila terjadi kesalahan pada saat runtime (runtime error), maka Anda
perlu kembali ke tahap pertama yaitu memodifkasi ulang program Anda. Contoh kesalahan yang
menyebabkan runtime error adalah kesalahan logic. Misalnya Anda membagi sebuah angka
dengan 0.

1446T Algorithm and Programming

Simple Code Example

Gambar diatas adalah contoh dari program Java sederhana yang hanya mencetak tulisan
Welcome to Java. Sintaks yang digunakan untuk mencetak adalah System.out.println. Struktur
dari program Java terdiri dari kelas dan fungsi Utama. Penamaan kelas harus sama dengan nama
file yang dibuat. Kemudian untuk menuliskan komentar dapat menggunakan tanda //. Semua
kata yang dibuat sebagai komentar tidak akan dieksekusi. Untuk lebih jelasnya mengenai
pengembangan program dalam bahasa Java akan dibahas pada pertemuan selanjutnya.

1446T Algorithm and Programming

SIMPULAN
1. Sebuah algoritma dapat dituangkan dalam bentuk pseudocode atau flow chart.
2. Java adalah bahasa pemograman yang tidak bergantung pada sebuah platform, Anda
hanya perlu menulis program sekali dan menjalankannya dimana saja.
3. Java source file dengan extension file .java.
4. Sebuah compiler adalah program software yang menerjemahkan bahasa pemograman
Java ke dalam bentuk bahasa mesin (bytecode).
5. JVM akan mengeksekusi bytecode yang dihasilkan oleh compiler.
6. Proses pengembangan program dilakukan melalui 3 tahap utama, penulisan/modifikasi
program, kompilasi dan eksekusi program.

1446T Algorithm and Programming

DAFTAR PUSTAKA

Daniel Liang, Y., 2011, Introduction to java programming, vol.08, Pearson Education,
New Jersey. Chapter 1.
Lesley Anne Robertson, 2006, Simple program design : a step by step approach, Vol.05,
Course Technology.

Anda mungkin juga menyukai