Anda di halaman 1dari 18

LECTURE NOTES

COMP6598
Introduction to Programming

Minggu 1
Sesi 2

Pengenalan Algoritma

COMP6598–Introduction to Programming
LEARNING OUTCOMES

1. LO1 : Peserta diharapkan dapat merancang dan menerapkan algoritma yang tepat dalam
menyelesaikan permasalahan

OUTLINE MATERI(Sub-Topic):

1. Definisi Algoritma

2. Bahasa Pemrograman

3. Penggambaran / Ekspresi dari Algoritma

a. Pseudocode

b. Flowchart

c. NS Diagram

4. Pengenalan IDE dan Java

5. Create , Compile and Execute

COMP6598–Introduction to Programming
ISI MATERI
Algoritma

Algoritma merupakan bagian penting dari sebuah pemrograman, dimana algoritma


mengambarkan alur bagaimana program tersebut akan berfungsi. Algoritma merupakan satu
rangkaian instruksi yang jelas, dan terurut untuk mengambarkan proses menghasilkan output
dari input yang disediakan. Algoritma mencerminkan logika pada sistem yang dirancang.
Perancangan algoritma dari sebuah sistem akan didasarkan dari proses bisnis yang sedang
dikembangkan menjadi sistem yang terkomputerisasi.

Algoritma itu sendiri biasanya menjadi alat bantu dalam pengembangan program
maupun sistem. Algoritma ini membantu menjamin bahwa sistem yang dikembangkan sesuai
dengan pembahasan dan alur kerja yang diinginkan. Tak heran di setiap perusahaan
Konsultan IT pasti selalu identik dengan nama algoritma karena ini merupakan inti dari IT.
Algoritma itu sendiri juga merupakan pencerminan dari proses bisnis dan alur kerja sistem
yang ingin dikembangkan dalam struktur yang lebih detail sehingga membantu pengembang
dalam memahami alur detail dari cara kerja sistem yang akan dikembangkan.

Algoritma yang baik diharapkan memiliki lima karakteristik, yaitu memiliki input
(masukan), menghasilkan output (keluaran), jelas, memiliki akhir dan efektif.

Contoh Algoritma perhitungan harga total pada proses pembelian (Pseudocode) :

Mulai

Jika Pelanggan telah terdaftar maka,

Masukkan Nomor Pelanggan

Selesai proses seleksi

Lakukan

Masukkan kode barang

Masukkan kuantitas barang

COMP6598–Introduction to Programming
Ulangi sampai data barang selesai dimasukkan

Hitung Total Harga = Jumlah Semua (Harga Barang x Kuantitas)

Jika pelanggan telah terdaftar

Hitung Diskon = 5% x Total Harga

Selain itu,

Hitung Diskon = 0

Selesai Proses Seleksi

Hitung Grand Total = Total Harga – Diskon

Cetak Grand Total

Akhiri

Bahasa Pemrograman

Komputer tidak dapat memahami bahasa manusia, jadi untuk dapat membuat komputer
mengerjakan apa yang kita inginkan maka dibutuhkan program yang dituliskan dalam bahasa
yang dapat dimengerti oleh komputer. Terdapat tiga tingkat bahasa pemrograman yaitu :

1. Bahasa Mesin (Machine Language) : bahasa pada level ini terdiri dari kode biner yaitu
0 dan 1. Sebagai contoh apabila ingin menjumlahkan dua buah bilangan bisa saja yang
ditulis sebagai berikut: 1101101010011010

2. Bahasa Tingkat Rendah / Rakitan (Low Level Language / Assembly Language) :


bahasa ini diciptakan sebagai alternatif dari bahasa mesin yang sulit dipahami oleh
manusia. Pada saat bahasa ini ditulis maka diperlukan program tambahan bernama
assembler yang akan menerjemahkannya ke dalam bahasa mesin. Contoh apabila ingin
menjumlahkan dua bilangan : add 2,3, result

3. Bahasa Tingkat Tinggi (High Level Language) : bahasa ini yang paling banyak
digunakan saat ini dikarenakan lebih mudah dipahami oleh manusia. Bahasa yang

COMP6598–Introduction to Programming
ditulis pada level ini ditulis disebut sebagai source code, dikarenakan komputer tidak
memahami bahasa tersebut maka program tambahan yang disebut compiler
dibutuhkan. Adapun beberapa jenis bahasa pemrograman yang masuk level ini adalah
C, C++, C#, FORTRAN, COBOL, Java, dll.

Beberapa hal yang harus diperhatikan dalam mengaplikasikan bahasa pemrograman pada
komputer adalah :

 Kompatibilitas bahasa pemrograman pada sistem operasi komputer.


 Jenis ukuran bit pada installer compiler dan text editor dari bahasa pemrograman
dibandingkan dengan bit pada system operasi komputer.
 Kompatibilitas spesifikasi hardware dan paket instalasi dari bahasa pemrograman

Hal – hal diatas mempengaruhi kinerja dan stabilitas dari bahasa pemrograman pada saat
pembuatan aplikasi.Berikut merupakan beberapa contoh bahasa pemrograman :

 Bahasa Pemrograman yang mendukung pengembangan aplikasi desktop :


o C++,
o Java,
o C#,
o Delphi,
o Fortran,
o dst.
 Bahasa pemrograman yang mendukung pengembangan aplikasi web :
o ASP.Net,
o PHP,
o JSP,
o Servlet,
o Dst.

Secara garis besar bahasa pemrograman dibedakan dari segi pengembangan, yakni
Desktop dan Web. Dikarenakan kondisi dari kedua sistem yang dikembangkan pun berbeda
maka proses dan alur serta cara pembuatan pun menjadi berbeda. Namun untuk pemrograman
Web dibutuhkan dua jenis bahasa, yakni server side code (bahasa pemrograman pada server

COMP6598–Introduction to Programming
dimana mengacu pada pengolahan transaksi pada data base dan logika sistem) dan client side
code (bahasa pemrograman pada klien dimana mengacu pada proses logika tampilan dari
sistem yang akan dikembangkan).

Secara garis besar dapat digambarkan bahwa :

Algoritma + Bahasa Pemrograman = Sistem Terkomputerisasi

Penggambaran / Ekspresi Algoritma

Bentuk penggambaran atau ekspresi dari algoritma dapat diwujudkan dalam 3 bentuk, yakni:

1. Flowchart
Flowchart merupakan bentuk penggambaran algoritma dalam bentuk diagram alur.
Pada penggambaran dengan teknik ini proses bisnis yang akan di buat sistemnya akan
digambarkan secara detail baik dari input, proses, maupun output.
Berikut merupakan beberapa symbol yang akan dipakai pada pembuatan flowchart
pada umumnya

.
 Simbol Terminator digunakan untuk memulai atau mengakhiri flowchart
 Simbol Flowline digunakan untuk aliran proses
 Simbol Preparation digunakan untuk inisialisasi ataupun pemberian nilai awal
 Simbol Proses digunakan untuk aktifitas / proses
 Simbol Input / Output digunakan untuk menerima input ataupun menghasilkan
output
 Simbol Decision digunakan apabila ada alternatif yang harus dipilih.

COMP6598–Introduction to Programming
 Simbol On Page Connector, digunakan apabila dibutuhkan sambungan ke
bagian lain tetapi masih berada dalam satu halaman
 Simbol Off Page Connector, digunakan apabila dibutuhkan sambungan ke
bagian lain dalam halaman terpisah.

Menurut Sterneckert (2003), pembuatan model diagram berbasis flowchart


dikembangkan sesuai dengan model perspektif pemakai (manajer, sistemanalis, maupun
pengguna sistem) yang diwujudkan dalam 4 jenis diagram sebagai berikut.
o Diagram Alir Dokumen, menunjukkan control sebuah system aliran dokumen.
o Diagram Alir Data, menunjukkan control dari sebuah system aliran data.
o Diagram Alir Sistem, menunjukkan control dari sebuah system aliran secara
fisik.
o Diagram Alir Program, menunjukkan control dari sebuah program dalam
sebuah sistem.

Berikut ini adalah contoh Flowchart untuk perhitungan harga pembelian :

Mulai

Terdaftar
Nomor sebagai
Ya
Pelanggan Pelanggan?

Tidak

Data Barang
Tidak
Masih Ada?

Ya

Kode
Hitung Total
Barang &
Harga
Kuntatitas

Set Diskon =
Ada Nomor
Ya 0.05 x Total
Pelanggan?
Harga

Tidak

Tampilkan
Hitung Grand
Set Diskon = 0 Grand Akhiri
Total Pembelian
Total

COMP6598–Introduction to Programming
2. Pseudocode
Pseudocode merupakan bentuk penggambaran algoritma dalam bentuk kode-kode /
kata-kata formal yang dapat dengan mudah dimengerti. Pseudocode dimaksudkan
untuk menyusun kerangka proses kerja program ke dalam kata – kata yang dapat
dengan lebih mudah dipahami dan menggambarkan alur kerja program tersebut.

Pada umumnya pseudocode dapat dibuat menggunakan bahasa Inggris dengan


beberapa kata kunci sebagai berikut.
o Begin, yang berarti mulai menyatakan proses mulai dijalankan.
o End, yang berarti akhiri menyatakan akhir dari proses yang digambarkan.
o While, yang berarti sementara/selama dan digunakan dalam perulangan
o Repeat – Until,yang berarti ulangi – sampai yang juga digunakan dalam
perulangan.
o Do – While, yang berarti lakukan selamajuga digunakan dalam perulangan.
o Input/Read/Get, yang berarti mengambil data masukkan dari pengguna
o Write / Output/Display, yang berarti menampilkan hasil data.
o Set, yang berarti membuat sebuah variabel konstan dengan nilai tertentu
o IF … Then & Else, yang berarti jika – maka dan selain itu digunakan dalam
membuat sebuah kerangka dimana proses didalamnya terbagi dua.

Contoh :
Begin
Input kode
If kode Equal with 0 Then
Print “Mendapatkan Voucher Belanja”
Else If kode Equal with 1 then
Print “Mendapatkan Discount 50%”
Else
Print “Mendapatkan Souvenir”
End If
End If
End

COMP6598–Introduction to Programming
Contoh2 :
Begin
Input angka
Set temp to zero
While temp less than angka Do
Print Angka
Temp = temp + 1
End While
End

Pada pseudocode untuk mencetak / menampilkan nilai dari variabel maka akan
dicetak tanpa menggunakan tanda kutip (“), namun apabila ingin mencetak karakter
maka perlu menggunakan tanda kutip. Misal :
Begin
Set angka = 10
Print “angka = “ + angka
End

Output :
Angka = 10

Pada penerapannya pseudocode tidak memiliki batasan bahasa sehingga dapat dibuat
pseudocode dengan menggunakan bahasa Indonesia. Pseudocode itu sendiri
menerapkan struktur sintaksis dari bahasa pemrograman seperti bahasa pemrograman
C, namun dengan bahasa yang dapat lebih mudah dimengerti.

3. NS Diagram
NS Diagram atau lebih dikenal dengan Nassi-Shneiderman Diagram atau juga biasa
disebut sebagai Structogram merupakan sebuah diagram yang menggambarkan /
mengekspresikan algoritma ke dalam suatu diagram terstruktur namun dalam satu
lingkup terbatas sehingga dibuat dalam satu kotak. NS Diagram sendiri ditujukan
untuk fokus pengembangan dengan metode Top – Down Structured dimana sistem
secara umum dispesifikasikan terlebih dahulu kemudian dilanjutkan dengan

COMP6598–Introduction to Programming
menspesifikasi detail proses didalamnya. Cara kerja ini merupakan cara kerja yang
sama dengan flowchart maupun pseudocode.

Berikut merupakan bentuk dari NS Diagram


Bentuk Struktur Keterangan

Merupakan bentuk dari struktur IF Then


– Else pada NS Diagram dimana symbol
‘?’ menyatakan pertanyaan kondisi,
kolom ‘T’ merupakan bagian dari
statement yang akan dilakukan jika
kondisi terpenuhi (benar), dan kolom ‘F’
merupakan bagian dari statement yang
akan dilakukan apabila kondisi tidak
terpenuhi.

Merupakan bentuk dari Do – While


(sama dengan bentuk While pada
flowchart) dimana Do While Condition
merupakan pertanyaan kondisi selama
kondisi terpenuhi maka akan dijalankan
proses while.

Merupakan bentuk dari Do – Until (Sama


dengan bentuk Repeat Until pada
flowchart) dimana dilakukan proses until
dulu lalu diikuti dengan pengecekan
kondisi, apabila kondisi masih terpenuhi
maka proses until akan kembali
dijalankan.

COMP6598–Introduction to Programming
Contoh penerapan NS Diagram pada sistem penggajian :

Mengapa perlu menggambarkan algoritma?

Pola kerja di bidang IT selalu identik dengan pembentukan sebuah kelompok (Team Work)
untuk setiap proyek dimana kelompok tersebut terdiri dari proyek manager, sistem analis, dan
beberapa orang pembuat program.

Pada umumnya yang akan melakukan analisa sistem adalah Sistem Analis dan untuk
meyakinkan bahwa sistem yang dirancang sesuai dengan proses bisnis yang diminta maka
sistem analis akan merancang perwujudan proses bisnis dalam bentuk penggambaran
algoritma baik berupa flowchart, DAD, workflow, maupun lainnya.

Hal ini untuk meyakinkan sistem analis dan mengarahkan Software Developer dalam
mengembangkan sistem tersebut sehingga sistem yang dikembangkan memiliki alur yang

COMP6598–Introduction to Programming
Sama seperti yang dirancang diawal. Selain itu, hal ini juga bisa membantu dalam penjelasan
kepada klien yang ingin mengetahui secara detail kerja program yang baru. Dari penjelasan
diatas dapat dilihat betapa pentingnya penggambaran / pengekspresian algoritma dari sistem
ke dalam bentuk lain sebagai sarana komunikasi dan pengarahan yang efisien dalam
memastikan sistem yang dikembangkan berada pada jalur yang benar.

Bahasa Pemrograman Java

Bahasa pemrograman mempunya aturan dan standar yang harus dipenuhi. Apabila penulisan
sebuah program tidak sesuai maka program tersebut tidak dapat dijalankan oleh komputer.
Standar bahasa pemrograman Java ditentukan oleh Java Language Specification dan Java
API (Application Program Interface) . Java Language Specification merupakan definisi
teknikal dari syntax dan semantik bahasa pemrograman Java. Application Program Interface
yang biasa dikenal dengan istilah library terdiri dari kumpulan class dan interface yang telah
didefinisikan sebelumnya untuk pembuatan program Java.

IDE

Integrated Development Environment (IDE) merupakan perangkat – perangkat lunak


yang perlu dipasang sebagai persyaratan kelengkapan perangkat pengembang aplikasi. Ketika
memasang IDE di komputer maka secara langsung akan terpasang perangkat berupa
compiler, interpreter, dan library dasar bahasa tersebut. Pada umumnya IDE akan langsung
terpasang sepaket dengan Text Editor yang sesuai dengan bahasa pemrograman tertentu.
Beberapa contoh IDE adalah.

 Netbeans

Ketika memasang Netbeans maka semua perangkat yang diperlukan sudah berada
sepaket dengan Netbeans seperti JDK, JRE, dan Text Editor sehingga dengan
memasang Netbeans di komputer maka program dengan bahasa Java dapat
dikembangkan.

COMP6598–Introduction to Programming
 Borland C, Turbo C, Dev C++

Ketiga IDE ini merupakan IDE untuk bahasa C dan C++ dimana ketika memasang
IDE ini maka compilerdan library akan turut terpasang dari bahasa pemrograman
tersebut akan disimpan.

 Visual Studio

Visual Studio adalah IDE untuk bahasa pemrograman berbasis .Net (C#, VB.Net,
ASP.Net, C, C++, F#, dan J# serta SQL Server) ketika memasang IDE ini maka baik
compiler, library, database management system, dan perangkat pendukung lainnya
akan turut terpasang.

Java

Java merupakan bahasa pemrograman berbasis objek yang dimana strukturnya sudah
murni dalam basis orientasi objek. Java dikembangkan dengan nama Oak dan kemudian
berganti nama menjadi Java. Java merupakan bahasa interpreter yang mana bahasa Java tidak
langsung dijalankan begitu saja dari file source code-nya namun perlu ditranslasikan terlebih
dahulu. Namun oleh karena itu java menjadi salah satu bahasa yang dapat berjalan di semua
platform sistem operasi komputer (Run in Over Platform).

File .Java Java Compiler Java Bytecode Java Virtual Machine Executed Apps

Berikut merupakan gambar bagan isi dari JDK (Java Development Toolkit) dan JRE
(Java Runtime Environment).

COMP6598–Introduction to Programming
Ketika memasang IDE ada beberapa perangkat penting yang menjadi bagian dari IDE
Java, yakni :

 JDK (Java Development Toolkit)


o Java Language
Berisi struktur sintaks dari Java
o Java API
Berisi library dasar pada bahasa pemrograman Java
o JRE (Java Runtime Environment)
 JVM (Java Virtual Machine)

Pada umumnya JDK diperlukan untuk pemasangan oleh pihak pengembang dikarenakan
dalam JDK terdapat struktur sintaks (Java Language) dan Java API (Java Application
Interface) yang memungkinkan pembuatan program berbasis Java. Sedangkan pada komputer
klien cukup dipasang JRE saja karena hanya berfokus untuk menjalankan aplikasi Java
tersebut.

JVM merupakan salah satu bagian penting dari Java dimana JVM memungkinkan file
bytecode (.class) pada Java di eksekusi. Sedangkan Java API merupakan bagian dari JDK
yang berisi library dari kelas – kelas yang telah didefinisikan dan interface yang
memungkinkan pengembangan dengan bahasa Java. Java Language sendiri berisi struktur
penulisan Java serta struktur sintaks dan semantic dari bahasa Java.

COMP6598–Introduction to Programming
Create, Compile, dan Execute

Create/Modify Source Code


Source code (developed by the programmer)

public class Welcome {


Public static void main(String [] args) Save on
{ the disk
System.out.println(“Welcome to Java!”); Source Code
}
}

Compile Source Code


Bytecode (generated by the compiler for JVM to read and e.g., javac Welcome.java
interpret, not for you to understand)
If compilation errors

Method Welcome()
0 aload_0
Stored in
… the disk
Method void main(java.lang.String[]) Bytecode If runtime
0 getstatic #2 … errors or
3 ldc #3 <String “Welcome to Java!”> Incorrect
5 invokevirtual #4 result
8 return
Run Bytecode
e.g., java Welcome

Result

COMP6598–Introduction to Programming
Pada proses tahapan create, compile dan executeakan dilakukan proses sebagai berikut.

1. Membuat file Java yang berisi source code program (create)


2. File yang disimpan tersebut akan diberi ekstensi .java agar dikenali sebagai file
pemrograman java.
3. Ketika source code di-compile maka yang akan berperan adalah Java Compiler
(javac) akan mengubah file source code (.java) tersebut ke dalam compiled code
(bytecode) dengan ekstensi .class file tersebut pada umumnya akan disimpan pada
folder yang sama dengan file .java (pada Textpad) atau pada file proyek (pada
Netbeans). Namun apabila terdapat error pada saat kompilasi (compile) maka Java
Compiler akan mengembalikan proses kepada bagian text editor dan memberikan
respon balik berupa error dari program (Compile Time Error).
4. Setelah selesai proses kompilasi maka akan dilanjutkan dengan proses eksekusi
(Execute) proses ini akan dikelola oleh JVM yang akan mengubah file .class menjadi
aplikasi yang dapat dijalankan. Namun jika terdapat error, maka JVM akan
mengembalikan proses kepada text editor dengan memberikan pesan error (Runtime
Error).

Platform pada Java

Platform pada Java terbagi menjadi 3 jenis, yakni :

1. Java Standard Edition (J2SE)


Pada edisi ini memungkinkan pengembang untuk mengembangkan aplikasi desktop
berbasis Java maupun Web.
2. Java Micro Edition (J2ME)
Pada edisi ini memungkinkan pengembang untuk mengembangkan aplikasi mobile
atau pun embedded berbasis Java.
3. Java Enterprise Edition (J2EE)
Pada edisi ini sama dengan edisi Java Standard Edition hanya saja memberikan
kemungkinan untuk pengembangan yang lebih efisien pada sisi enterprise dengan
adanya strukturisasi yang lebih baik.

COMP6598–Introduction to Programming
SIMPULAN

Algoritma merupakan suatu struktur tahapan penyelesaian masalah. Algoritma


digunakan dalam membantu mengolah permasalahan proses bisnis dari sistem yang akan
dikembangkan maupun penggambaran dari sistem yang sedang berjalan. Algoritma
digunakan sebagai sarana dokumentasi agar menjamin bahwa pemahaman yang dimiliki oleh
pihak pengembang maupun klien dalam alur yang sama dan benar serta membantu dalam
mengarahkan pembuatan program.

Bahasa Pemrograman merupakan bahasa perantara antara manusia dan komputer


yang digunakan untuk tujuan pengembangan program. Bahasa pemrograman terbagi atas 2
cakupan besar yakni, berbasis desktop maupun berbasis web. Pengaplikasian bahasa
pemrograman membutuhkan penyesuaian khusus dari komputer yang menerapkan dan juga
masing – masing bahasa pemrograman mempunyai struktur tersendiri dalam pembuatannya.

Bentuk penggambaran dari algoritma dapat diwujudkan ke dalam 3 bentuk umum,


yakni Flowchart, Pseudocode, dan NS Diagram. Ketiga – tiganya berperan dalam
menggambarkan algoritma ke dalam suatu struktur tertentu dan membantu pengembangan
dengan metode Top – Down Structured.

Bahasa Pemrograman Java merupakan bahasa pemrograman berbasiskan Object


Oriented. Selain itu Java adalah platform independent yang berarti bahwa sekali program
ditulis dan dijalankan di komputer mana saja. Nama File harus sesuai dengan nama public
class yang ada di program Java dan harus disimpan dengan ekstensi .java.

COMP6598–Introduction to Programming
DAFTAR PUSTAKA

1. Alan B. Sterneckert, (2003), Critical Incident Management 5 Ed. CRC Press.


NorthWestern, USA.
2. Lesley Anne Robertson, 2006, Simple program design : a step by step approach,
Vol.05, Course Technology. Chapter 1 and 2.
3. Y. Daniel Liang. (2013). Introduction to Java Programming : Comprehensive Version.
International Edition. 09. Pearson Education. New Jersey.
4. https://www.cs.umd.edu/hcil/members/bshneiderman/nsd/Yoder-Schrag-
nassi_schart.pdf
5. https://en.wikipedia.org/wiki/Nassi%E2%80%93Shneiderman_diagram
6. https://id.wikipedia.org/wiki/Diagram_alir
7. http://www.cosc.canterbury.ac.nz/tim.bell/dt/Tutorial_Pseudocode.pdf

COMP6598–Introduction to Programming

Anda mungkin juga menyukai