13
csa-interganesha.com Tutorial Struktur Runtunan Algoritma Created By Edi Casnadi - IM 1 Judul : Struktur Runtunan (Sequance) Penulis : Edi Casnadi Level : Basic Hak : csa-interganesha /www.csa-interganesha.com Kategori : Public STRUKTUR RUNTUNAN (SEQUANCE) Gambar Beberapa robot ngantri secara beruntun 1. Pendahuluan Runtunan Runtunan adalah struktur algoritma paling dasar yang berisi rangkaian instruksi yang diproses secara sekuensial, artinya dikerjakan satu per satu, mulai dari instruksi pertama sampai instruksi akhir Algoritma runtunan biasanya bekerja minimal dengan satu statement atau lebih untuk melakukan instruksi, seperti : 1. Setiap instruksi dikerjakan satu persatu. 2. Setiap instruksi dilaksanakan hanya sekali (tidak ada instruksi yang diulang) dan bekerja secara sistematis. 3. Urutan instruksi yang dilaksanakan pemroses sama dengan urutan aksi atau statement sebagaimana yang tertulis di dalam teks algoritmanya. 4. Akhir dari instruksi merupakan akhir algoritma. Setiap instruksi di dalam runtunan dituliskan dalam satu baris, atau beberapa instruksi dalam baris yang sama tetapi antara setiap instruksi dipisahkan dengan tanda titik (;). Contoh : DESKRIPSI a=20; b=19 //lebih dari 2 instruksi sehigga terdapat tanda koma 2. Dasar-dasar runtunan Bila suatu instruksi runtunan dalam algoritma ditulis berturut-turut, kita lambangkan dengan variabel E1, E2, E3, E4 dan E5, maka urutan pelaksanaan instruksi tersebut adalah seperti diagram dibawah ini:

Struktur Runtunan Algoritma

  • Upload
    casnadi

  • View
    6.311

  • Download
    0

Embed Size (px)

DESCRIPTION

Bagaimana cara kerja suatu proses dalam komputer dalam hal ini cara kerja suatu proses dengan runtunan(algo runtunan)

Citation preview

Page 1: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 1

Judul : Struktur Runtunan (Sequance) Penulis : Edi Casnadi Level : Basic Hak : csa-interganesha /www.csa-interganesha.com Kategori : Public

STRUKTUR RUNTUNAN (SEQUANCE)

Gambar Beberapa robot ngantri secara beruntun

1. Pendahuluan Runtunan Runtunan adalah struktur algoritma paling dasar yang berisi rangkaian instruksi yang diproses secara sekuensial, artinya dikerjakan satu per satu, mulai dari instruksi pertama sampai instruksi akhir Algoritma runtunan biasanya bekerja minimal dengan satu statement atau lebih untuk melakukan instruksi, seperti :

1. Setiap instruksi dikerjakan satu persatu. 2. Setiap instruksi dilaksanakan hanya sekali (tidak ada instruksi yang diulang) dan

bekerja secara sistematis. 3. Urutan instruksi yang dilaksanakan pemroses sama dengan urutan aksi atau

statement sebagaimana yang tertulis di dalam teks algoritmanya. 4. Akhir dari instruksi merupakan akhir algoritma.

Setiap instruksi di dalam runtunan dituliskan dalam satu baris, atau beberapa instruksi dalam baris yang sama tetapi antara setiap instruksi dipisahkan dengan tanda titik (;). Contoh :

DESKRIPSI a=20; b=19 //lebih dari 2 instruksi sehigga terdapat tanda koma

2. Dasar-dasar runtunan Bila suatu instruksi runtunan dalam algoritma ditulis berturut-turut, kita lambangkan dengan variabel E1, E2, E3, E4 dan E5, maka urutan pelaksanaan instruksi tersebut adalah seperti diagram dibawah ini:

Page 2: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 2

E1 E2 E3

E4

E5

Gambar Runtunan yang terdiri dari 5 buah instruksi.

Keterangan: Runtunan di atas, dimulai dari instruksi E1, kemudian E1 harus dikerjakan sampai selesai terlebih dahulu sebelum instruksi E2 dikerjakan, setelah instruksi E2 selesai dikerjakan juga, maka instruksi E3 dikerjakan lagi dan seterusnya sampai instruksi ke E5 setelah itu proses selesai dikerjakan dan baru berhenti dari proses pembacaan runtunan tersebut. 3. Kasus algoritma runtunan Kasus runtunan 1 Diketahui data sebagai berikut:

E1 = 4 E1 = 3 E2 = 6 E2 = 5

Menghasilkan keluaran algoritma yaitu:

E1 = 3 E2 = 5

Keterangan: Kenapa bisa begitu ya..., karena kalau kita perhatikan E1 bernilai 4 dan E1 berikutnya bernilai 3, maka hasil outputnya variabel E1 akan bernilai 3, karena sifat variabel ini bersifat pimitif maka nilai terbarulah yang akan diambil dan disimpan di variabel E1. Jadi dengan demikian nilai E1=4 pada baris pertama akan ditimpa oleh E1=3 pada baris kedua, sehingga outputnya adalah E1=3. Untuk variabel E2=6 juga akan tertimpa oleh nilai terbaru yaitu E2=5 sehingga outputnya untuk variabel E2=5, jadi jelaslah ketika di RUN atau Output-nya yaitu E1=3 dan E2=5. Kasus ini juga berlaku untuk tipe data primitif lainnya seperti: integer, float, char dll.

Page 3: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 3

Belajar melalui latihan-latihan. a. Diketahui data, sebagai berikut:

A = -23 B = 97 C = A * B D = (A + B) * (A + B) C = A + B + C E = (C + D) – B

Berapakah keluaran dari data di atas untuk variabel C, D, dan E?

b. Diketahui data, sebagai berikut A = 45 B = -1 C = ½ E = A + (C * A) D = E + A

Berapakah keluaran dari data di atas untuk variabel C, D, dan E?

Jawaban latihan di atas Jawaban a

C = - 2157 D = 4576 E = 2322

Jawaban b C = ½ D = 112.5 E = 67.5 Berikut ini kita akan belajar menyelesaikan algoritma runtunan ke dalam algoritma pseudo code, flowchart dan bahasa Java, seperti contoh kasus dibawah ini: Contoh-1 Membaca data E1 dan E2 secara beruntun pada algoritma runtunan

ALGORITMA RuntunanSatu {program untuk mencetak nilai E1 dan E2 dari kasus runtunan} DEKLARASI E1, E2 integer DESKRIPSI read(E1 = 4) //memasukan atau membaca data read(E1 = 3) read(E2 = 6)

Page 4: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 4

read(E2 = 5) println(E1, E2) // menampilkan data E1 dan E2 End_algo

Contoh-2 Menentukan gaji bersih yang diterima setiap karyawan tiap bulan adalah:

Gaji bersih = gaji pokok + tunjangan – pajak Tunjangan karyawan dihitung 20% dari gaji pokok, sedangkan pajak adalah 15 % dari gaji pokok ditambah tunjangan. Algoritma untuk menghitung gaji karyawan, yaitu:

ALGORITMA Gaji_Karywaan { menghitung gaji bersih karywan. Data memasukan adalah nama karywan

dan gaji pokok bulanannya. Gaji bersih = gaji pokok + tunjangan – pajak. Tunjangan adalah 20% dari gaji pokok, sedangkan pajak adalah 15% dari gaji pokok + tunjangan }

DEKLARASI nama_karyawan String gaji_pokok, tunjangan, pajak, gaji_bersih float DESKRIPSI read(nama_karywan, gaji_pokok) // inputan data tunjangan = 0.2 * gaji_pokok // proses data tunjangan pajak = 0.15 * (gaji_pokok + tunjangan) // proses data pajak gaji_bersih = gaji_pokok + tunjangan – pajak // proses data gaji bersih println(nama_karyawan, gaji_pokok, pajak) //menampilkan data println( gaji_bersih) //output gaji bersih End_algo

Bentuk ringkasan dalam bahasa Java Bentuk penugasan dalam bahasa Java memungkinkan Java untuk melakukan penugasan di satu baris pernyataan, untuk melakukan beberapa hal, yaitu:

1. Deklarasi ke beberapa variabel sekaligus Contoh:

int A; int B;

Page 5: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 5

int C; dapat diringkas menjadi sebagai berikut

int A, B, C ;

2. Deklarasi dan alokasi memori Contoh:

int A[]; A = new int[5]; dapat diringkas menjadi sebagai berikut: int A[] = new int[5];

3. Deklarasi dan inisialisasi array (sekaligus alokasi memori ) Contoh:

int ada[]; ada = new int[5]; ada[0] = 0; ada[1] = 3; ada[2] = 4; ada[3] = 23; ada[4] = 5; dapat diringkas menjadi sebagai berikut:

int ada[ ] = { 0, 3, 4, 23, 5 } Belajar Dengan Latihan-Latihan Berikut Ini Latihan-1 Buatlah tampilan atau output dari runtunan berikut:

1 2 3 4 5 Dengan setiap nilai, diinputkan secara konstanta. Jawab Cobalah perhatikan jawaban berikut ini: Dalam penyelesaian runtunan dalam algoritma pseudo code yaitu Judul algoritma

ALGORITMA Beruntun { untuk menghasilkan suatu proses berurutan dari instruksi dengan inputan

A1=1, A2=2, A3=3, A4=4, A5=5, kemudian yang akan ditampilkan pada piranti keluaran }

DEKLARASI

A1, A2, A3, A4, A5 integer // tipe data integer DESKRIPSI

read(A1 1; A2 2; A3 3; A4 4; A55) // input data

Page 6: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 6

println(A1, A2, A3, A4, A5) // output data End_algo

Teknik penulisan runtunan di atas dalam algoritma flowchart adalah:

Judul Algoritma A1,A2,A3,A4,A5 tipe data integer A1=1; A2=2;A3=3;A4=4;A5=5 Print(1,2,3,4,5) End_algoritma

Penyelesaian di atas dalam bahasa Java, yaitu:

public class Beruntun { public static void main (String[ ] args) {

int A1, A2, A3, A4, A5; //definisi variabel A1 =1; //inputan atau membaca data A2 =2; A3 =3; A4 =4; A5 =5; System.out.println(A1); //menampilkan atau mencetak data System.out.println(A2); System.out.println(A3); System.out.println(A4); System.out.println(A5); }

} Hasil ouput

1 2 3 4

5

Start

Deklarasi

Input/Read

Print

Stop

Page 7: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 7

Belajar melalui contoh-contoh runtunan dalam bahasa Java Contoh-1, runtunan dengan operasi perhitungan

public class perhitungan { public static void urutan2() {

int A, B; A=40; B=30;

A= A – B; B = A + B; A = A – B;

System.out.println(A + “ dan “ + B); } public static void main (String[ ] args) {

urutan2(); } }

Contoh-2, menghitung nilai determinan dalam bentuk method

public class Determinan { public void fungsi() { int a, b, c, D; // pendefinisian variabel a = 2; b = 3; c = 10; D = b * b – (4 * a * c); System.out.print ("Determinan = " + D); } public static void main (String[ ] args) { fungsi(); } }

Page 8: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 8

Belajar Melalui Studi Kasus Dalam Algoritma Runtunan Kasus-1 Menghitung luas segitiga. Luas dengan nilai masukan sembarang(dari keyboard), rumus segitiga adalah setengah dari panjang dikali tinggi ( L = ½ x a x t). Panjang alas dan tinggi segitiga dibaca dari piranti masukan (keyboard). Luas segitiga dicetak ke piranti keluaran/ monitor. Penyelesaian luas segitiga dalam algoritma pseudo code

ALGORITMA Luas_Segitiga { Dibaca panjang alas (a) dan tinggi (t) segitiga. Hitunglah luas segitiga tersebut.

Untuk panjang alas dan tinggi tertentu. Luas segitiga dihitung dengan L = ½ a.t. Nilai L dicetak ke piranti keluaran. }

DEKLARASI

a float // panjang alas segitiga, dalam satuan cm t float // tinggi segitiga, dalam satuan cm L float // luas lingkaran, dalam satuan cm2

DESKRIPSI read(a) //inputan data read(t) L = a * t/ 2 // pemrosesan println (L) // keluaran nilai L End_algo

Keterangan: Bila algoritma Luas_Segitiga, ditranslasikan ke dalam bahasa pemrograman maka pembacaan nilai a dan t sebaiknya disertai penjelasan apa yang sedang dibaca. Hal ini dimaksudkan agar pengguna program tidak salah dalam mengisikan data dari piranti masukan. Kalau read(a) dan read(t), yang nantinya akan diterjemahkan dalam bahasa Java. Sebetulnya di dalam Java tidak bisa secara langsung dalam menginputkan nilai atau membaca data, maka ada perlakuan khusus, seperti: Berikut cara penerjemahan inputan read ke dalam bahasa java Cara 1: a = readLine(); // untuk nilai alas, read(a) dalam algoritma t = readLine(); // untuk nilai tingg,read(t)dalam algoritma Cara 2: Untuk nilai alas

Page 9: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 9

String sa = JOptionPane.showInputDialog("Nilai alas ? "); int a=Integer.parseInt(sa); // konversi dari string ke integer Untuk nilai tinggi String st = JOptionPane.showInputDialog("Nilai alas ? "); int t=Integer.parseInt(st); // konversi dari string ke integer Printah di atas, akan menunggu pengguna untuk memasukan angka untuk a dan t dengan nilai sembarang. Tetapi jika terjadi kesalahan, maka cara mendeteksi apa yang menjadi kesalahan dari inputan tersebut (kesalahan yang sering kita lupakan dalam penginputan) yaitu: Kesalahan pemasukan tipe data artinya seharusnya inputan berupa numerik tetapi

diisi dengan data String. Untuk kasus int a di atas harus memasukan berupa nilai numerik. Jika bukan numerik yang diinputkannya maka komputer akan memberikan respon atau pesan kesalahan.

Kesalahan dalam penggunaan variabel, coba perhatikan huruf besar-kecilnya dalam pemakaian variabel.

Kurangnya suatu tanda sintaks tertentu dll Contoh pengggunaan dalam bahasa Java dengan berbagai cara untuk menyelesaikan luas segitiga dalam Java. Cara-1, inputan luas dengan menggunakan pemsaukan nilai secara langsung

public class LuasSegitiga {

public static void main (String args[] ) { float a, t, L; a = 4; t = 6; L = (a*t)/2; System.out.println(“Luas segitiga = “ + L); }

} Hasil output

Luas segitiga = 12

Cara-2, dengan inputan pengguna menggunakan kelas java.io

import java.io.*;

public class LuasSegitiga {

public static void main(String[] args) throws IOException {

Page 10: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 10

float a, t, L;

InputStreamReader reader = new InputStreamReader(System.in); BufferedReader input = new BufferedReader(reader); System.out.print("alas ? "); String angka1 = input.readLine(); System.out.print("tinggi ? "); String angka2 = input.readLine(); a = Float.parseFloat(angka1); t = Float.parseFloat(angka2); L = (a * t)/2; System.out.println("Luas = " + L); } }

Hasil output alas ? 3 tinggi ? 4.5

Luas = 6.75

Cara-3, inputan sembarang dengan JOptionPane

import javax.swing.*;

public class LuasSegitiga {

public static void main(String[] args){

float a, t, L; String angka1 = JOptionPane.showInputDialog("alas ? "); String angka2 = JOptionPane.showInputDialog("tinggi ? "); a = Float.parseFloat(angka1); t = Float.parseFloat(angka2); L = (a * t)/2; System.out.println("Luas = " + L); }

}

Di RUN atau F5 akan menghasilkan sebagai berikut:

Page 11: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 11

Hasil output yaitu:

Luas = 6.75

Kasus-2 Untuk menghitung, cepat rambat cahaya dalam ilmu fisika diketahui dengan rumus sebagai berikut: jarak = cahaya * detik. Diketahui satuan ini dalam kilometer, selesaikanlah dalam algoritma dan Java masalah tersebut! Algoritma untuk penyelesaian rambat cahaya

ALGORITMA Rambat_Cahaya {menghitung rambat cahaya, yaitu jarak cahaya = cahaya * detik dalam

km/detik} DEKLARASI cahaya integer // mendeklarasikan tipe datar hari long detik long jarak long DESKRIPSI cahaya = 30000 // cahaya di input dengan nilai 30000 hari = 100; // contoh dengan inputan dalam hari // konversi hari kedetik detik = hari * 24 * 60 * 60;

//hitung jarak

Page 12: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 12

jarak = cahaya * detik; // output

println(”cahaya telah merabat sejauh”); println( jarak ); // dalam kilometer End_algo

Penyelesaian rambat cahaya dalam bahasa Java

public class rambatcahaya{ static int cahaya; //variable global static long hari, detik, jarak; public static void masukan(){ // pendekatan kecepatan cahaya dalam km/detik cahaya = 300000; // contoh kecepatan cahaya hari = 100; //contoh 100 hari detik = hari * 24 * 60 * 60; //konversi hari kedetik jarak = cahaya * detik; //hitung jarak } public static void keluaran(){ // output System.out.println(”Dalam ” + hari); System.out.println(hari +” cahaya telah merabat sejauh”); System.out.println( jarak + ” kilometer”); } public static void main (String args[]) { masukan(); keluaran(); } }

Hasil output

Dalam 100 100 cahaya telah merabat sejauh 2592000000000 kilometer Process completed.

Page 13: Struktur Runtunan Algoritma

csa-interganesha.com Tutorial Struktur Runtunan Algoritma

Created By Edi Casnadi - IM 13

Soal Latihan 1. Terjemahkan algoritma berikut ke dalam bahasa pemrograman Java

ALGORITMA Komisi_Salesman {menghitung besar komisi yang diterima oleh seorang salesman......} DEKLARASI

nama_salesman String nilai_penjualanfloat // nilai penjualan yang dicapai dlm Rp komisifloat // besar komisi, dalam Rp DESKRIPSI: read(nama_salesman, nilai_penjualan) // diinput dari keyboard komisi 0.1 * nilai_penjualan println(komisi) End_algo

2. Tuliskan algoritma untuk menghitung luas bangunan geometri yang lain

(lingkaran, bujursangkar, segitiga, trapesium, dan sebagainya). Data dimasukkan dari piranti masukan dan untuk luas bangun ditampilkan sebagai keluaran.

3. Tuliskan algoritma yang membaca panjang sebuah benda dalam satuan meter, lalu mengkonverinya ke dalam satuan inchi, kaki, dan yard (1 inchi =25.4 mm, 1 kaki = 30.48 cm, dan 1 yard = 0.9144).

4. Buat algoritma untuk mengerjakan harga diskon dari perusahaan ritel, yaitu: a. Sabun Cuci dengan harga 1000 diskon 1% b. Shampo XX dengan harga 5000 diskon 2% c. Sikat gigi XX dengan harga 3500 diskon 1% d. Sapu dengan harga 1500 tanpa diskon e. Tisu XX dengan harga 2300 diskon 1% Buatlah algoritma pseudo code dan flowchart, berdasarkan masalah di atas, dengan hasil keluaran yang diharapkan(nama barang, harga sebelum diskon, banyak barang, harga setelah didiskon, total harga)