• Tidak ada hasil yang ditemukan

Modul 1: Flowchart & PseudoCode

N/A
N/A
Protected

Academic year: 2021

Membagikan "Modul 1: Flowchart & PseudoCode"

Copied!
19
0
0

Teks penuh

(1)

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

(2)

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

(3)

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

(4)

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

(5)

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

(6)

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:

(7)

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

(8)

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.

(9)

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

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)

(10)

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); }

(11)

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; } }

(12)

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+","); }

} }

(13)

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); }

(14)

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"); } } }

(15)

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"); } } }

(16)

Modul 3: Java Matrik

Tujuan Instruksi Khusus:

 Mahasiswa dapat memahami penggunaan algoritma pengolahan data matriks

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. Konsep array

2. Lojik perulangan 3. Pengenalan fungsi

Teori

3.1 Pengertian Matriks

Matriks adalah himpunan scalar dengan susunan segi empat siku-siku. Bilangan-bilangan dalam susunan tersebut dinamakan entri dalam matriks. Jika A adalah sebuah matriks, maka akan menggunakan

a

ij untuk menyatakan entri yang terdapat di dalam baris i dan kolom j dari matriks A.

Secara umum matriks dituliskan sebagai berikut:

3.2 Operasional Matriks

Penjumlahan Matriks

Operasional Penjumlahan matriks hanya bisa dilakukan untuk atriks dengan ukuran dimensi yang sama. Jika A dan B adalah sembarang dua matriks yang ukurannya sama, maka jumlah adalah matriks yang diperoleh dengan menambahkan bersama-sama entri yang bersesuaian dalam kedua matriks tersebut.

(17)

Contoh:

Perkalian Matriks

Perkalian matriks hanya dapat dilakukan untuk matriks sembarang dengan dimensi kolom matriks pertama sama dengan baris matriks berikutnya. Sedangkan hasil perhalian adalah penjumlahan antar perkalian entri baris matriks pertama dengan kolom matriks berikutnya. Contoh:

Perkalian entri antara baris dengan kolom: Baris ke-1 x kolom ke-1,

X11 = (1.2) + (3.3) + (4.1) = 15 Baris ke-1 x kolom ke-2, X12 = (1.4) + (3.6) + (4.3) = 34 Baris ke-2 x kolom ke-1, X21 = (3.2) + (2.3) + (5.1) = 17 Baris ke-2 x kolom ke-2, X22 = (3.4) + (2.6) + (5.3) = 39

3.3 Matriks Java

Matriks dijava direpresentasikan dalam array dua dimensi,

(18)

contoh:

3.4 Fungsi dan Prosedur

Fungsi dalam bahasa pemrograman adalah bagian struktur sub-program atau sub-rutin atau dalam standar flowchart adalah predefined process yang memiliki kegunaan secara spesifik. Pembuatan fungsi dan prosedur digunakan untuk meningkan reusabilitas fungsi program, sehingga penulisan program dapat lebih efisien ketika digunakan kembali. Secara garis besar pembeda fungsi dan prosedur hanya ada dan tidak adanya nilai kembalian, dimana fungsi memiliki nilai kembalian sedangkan prosedur tidak.

Fungsi

Contoh:

public double[][] entri_matriks(){ int m = this.bar;

int n = this.kol;

double [][] r = new double[bar][kol]; for(int i=0; i<m; i++){

for(int j=0; j<n; j++){

System.out.print("Masukan Baris ke-"+i+" Kolom ke-"+j+" ="); Scanner s = new Scanner(System.in);

double x = s.nextInt(); r[i][j] = x; } } return r; }

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; } }

(19)

Prosedur

Instruksi Praktikum,

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

Tugas Pendahuluan,

1. Jawablah Pertanyaan berikut terkait penulisan bahasa java:  Apa itu fungsi ? kapankah fungsi secara tepat digunakan  Apa itu prosedur ? kapankah prosedur secara tepat digunakan  Apa persamaan dan perbedaan antara larik dan matrik

Tugas Praktikum,

1. Buatlah flowchart dan pseudocode Penjumlahan matrik

2. Buatlah program dengan komponen fungsi dan prosedur untuk penjumlahan matrik 3. Buatlah program dengan komponen fungsi dan prosedur untuk perkalian matrik public void show_matriks(double[][] matrik){

for(int i=0; i<this.bar; i++){ System.out.print("|"); for(int j=0; j<this.kol; j++){ System.out.print(" "+matrik[i][j]); } System.out.println("|"); } }

Referensi

Dokumen terkait

IDENTITAS STANDAR KOMPETENSI KODE KOMPETENSI KOMPETENSI DASAR INDIKATOR MATERI PEMBELAJARAN KEGIATAN PEMBELAJARAN PENILAIAN ALOKASI WAKTU SUMBER BELAJAR KOMPONEN SILABUS

Program yang ditulis dengan bahasa rakitan terdiri dari label; kode mnemonic dan. lainnya, pada umumnya dinamakan sebagai program sumber (source code)

Berikan contoh program (pseudo code) yang tidak menganut prinsip lokalitas (temporal dan spatial) terhada data akses. Berikan karakteristik umum jenis

Dengan demikian, peristiwa campur kode yang dimaksud pada transaksi jual beli di atas adalah campur kode ke dalam (inner code-mixing), berupa bahasa Padang yang menyisip pada

 Algoritma yang ditulis dalam bahasa komputer dinamakan program  Bahasa komputer yang digunakan dalam menulis program disebut..

Setiap komputer memiliki program kode-biner masing - masing yang berbeda yang disebut &#34;Bahasa Mesin&#34;(Machine Language). Hal ini menyebabkan komputer sulit untuk diprogram

Hymes menjelaskan bahwa dalam setiap masyarakat terdapat varietas kode bahasa (language code) dan cara-cara berbicara yang bisa dipakai oleh anggota masyarakat atau sebagai

 Penterjemahan bahasa assembly menjadi kode biner bahasa mesin dapat dilakukan secara manual atau menggunakan program yang disebut dengan assembler.... Teknologi dan