Anda di halaman 1dari 17

Lab.

Common Computing– Universitas Trunojoyo Madura

Praktikum
Pengantar Algoritma
Pemrograman (ALPRO)
[MODUL]

Ganjil 2013/2014
Modul 1: Flowchart & PseudoCode
Tujuan Instruksi Khusus:
 Mahasiswa dapat memahami penggunaan standar diagram flowchart
 Mahasiswa dapat memahami penggunaan diagram flowchart untuk alur algoritma

Teori
1.1 Diagram Logika Flowchart

Untuk menggambarkan alur logika dalam komputasi digunakan standar dasar pemodelan
yaitu menggunakan flowchart. Flowchart menunjukkan aliran proses dari awal sampai
penyelesaian komputasi. Dalam standar yang lebih kompleks flowchart juga dapat dimodelkan
dalam Unified Modelling Language (UML) yaitu menggunakan diagram activity. Dimana
diagram activy adalah flowchart yang melibatkan berbagai interaksi pengguna ataupun domain
sistem.

Standar model flowchart,

Simbol Proses lojik

Menunjukkan tahapan berjalannya proses


Process komputasi

Menunjukkan subproses atau subrutin dari


Predefined
berjalannya proses, atau proses didalam
Process
proses

Menunjukkan langkah perulangan dari


Preparation aliran suatu proses

Menunjukkan alternatif pemilihan


Decision keputusan proses
Menunjukkan proses alternatif yang bisa
Alternate digunakan diluar proses normal

Menunjukan penundaan proses


Delay

Menunjukkan proses manual yang


Manual Operation dilakukan oleh pengguna

Simbol Koneksi
Menunjukkan arah dan hubungan antar
Flow proses

Menunjukkan akhir selesainya


Terminator keseluruhan proses

Menunjukkan hubungan antar bagian


Connector
proses yang terputus

Menunjukkan proses yang berbeda


Or

Menunjukkan campuran proses yang bisa


Sum berjalan bersamaan

Menunjukan penggabungan proses


Merge

Menunjukkan pemisahan
Extract
Simbol Input-Output
Memberikan parameter input dan
Data menghasilkan output (I/O)

Input manual
Manual Input

Menunjukkan tampilan di Layar


Display

Menunjukkan output dokumen manual


Document

1.2 Flowchart Algoritma


Untuk menunjukkan proses algoritma pemrograman sehingga mudah untuk dimengerti
dapat menggunakan standar flowchart.
Percabangan,
a

Percabangan
Y
Kondisi
Terpenuhi?

Aksi 1
T
Aksi lain

b
Contoh logika,
 Jika suhu panas pakailah T-Shirt berwarna cerah, Jika suhu dingin pakailah jaket
berwarna gelap.

Perulangan

Selama Kondisi

Aksi

Kondisi Terpenuhi Y

Contoh logika,
 Selama 10 jam belajarlah didepan laptop untuk menguasai pemrograman.
 Sejauh 10 langkah kedepan cobalah lihat kanan-kiri untuk mencari kunci motormu
yang hilang.
Contoh implementasi,
Dari masukan bilangan bulat 1..10 tentukan keluaran bilangan ganjil, dan genap.

Mulai

Masukan bilangan bulat input 1..10

Selama Kondisi input 1..10

input modulus 2 == 0 ? T

Masukkan daftar bilangan genap Masukkan daftar bilangan ganjil

Tampilkan bilangan genap Tampilkan bilangan ganjil

Input <= 10 ?

Selesai
1.3 PseudoCode
Pseudocode adalah metode penulisan bahasa inggris sederhana yang merepresentasikan
lojik algoritma pemrograman. Pseudo berarti tiruan, sedangkan Code adalah kode program
sehingga pseudocode bisa disebut sebagai kode tiruan dari program sebenarnya yang dituliskan
dalam standar bahasa inggris untuk mendekatkan dengan perintah-perintah yang terdapat pada
bahasa pemrograman.
Pada dasarnya struktur pseudocode hanya dibagi atas 6 perintah yaitu :
1. Sequence, memiliki cakupan perintah yang luas untuk perintah eksekusi proses,contoh
diantara kata kunci yang sering digunakan
 Input: READ, OBTAIN, GET
Contoh: READ height; READ Weights; OBTAIN range; GET radius
 Output: PRINT, DISPLAY, SHOW
 Perhitungan: COMPUTE, CALCULATE, DETERMINE
 Inisialisasi: SET, INIT
 Counter: INCREMENT, DECREMENT, DELAY
2. While, digunakan untuk menyatakan perulangan dengan pengujian kondisi diawal (*lebih
sesuai untuk perulangan tanpa batas yang tetap)
Contoh:
WHILE condition
Sequence
ENDWHILE
3. If-Then-Else, digunakan untuk menyatakan persyaratan lojik kebenaran atau disebut
BOOLEAN.
Contoh:
IF condition THEN
sequence 1
ELSE

sequence 2
ENDIF
4. Repeat-Until, digunakan untuk menyatakan perulangan dengan pengujian kondisi akhir.
Contoh:
REPEAT
Sequence
UNTIL condition
5. For, digunakan untuk menyatakan perulangan dengan batasan range sejumlah angka
tertentu.
Contoh:
FOR count=0 TO 10 DO
sequence
ENDFOR
6. Case, digunakan untuk pilihan kondisi tertentu,
Contoh:
CASE grade OF
“A” : points = 4
“B” : points = 3
“C” : points = 2
“D” : points = 1
“F” : points = 0
ENDCASE

*Aturan dasar Penulisan pseudocode:


 Lebih mudah gunakan huruf kapital untuk menyatakan fungsi atau prosedur
 Gunakan huruh kecil untuk penulisan variable

Contoh pseudocode untuk memasak Indomie Goreng:


BEGIN
SET flavour IN plate
OBTAIN pan WITH 1l OF water
SET pan IN stove
BURN-UP stove
DELAY 30 Seconds
SET indomie IN pan
FOR 1..5 MINUTE DO
STIR-UP indomie
ENDFOR
FILTER indomie AND water
SET indomie IN plate
REPEAT
MIX indomie AND flavour
UNTIL average
END

Instruksi Praktikum,
1. Pelajari teori terkait pembahasan, gunakan pemodelan sederhana dengan menggunakan
M. Word untuk membuat flowchart

Tugas Pendahuluan,
1. Jawablah Pertanyaan berikut terkait algoritma:
 Apa yang dimaksud persyaratan kondisi...?, apa perbedaan pada penggunaan
IF-THEN-ELSE dengan CASE. Ilustrasikan kondisi yang sesuai untuk
penggunaan kedua pseudocode tersebut.
 Apa yang dimaksud dengan perulangan, jelaskan perbedaan pada perulangan
dengan menggunakan WHILE, REPEAT-UNTIL dan FOR. Ilustrasikan
kondisi yang sesuai untuk penggunaannya.

Tugas Praktikum,
1. Buatlah Flowchart dan PseudoCode untuk algoritma deret faktorial sebagai berikut,
faktorial(5) = 1*2*3*4*5
2. Buatlah Flowchart dan PseudoCode untuk algoritma membuat Omlet Telur.
3. Buatlah Flowchart dan Pseudocode untuk proses disekeliling anda yang anda ketahui.
Tugas Tambahan,
1. Buatlah Flowchart dan PseudoCode untuk algoritma mengecek bilangan prima atau
bukan prima.
Modul 2: Pengantar Bahasa JAVA
Tujuan Instruksi Khusus:
 Mahasiswa dapat memahami penggunaan dasar bahasa pemrograman JAVA
 Mahasiswa dapat mentranslasikan flowcart dan pseudocode kedalam bahasa
pemrograman JAVA

Bahasa pemrograman yang dijadikan implementasi eksekusi algoritma dalam praktikum ini
adalah bahasa JAVA. Bahasa JAVA pada dasarnya adalah bahasa pemrograman berbasis obyek,
namun dalam praktikum ini penggunaan obyek diminimalisir.
Konsep dasar JAVA yang perlu dikuasai pada modul ini adalah:
1. Pengenalan Tipe Data
2. Lojik persyaratan dan perulangan
3. Fungsi dan Prosedur
Teori
1.1 Pengenalan Tipe Data

Tipe data merupakan jenis ukuran dan tipe dari register memori yang digunakan oleh variabel
untuk menyimpan nilai operan tertentu didalam program.

Bentuk dasar tipe data dibagi atas dua jenis yaitu:


1. Tipe data Primitif,
Tipe data Primitif mulai dikenal pada bahasa pemrograman prosedural seperti: Pascal, C,
atau Basic.
Dimana tipe data ini memiliki ukuran memori yang tetap dan pasti, diantaranya:
m
 Integer : byte (8 byte), short (16 b), int (32 b), long (64 b)
 Floating point: float (32 byte), double(64 b), decimal(128 b), bigDecimal(256
b)
 Booleans: boolean(1 bit)
 Characters: char(1 byte)

public class Primitif {


public
2. Tipe data static void main(String[] args)
komplek,
{ String s = "Hello Java, I Love You
Yang digunakan pada praktikum ini hanya koleksi array, matriks dan List. Array dan
............................................................
";
matriks adalah tipe data koleksi atau deret kelompok yang bersifat statis sedangkan List
char c = 'a';
bersifat dinamis.
int i = 1;
Array, double f =
0.5; double d
public =class
i/f; array {
System.out.println("Hasil
public static void main(String[] Bagi "+i+" : "+f+" = "+d);
} arg){ int index = 10;
int [] ary= new int[index];
ary[0] = 1;
ary[1] = 2;
ary[3] = 100;
System.out.println("Array indeks keempat menyimpan nilai
"+ary[3]);
}
}
Matriks,

public class Matriks {


List, public static void main(String[]
arg){ int bar = 10;
publicint kol Listi
class = 10;{
double
public [][]
static matrik
void = new double[bar]
main(String[] args)
[kol]; matrik[0][0]
{ List<Integer> l = new= 1;
matrik[0][1] = 0;
ArrayList(); l.add(1);
matrik[1][0]
l.add(2); = 0;
matrik[1][1]
l.add(1000); = 1;
} for (Integer i : l)
} { System.out.prin
t(i);
}
}
}
1.2 Lojik Percabangan dan Perulangan

Percabangan
Lojik percabangan digunakan untuk menentukan pilihan aliran program yang akan dieksekusi
sesusi dengan kondisi yang ditentukan. Terdapat dua kombinasi percabangan yaitu IF-THEN-
ELSE dan Switch-Case, contoh:

IF-THEN-ELSE
import
java.util.ArrayList;
import java.util.List;
public class percabangan {
public static void main(String[] args)
{ List<Integer> genap = new
ArrayList<>(); List<Integer> ganjil =
new ArrayList<>(); for(int i=0; i<=100;
i++){
if(i%2==0){
System.out.println("genap"
); genap.add(i);
}
else{
System.out.println("ganjil"
); ganjil.add(i);
}
}
System.out.println("Daftar bilangan genap:
"); for(Integer i:genap){
System.out.println(i+",");
}
System.out.println("Daftar bilangan ganjil:
"); for(Integer i:ganjil){
System.out.println(i+",");
}
}
}
Switch-Case
public class switchcase {
public static void main(String[] args)
{ int month = 6;
String
monthString;
switch (month) {
case 1: monthString = "January";
break;
case 2: monthString = "February";
break;
case 3: monthString = "March";
break;
case 4: monthString = "April";
break;
case 5: monthString = "May";
break;
case 6: monthString = "June";
break;
case 7: monthString = "July";
break; // etc etc
default: monthString = "Invalid
month"; break;
}
System.out.println(monthString);
}
}
Perulangan
Terdapat tiga perulangan yang dapat digunakan di JAVA yaitu: While, do..While, dan For.

While
public class whileloop {
public static void main(String args[])
{ int x = 10;

while( x < 20 )
{ System.out.print("value of x : " +
x ); x++;
System.out.print("\n");
}
}
}

Do-While
public class dowhile {
public static void main(String
args[]){ int x = 10;
do{
System.out.print("value of x : " +
x ); x++;
System.out.print("\n");
}while( x < 20 );
}
}
For
public class forloop {

public static void main(String args[])

{ for(int x = 10; x < 20; x = x+1) {


System.out.print("value of x : " +
x ); System.out.print("\n");
}
}
}

Instruksi Praktikum,
1. Pelajari teori terkait pembahasan, jalankan program contoh di Java IDE Netbeans

Tugas Pendahuluan,
1. Jawablah Pertanyaan berikut terkait penulisan bahasa java:
 Sintaks apa sebagai pembatas BEGIN-END di Java
 Apa perbedaan operator “=” dan”==” di JAVA
 Apa perbedaan FOR statis dan FOR dinamis
2. Buatlah translasi dari flowchart preparation&decision kedalam penulisan program bahasa
java
3. Apa yang dimaksud dengan koleksi, sebutkan dan jelaskan tipe data koleksi tersebut...!

Tugas Praktikum,
1. Buatlah program JAVA untuk algoritma deret faktorial sebagai berikut,
faktorial(5) = 1*2*3*4*5
faktorial(4) = 1*2*3*4
faktorial(3) = 1*2*3
2. Buatlah program interaksi dengan input dan output untuk algoritma membuat Omlet
Telur.
3. Buatlah program sebagaimana kasus pada modul 1 yang anda tentukan sendiri.
Tugas Tambahan,
1. Buatlah program untuk algoritma mengecek bilangan prima atau bukan prima.

Anda mungkin juga menyukai