SlideShare uma empresa Scribd logo
1 de 17
Baixar para ler offline
Lab. Common Computing– Universitas Trunojoyo Madura
Ganjil
2013/2014
Praktikum
Pengantar Algoritma
Pemrograman (ALPRO)
[MODUL]
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
Process
Menunjukkan tahapan berjalannya proses
komputasi
Predefined
Process
Menunjukkan subproses atau subrutin dari
berjalannya proses, atau proses didalam
proses
Preparation
Menunjukkan langkah perulangan dari
aliran suatu proses
Decision
Menunjukkan alternatif pemilihan
keputusan proses
Alternate
Menunjukkan proses alternatif yang bisa
digunakan diluar proses normal
Delay
Menunjukan penundaan proses
Manual Operation
Menunjukkan proses manual yang
dilakukan oleh pengguna
Simbol Koneksi
Flow
Menunjukkan arah dan hubungan antar
proses
Terminator
Menunjukkan akhir selesainya
keseluruhan proses
Connector
Menunjukkan hubungan antar bagian
proses yang terputus
Or
Menunjukkan proses yang berbeda
Sum
Menunjukkan campuran proses yang bisa
berjalan bersamaan
Merge
Menunjukan penggabungan proses
Extract
Menunjukkan pemisahan
Simbol Input-Output
Data
Memberikan parameter input dan
menghasilkan output (I/O)
Manual Input
Input manual
Display
Menunjukkan tampilan di Layar
Document
Menunjukkan output dokumen manual
1.2 Flowchart Algoritma
Untuk menunjukkan proses algoritma pemrograman sehingga mudah untuk dimengerti
dapat menggunakan standar flowchart.
Percabangan,
Percabangan
Kondisi
Terpenuhi?
Aksi 1
Aksi lain
Y
T
a
b
Contoh logika,
 Jika suhu panas pakailah T-Shirt berwarna cerah, Jika suhu dingin pakailah jaket
berwarna gelap.
Perulangan
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.
Kondisi
Terpenuhi
?
Aksi
Y
T
Selama
Kondisi
b
c
Contoh implementasi,
Dari masukan bilangan bulat 1..10 tentukan keluaran bilangan ganjil, dan genap.
Mulai
Masukan bilangan bulat
input 1..10
input modulus
2 == 0 ?
Masukkan daftar
bilangan genap
Y
T
Selama Kondisi
input 1..10
Input <= 10 ?
Tampilkan
bilangan genap
Tampilkan
bilangan ganjil
Masukkan daftar
bilangan ganjil
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)
2. Tipe data komplek,
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
bersifat dinamis.
Array,
public class array {
public static void main(String[] 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]);
}
}
public class Primitif {
public static void main(String[] args) {
String s = "Hello Java, I Love You ....";
char c = 'a';
int i = 1;
double f = 0.5;
double d = i/f;
System.out.println("Hasil Bagi "+i+" : "+f+" = "+d);
}
}
Matriks,
List,
public class Listi {
public static void main(String[] args) {
List<Integer> l = new ArrayList();
l.add(1);
l.add(2);
l.add(1000);
for (Integer i : l) {
System.out.print(i);
}
}
}
public class Matriks {
public static void main(String[] arg){
int bar = 10;
int kol = 10;
double [][] matrik = new double[bar][kol];
matrik[0][0] = 1;
matrik[0][1] = 0;
matrik[1][0] = 0;
matrik[1][1] = 1;
}
}
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
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 );
}
}
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");
}
}
}
For
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.
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");
}
}
}
Tugas Tambahan,
1. Buatlah program untuk algoritma mengecek bilangan prima atau bukan prima.

Mais conteúdo relacionado

Mais procurados

Laporan praktikum modul ii & iii
Laporan praktikum modul ii & iiiLaporan praktikum modul ii & iii
Laporan praktikum modul ii & iiiDevi Apriansyah
 
Algoritma dan Struktur Data (Python) - Struktur I/O
Algoritma dan Struktur Data (Python) - Struktur I/OAlgoritma dan Struktur Data (Python) - Struktur I/O
Algoritma dan Struktur Data (Python) - Struktur I/OAndiNurkholis1
 
Pengulangan for Algoritma
Pengulangan for AlgoritmaPengulangan for Algoritma
Pengulangan for Algoritmacasnadi
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 13
Laporan praktikum Algoritma dan Pemrograman pertemuan 13Laporan praktikum Algoritma dan Pemrograman pertemuan 13
Laporan praktikum Algoritma dan Pemrograman pertemuan 13Ekha Cahya Nugraha
 
Modul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaModul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaRakhmat Dedi Gunawan
 
modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)Reza Pramana
 
Romi oop-02-javafundamentals-29agustus2010
Romi oop-02-javafundamentals-29agustus2010Romi oop-02-javafundamentals-29agustus2010
Romi oop-02-javafundamentals-29agustus2010SabilaAulia
 
Tipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaTipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaAs Faizin
 
Algoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAlgoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAndiNurkholis1
 
Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IIShofura Kamal
 
Dasar pemrograman-python
Dasar pemrograman-pythonDasar pemrograman-python
Dasar pemrograman-pythonnamasaja
 
Jeni Intro2 Bab03 Teknik Pemrograman Lanjut
Jeni Intro2 Bab03 Teknik Pemrograman LanjutJeni Intro2 Bab03 Teknik Pemrograman Lanjut
Jeni Intro2 Bab03 Teknik Pemrograman LanjutIndividual Consultants
 

Mais procurados (18)

Laporan praktikum modul ii & iii
Laporan praktikum modul ii & iiiLaporan praktikum modul ii & iii
Laporan praktikum modul ii & iii
 
Algoritma dan Struktur Data (Python) - Struktur I/O
Algoritma dan Struktur Data (Python) - Struktur I/OAlgoritma dan Struktur Data (Python) - Struktur I/O
Algoritma dan Struktur Data (Python) - Struktur I/O
 
Pengulangan for Algoritma
Pengulangan for AlgoritmaPengulangan for Algoritma
Pengulangan for Algoritma
 
Perulangan for
Perulangan forPerulangan for
Perulangan for
 
Laporan praktikum Algoritma dan Pemrograman pertemuan 13
Laporan praktikum Algoritma dan Pemrograman pertemuan 13Laporan praktikum Algoritma dan Pemrograman pertemuan 13
Laporan praktikum Algoritma dan Pemrograman pertemuan 13
 
Modul pd
Modul pdModul pd
Modul pd
 
Modul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan JavaModul PBO Bab-01 - Pengenalan Java
Modul PBO Bab-01 - Pengenalan Java
 
modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)modul Java dasar fundamental (OOP)
modul Java dasar fundamental (OOP)
 
Romi oop-02-javafundamentals-29agustus2010
Romi oop-02-javafundamentals-29agustus2010Romi oop-02-javafundamentals-29agustus2010
Romi oop-02-javafundamentals-29agustus2010
 
Tipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaTipe Data pada Bahasa Java
Tipe Data pada Bahasa Java
 
Algoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - PerulanganAlgoritma dan Struktur Data (Python) - Perulangan
Algoritma dan Struktur Data (Python) - Perulangan
 
Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul II
 
Tipe data
Tipe dataTipe data
Tipe data
 
Bab. 8
Bab. 8Bab. 8
Bab. 8
 
Dasar pemrograman-python
Dasar pemrograman-pythonDasar pemrograman-python
Dasar pemrograman-python
 
Java2
Java2Java2
Java2
 
Jeni Intro2 Bab03 Teknik Pemrograman Lanjut
Jeni Intro2 Bab03 Teknik Pemrograman LanjutJeni Intro2 Bab03 Teknik Pemrograman Lanjut
Jeni Intro2 Bab03 Teknik Pemrograman Lanjut
 
Cc++
Cc++Cc++
Cc++
 

Semelhante a Modul 1-2

ALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANBang Jo
 
DASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMADASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMAWalid_1234
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritmaAkhmad Asari
 
2.adp penyajian algoritma
2.adp penyajian algoritma2.adp penyajian algoritma
2.adp penyajian algoritmaHardini_HD
 
9.adp penyajian algoritma
9.adp penyajian algoritma9.adp penyajian algoritma
9.adp penyajian algoritmaHardini_HD
 
2 adp penyajian algoritma
2   adp penyajian algoritma2   adp penyajian algoritma
2 adp penyajian algoritmaFaisal Amir
 
2 adp penyajian algoritma
2   adp penyajian algoritma2   adp penyajian algoritma
2 adp penyajian algoritmaFaisal Amir
 
listiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchartlistiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchartMaryanto Sumringah SMA 9 Tebo
 
Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Asnita Meydelia C K
 
1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman Terstruktur1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman TerstrukturKelinci Coklat
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanie Indah
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanie Indah
 

Semelhante a Modul 1-2 (20)

ALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMANALGORITMA dan PEMROGRAMAN
ALGORITMA dan PEMROGRAMAN
 
DASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMADASAR - DASAR ALGORITMA
DASAR - DASAR ALGORITMA
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritma
 
2.adp penyajian algoritma
2.adp penyajian algoritma2.adp penyajian algoritma
2.adp penyajian algoritma
 
9.adp penyajian algoritma
9.adp penyajian algoritma9.adp penyajian algoritma
9.adp penyajian algoritma
 
2 adp penyajian algoritma
2   adp penyajian algoritma2   adp penyajian algoritma
2 adp penyajian algoritma
 
2 adp penyajian algoritma
2   adp penyajian algoritma2   adp penyajian algoritma
2 adp penyajian algoritma
 
listiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchartlistiati univ bung hata (1110013211051) Algoritma dan flowchart
listiati univ bung hata (1110013211051) Algoritma dan flowchart
 
Laporan tugas struktur data
Laporan tugas struktur dataLaporan tugas struktur data
Laporan tugas struktur data
 
Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"
 
Dasar dasar algoritma - 2
Dasar dasar algoritma - 2Dasar dasar algoritma - 2
Dasar dasar algoritma - 2
 
Makalah algo
Makalah algoMakalah algo
Makalah algo
 
penyajian algoritma
penyajian algoritmapenyajian algoritma
penyajian algoritma
 
2 adp penyajian algoritma
2   adp penyajian algoritma2   adp penyajian algoritma
2 adp penyajian algoritma
 
1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman Terstruktur1. Algoritma, Struktur Data dan Pemrograman Terstruktur
1. Algoritma, Struktur Data dan Pemrograman Terstruktur
 
sp243-061043-959-1.ppt
sp243-061043-959-1.pptsp243-061043-959-1.ppt
sp243-061043-959-1.ppt
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
 
Tugas Praktikum ke dua
Tugas Praktikum ke duaTugas Praktikum ke dua
Tugas Praktikum ke dua
 
E1 e117049 nurfadhila fahmi_tugas3
E1 e117049 nurfadhila fahmi_tugas3E1 e117049 nurfadhila fahmi_tugas3
E1 e117049 nurfadhila fahmi_tugas3
 

Modul 1-2

  • 1. Lab. Common Computing– Universitas Trunojoyo Madura Ganjil 2013/2014 Praktikum Pengantar Algoritma Pemrograman (ALPRO) [MODUL]
  • 2. 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 Process Menunjukkan tahapan berjalannya proses komputasi Predefined Process Menunjukkan subproses atau subrutin dari berjalannya proses, atau proses didalam proses Preparation Menunjukkan langkah perulangan dari aliran suatu proses Decision Menunjukkan alternatif pemilihan keputusan proses
  • 3. Alternate Menunjukkan proses alternatif yang bisa digunakan diluar proses normal Delay Menunjukan penundaan proses Manual Operation Menunjukkan proses manual yang dilakukan oleh pengguna Simbol Koneksi Flow Menunjukkan arah dan hubungan antar proses Terminator Menunjukkan akhir selesainya keseluruhan proses Connector Menunjukkan hubungan antar bagian proses yang terputus Or Menunjukkan proses yang berbeda Sum Menunjukkan campuran proses yang bisa berjalan bersamaan Merge Menunjukan penggabungan proses Extract Menunjukkan pemisahan
  • 4. Simbol Input-Output Data Memberikan parameter input dan menghasilkan output (I/O) Manual Input Input manual Display Menunjukkan tampilan di Layar Document Menunjukkan output dokumen manual 1.2 Flowchart Algoritma Untuk menunjukkan proses algoritma pemrograman sehingga mudah untuk dimengerti dapat menggunakan standar flowchart. Percabangan, Percabangan Kondisi Terpenuhi? Aksi 1 Aksi lain Y T a b
  • 5. Contoh logika,  Jika suhu panas pakailah T-Shirt berwarna cerah, Jika suhu dingin pakailah jaket berwarna gelap. Perulangan 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. Kondisi Terpenuhi ? Aksi Y T Selama Kondisi b c
  • 6. Contoh implementasi, Dari masukan bilangan bulat 1..10 tentukan keluaran bilangan ganjil, dan genap. Mulai Masukan bilangan bulat input 1..10 input modulus 2 == 0 ? Masukkan daftar bilangan genap Y T Selama Kondisi input 1..10 Input <= 10 ? Tampilkan bilangan genap Tampilkan bilangan ganjil Masukkan daftar bilangan ganjil Selesai
  • 7. 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:
  • 8. 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
  • 9. 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.
  • 10. 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)
  • 11.  Characters: char(1 byte) 2. Tipe data komplek, 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 bersifat dinamis. Array, public class array { public static void main(String[] 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]); } } public class Primitif { public static void main(String[] args) { String s = "Hello Java, I Love You ...."; char c = 'a'; int i = 1; double f = 0.5; double d = i/f; System.out.println("Hasil Bagi "+i+" : "+f+" = "+d); } }
  • 12. Matriks, List, public class Listi { public static void main(String[] args) { List<Integer> l = new ArrayList(); l.add(1); l.add(2); l.add(1000); for (Integer i : l) { System.out.print(i); } } } public class Matriks { public static void main(String[] arg){ int bar = 10; int kol = 10; double [][] matrik = new double[bar][kol]; matrik[0][0] = 1; matrik[0][1] = 0; matrik[1][0] = 0; matrik[1][1] = 1; } }
  • 13. 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+","); } } }
  • 14. 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); } }
  • 15. Perulangan Terdapat tiga perulangan yang dapat digunakan di JAVA yaitu: While, do..While, dan For. While 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 ); } } 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"); } } }
  • 16. For 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. 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"); } } }
  • 17. Tugas Tambahan, 1. Buatlah program untuk algoritma mengecek bilangan prima atau bukan prima.