Anda di halaman 1dari 57

MODUL 2

DASAR PEMROGRAMAN

di susun oleh: RINDYANA PANGESTIKA 135623013 FAKULTAS TEKNIK D3 MANAJEMEN INFORMATIKA KELAS A

Dasar Teori terkait:


1. Netbeans dan Eclipse Netbeans
NetBeans adalah Integrated Development Environment (IDE) berbasiskan Java dari Sun Microsystems yang berjalan di atas Swing. Swing sebuah teknologi Java untuk pengembangan aplikasi Desktop yang dapat bejalan di berbagai macam platforms seperti Windows, Linux, Mac OS X and Solaris. Suatu IDE adalah lingkup pemrograman yang diintegrasikan kedalam suatu aplikasi perangkat lunak yang menyediakan pembangun Graphic User Interface (GUI), suatu text atau kode editor, suatu compiler atau interpreter dan suatu debugger.Cara menggunakan netbeans: Menyiapkan Proyek Untuk membuat sebuah proyek IDE: 1. 2. 3. 4. Jalankan NetBeans IDE. Dalam IDE, pilih File > New Project Pilih jenis project Java Java Application,lalu klik next Isi kelengkapan project Boleh diisi apa aja Boleh dimana aja dalam komputer anda Dibiarkan kosong aja Dibiarin kosong aja Boleh centang jika mau proyek ini sebagai default proyek anda

Project name / nama proyek Project location / lokasi proyek Use dedicated folder Create main class Set as main project 5. Klik finish.

Eclipse
1. buka software eclipse SDK. 2. klik file > new > java project.

3. isi project name sesuai keinginan anda, lalu klik finish.

4. setelah selesai klik kanan project yang anda buat sebelumnya, pilih new > class.

5. gunakan package yang default, dan ketik nama classnya lalu finish. jangan lupa diberi centang public static main (String[]args).

6. masukkan source codenya.

7. setelah semuanya selesai akan menjadi seperti gambar di bawah ini.

2. Penulisan Program di Java, Input, Output


Bahasa Pemograman Java Java merupakan Pure Object-Oriented Programing Language yaitu bahasa pemograman berbasis objek murni. Berbeda dengan bahasa pemograman seperti : Visual Basic, Visual Delphi, C++. Konsep Objek Oriented Programing murni : 1. Terdiri dari Class didalamnya memuat attribute atau variable dan fungsi ataupun procedure. 2. Procedure dan fungsi, variable tidak boleh berdiri sediri , harus di dalam Class

Contoh kasus : Pada dasarnya manusia memandang dunia berdasarkan kelas, contohnya : kelas Manusia, kelas binatang, kelas tumbuhan, dsb. Contoh kelas manusia : Atribut : mata, telinga, tangan, rambut, badan, dll. Procedure /fungsi : Makan,minum, mendengar, berfikir Yang dikatakan dengan Objek adalah merupakan individu dari kelas tertentu. Contoh : Kelas manusia objeknya adalah Pak Ahmad, semua procedure, fungsi dan atribut yang dimiliki oleh pak ahmad merupakan kelas manusia. Procedure dan fungsi selalu melekat pada dunia, tidak ada satupun atribut yang tidak memiliki kelas Yang membedakan atribut satu dengan atribut lainnya adalah nilai dari atribut atau objek. Ada kemungkinan dari dua objek betul-betul sama. Case-Sencitive Java merupakan bahasa pemograman Case-Sencitive dan setiap akhir program harus diakhiri oleh titik koma (;). Type data 1. Int 2. Float 3. Char 4. String

: variable-variabelnya akan berisi bilangan-bilangan bulat : variable-variabelnya akan berisi bilangan pecahan : variabel-variabelnya berisi sebuah karakter saja : variabelnya berisi kumpulan dari karakter (angka, huruf, symbol).

Syarat pembuatan variable 1. Hanya terdiri dari abjad, angka dan underscore 2. Karakter pertama harus abjad 3. Tidak ada boleh spasi diantara variable Komentar Komentar adalah Bagian dari program yang tidak akan diproses oleh compiler java, cara penulisan komentar dapat dilakukan dengan cara // atau /*.. */ Console : Untuk menuliskan pesan dilayar :

System.out.println(..) IDE : Integrated Development Environtment Contohnya : Netbeans IDE 6.0, Euclipse, Sum One Studio, Borland J++ Builder, Escape Characters Backslash (\) Indicates special characters be output \n : untuk ganti baris : \t : \r: \\: \: Contoh : system.out.println(Name\nama); Maka akan menghasilkan nama baris berikutnya ama Seharunya system.out.println(Name\\nama); system.out.println(\nama/); bila proram dijalankan hasilnaya nama Nama class harus sama dengan nama file 1 file hanya boleh isinya satu klass Langkah-langkah Membuat program sederhana dengan Java (NetBeans IDE 6.0) 1. Aktifkan NetBeans IDE 6.0 2. Klik File, New Project, maka akan terbuka kotak dialog New Project, pada menu Choose Project pada bagian Categories: pilih Java dan pada bagian projects: pilih Java Application klik tombol next. Selanjutnya tentukan Name and Location yaitu nama project dan di folder mana program akan disimpan. Klik tombol Finish 3. NetBeans akan membuka lembaran kerja project Contoh- contoh program yang ada pada modul ini diketikkan pada pada lembaran kerja Main.Java 4. Apabila sudah selesai mengetikkan program untuk melihat hasilnya dapat diklik menu Build dan Klik Compile Main.Java. Keterangan dari compile tersebut akan ditampilkan di layar pada bagian kotak dialog Output JavaApplication dengan keterangan seperti di bawah ini :

compile-single: BUILD SUCCESSFUL (total time: 2 seconds) 5. Untuk menjalankan hasilnya dapat di klik Run pada menu dan pilih Run MyProject.

3. Operator: Assigment, Matematika, Perbandingan, Logika


ASSIGNMENT OPERATOR (OPERATOR PENUGASAN) Operator ini berfungsi untuk menyalin suatu nilai yang terletak di sebelah kanan ke dalam suatu variable yang terletak disebelah kirimya. Assignment operator ini hanya mempunyai macam operator, yaitu = Contoh program : int a: a=7+5; Pada baris kedua diberikan assignment operator, yang bertugas menyalin nilai disebelah kanannya (7+5), ke dalam variable a yang terletak di sebelah kirinya, sehingga sesudah baris kedua dieksekusi, variable a akan bernilai 12. ARITHMATIC OPERATOR (OPERATOR ARITMATIKA) Operator ini berfungsi untuk operasi aritmatika. Yang termasuk dalam aritmatik operator adalah sebgai berikut : Aritmatic Keterangan Operator + Operasi Penambahan Operasi Pengurangan * Operasi Perkalian / Operasi Pembagian % Operasi Modulus Contoh program : Berikut adalah program untuk menghitung nilai deskriminan D=b2-4ac dari suatu persamaan kuadrat ax2 + bx + c = 0

public class Deskriminan { public static void main(Stringargs[]) { float a, b, c, d; a = 4.OF; b = 5.OF; c = 6.OF; d = b*b 4*a*c; System.out.print(Diskriminan = +d); } } Hasil eksekusi : Deskriminan = -71.0 RATIONAL OPERATOR (OPERATOR RELASI) True atau false Dibaca : apakah Relational operator (operator relasi) adalah operator yang sering dipakai untuk operasi perbandingan dan selalu menghasilkan suatu nilai bertipe boolean (true atau false) . yang termasuk logikal operator adalah sebagai berikut : Rational Operator == != > >= < <= Contoh program : public class Equal { public static void main(String args[]) { int a=6 if((a%2) !=0 System.out.printIn(Bilangan ganjil); else System.out.printIn(Bilangan genap); } } OPERATOR LOGIKA Keterangan Operasi perbandingan sama dengan Operasi perbandingan tidak sama dengan Operasi perbandingan lebih besar Operasi perbandingan lebih besar sama dengan Operasi perbandingan lebih kecil Operasi perbandingan lebih kecil sama dengan

Operator Logika memiliki satu atau lebih operan boolean yang menghasilkan nilai boolean. Ada enam operator logika yaitu Logical Keterangan Operator ! Operasi negasi (NOT) & Operasi AND | Operasi OR ^ Operasi XOR && Operasi AND (short circuit) || Operasi OR (short circuit) Operator !,&, | dan ^ mempunyai implementaso yang sama sebagaimana ketika ia menjadi bitwise operator. Hanya saja di logical operator, operan yang dilibatkan disini harus bertipe boolean, yang hanya mempunyai nilai true atau false. Operator && (short cicuit) Operator && adalah operator yang berfungsi untuk melakukan operasi AND pada bit-bit nilai operan yang bertipe boolean. Operator 77 memounyai ketentuan sebagaimana ketentuan operator &. Hanya saja perbedaan terletak pada saat operasi AND sudah dapat menghasilkan suatu nilai dari operan pertama, maka operasi AND dengan && tidak lagi melihat operankedua, sedangkan operasi AND dengan & masih melihat operan kedua. Oleh karena itu operator && disebut juga dengan short cicuit boolean operator. Sehingga operator 77 mempunyai ketentuan sebagai berikut : Operan 1 Operan 2 Hasil && False Tidak dilihat False False Tidak dilihat False True 0 False True 1 True

Berikut adalah 2 contoh program sederhana untuk membedakan pemakaian operator& dan operator && : public class BooleanAnd { public static void main(String args[]) { int a=5, b=7; if ((a<2) & b(b++<10)) b+=2; System.out.printIn(b); } } public class BooleanAnd { public static void main(String args[]) { int a=5, b=7; if ((a<2) & b(b++<10)) b+=2; System.out.printIn(b); } }

4. Tingkatan Operator
A. Tingkatan Operator Java mempunyai aturan untuk menentukan urutan dimana operator di dalam ekspresi dievaluasi ketika suatu ekspresi mempunyai beberapa operator (disebut dengan operator precedence). Operator precedence adalah urutan evaluasi dimana operator yang ada di suatu ekspresi akan dievaluasi berdasarkan aturan prioritas yang ditentukan. Operator dengan prioritas lebih tinggi akan dievaluasi terlebih dahulu dibandingkan dengan operator yang mempunyai prioritas lebih rendah. Apabila beberapa operator di dalam ekspresi mempunyai prioritas yang sama, maka operator akan dievaluasi berdasarkan asosiasi dari operator tersebut (operator association). Berikut ini adalah tabel operator di Java dengan tingkatan prioritas:

Perhatikan contoh ekspresi numerik Java di bawah ini. 5 + 20 * 2 20 / 2 + (10 - 2); Java akan mengevaluasi ekspresi numerik tersebut dengan urutan sebagai berikut:

1. Ekspresi numerik yang terdapat di dalam kurung buka tutup akan dievaluasi pertama kali karena mempunyai prioritas paling tinggi dibandingkan dengan operator perkalian (*), pembagian (/), penjumlahan (+) dan pengurangan (-) sehingga ekspresi numerik akan menjadi 5 + 20 * 2 20 / 2 + 8. 2. Operator perkalian (*) dan pembagian (/) akan dievaluasi berikutnya mulai dari kiri ke kanan karena memiliki prioritas yang sama dan lebih tinggi dari operator penjumlahan (+) dan pengurangan (-) sehingga ekspresi numerik menjadi 5 + 40 10 + 8. 3. Operator penambahan dan pengurangan mempunyai prioritas yang sama dan akan dievaluasi terakhir mulai dari kiri ke nanan sehingga menghasilkan nila 43.

5. Percabangan (if, if....else, if...elseif...., switch)


Percabangan adalah suatu pilihan atau opsi dengan kondisi tertentu. Jika kondisi yang menjadi syarat terpenuhi, maka opsi atau pilihan dijalankan, jika tidak maka sebaliknya. Dalam java terdapat 4 macam jenis percabangan, if, if-else, else-if, dan juga switch. Keempat jenis ini memiliki penggunaan masing-masing. Berikut penjelasan mengenai penggunaan tiap-tiap percabangan : IF Percabangan if ini digunakan jika kita hanya memiliki satu pernyaatan yang akan dijalankan dengan syarat tertentu. Sintaks if seperti berikut : if(kondisi){ pernyataan } Jika kondisi benar, maka pernyataan akan dijalankan. Contoh : public class coba{ public static void main (String [] args){ int a=0; if (a==0) System.out.println("Nilai a = 0"); if (a==1) System.out.println("Nilai a = 1"); } }

Output : Program akan menampilkan nilai a = 0 saja, karena pada if yang kedua, kondisi tidak memenuhi atau salah. IF-ELSE Percabangan if else digunakan saat kita memiliki dua pernyataan dengan syarat tertentu. Sintaks if-else seperti berikut : if(kondisi){ pernyataan1 }else{ pernyataan2 } Jika hasil dari if benar, maka pernyataan1 yang dijalankan, sedangkan jika salah, pernyataan dua yang akan dijalankan. Contoh : public class coba{ public static void main (String [] args){ int a=0; if (a==0) System.out.println("Nilai a = 0"); else System.out.println("Nilai a = 1"); } } Output : program akan menampilkan nilai a = 0, karena kondisi if bernilai benar, jika pada inisialisasi nilai a tidak bernilai 0, maka program akan menampilkan nilai a = 1. ELSE-IF percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak pernyataan (lebih dari 2). Sintaks dari else-if seperti berikut : if(kondisi){ pernyataan1 }elseif(kondisi2){ pernyataan2 }else(kondisi3){

pernyataan3 } else { penyataan4 } jika kondisi1 benar, maka pernyataan1 akan dijalankan, jika kondisi2 benar, maka penyataan2 akan dijalankan, jika semua kondisi salah, maka penyataan4 yang akan dijalankan saja. Contoh : public class coba{ public static void main (String [] args){ int a=2; if (a==0) System.out.println("Nilai a = 0"); else if(a==1) System.out.println("Nilai a = 1"); else if(a==2) System.out.println("Nilai a = 2"); } } Output : Program akan menampilkan nilai a = 2 saja, karena pada else-if yang ketiga atau dengan pernyataan a==2 bernilai benar, sedangkan pernyataan yang lain tidak dijalankan karena kondisi tidak memenuhi.

SWITCH switch-case : percabangan yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak pernyataan (ledbih dari 2). Sebenarnya switch-case ini hampir sama dengan else if, hanya saja sintaksnya yang berbeda. Sintaks dari switchcase seperti berikut : switch (variabel) { case nilai1: pernyataan1; break; case nilai2: pernyataan2; break; default: pernyataan3;

} Jika nilai variabel yang ditunjuk bernilai sesuai nilai1, maka pernyataan1 akan dijalankan, jika nilai variabel yang ditunjuk bernilai sesuai nilai2, pernyataan2 dijalankan, jika tidak ,maka pernyataan3 yang akan dijalankan. public class coba{ public static void main (String [] args){ int a=3; switch (a) { case 1: System.out.println("Nilai a=1");break; case 2: System.out.println("Nilai a=2"); break; case 3: System.out.println("Nilai a=3");break; default: System.out.println("Nilai a=4"); break } } } Output : Program akan menampilkan nilai a = 2 saja, karena kondisi bernilai benar, perhatika break dibelakang pernyataan, jika break ini dihapus, maka semua pernyataan akan dijalankan. Break digunakan untuk keluar dari switch-case saat 1 pernyataan sudah dijalankan Soal praktikum: 1. Tuliskan algoritma untuk mencari sisi miring dari suatu segitiga siku-siku jika diketahui diketahui panjang dua sisi yang membentuk sudut siku-siku. Algoritma: a. Tentukan nilai a, b b. Hitung C = c. Tampilkan C Psuodocode a. Input (a,b)

b. C c. Output (c) Flowchart

start

a.b

C=

end

2. Tuliskan algoritma untuk menampilkan banyaknya pecahan uang paling efisien dari sejumlah uang yang di inputkan oleh pengguna. Pecahan uang yang digunakan: 100.000, 50.000, 20.000, 10.000, 5.000, 2.000, 1.000, 500, 200, dan 100. Algoritma a. Tentukan uang b. Hitung p100r = uang/100000 Hitung sp100r = uang p100r*100000 Hitung p50r = sp100r/50000 Hitung sp50r = sp100r p50r*50000 Hitung p20r = sp50r/20000 Hitung sp20r = sp50r p20r*20000 Hitung p10r = sp20r/10000 Hitung sp10r = sp20r p10r*10000 Hitung p5r = sp10r/5000 Hitung sp5r = sp10r p5r*5000 Hitung p1r = sp5r/1000 Hitung sp1r = sp5r p1r*1000 Hitung p0,5r = sp1r/500 Hitung sp0,5r = sp1r p0,5r*500

c. a. b.

c.

Hitung p0,1r = sp0,5r/100 Hitung sp0,1r = sp0,5r p0,1r*100 Tampilkan p100r, p50r, p20r, p10r, p5r, p1r, p0,5r, p0,1r Pseudocode Input (uang) p100r uang/100000 sp100r uang p100r*100000 p50r sp100r/50000 sp50r sp100r p50r*50000 p20r sp50r/20000 sp20r sp50r p20r*20000 p10r sp20r/10000 sp10r sp20r p10r*10000 p5r sp10r/5000 sp5r sp10r p5r*5000 p1r sp5r/1000 sp1r sp5r p1r*1000 p0,5r sp1r/500 sp0,5r sp1r p0,5r*500 p0,1r sp0,5r/100 sp0,1 sp0,5r p0,1r*100 output (p100r, p50r, p20r, p10r, p5r, p1r, p0,5r, p0,1r) flowchart

start

uang

p100r = uang/100000 sp100r = uang p100r*100000 p50r = sp100r/50000 sp50r = sp100r p50r*50000 p20r = sp50r/20000 sp20r = sp50r p20r*20000 p10r = sp20r/10000 sp10r = sp20r p10r*10000 p5r = sp10r/5000 p10r p5r*5000 p1r = sp5r/1000 sp1r = sp5r p1r*1000 p0,5r = sp1r/500 sp0,5r = sp1r p0,5r*500 Hitung p0,1r = sp0,5r/100 Hitung sp0,1r = sp0,5r p0,1r*100

p100r, p50r, p20r, p10r, p5r, p1r, p0,5r, p0,1r

end

3. Buat algoritma untuk mengkonversi bilangan dalam format desimal menjadi biner. Algoritma a. Baca des b. 1. Desimal=des/2 2. Sisa= desimal%2 3. d= d*2 4. biner= biner + sisa * d 5. jika desimal 0 pergi ke c 6. pergi ke 1

c. cetak desimal Pseudocode a. input (des) b. Desimal des/2 c. Sisa desimal%2 d. D= d*2 e. Biner biner+sisa*d f. If desimal == 0 output (desimal) g. Else kembali ke b Flowchart
START

Input desimal = 45 10

Proses
45 10 = 45 : 2 = 22 + sisa 22 : 2 = 11 + sisa 11 : 2 = 5 + sisa 5 : 2 = 2 + sisa

1 0 1 1

2:2

= 1 + sisa 0

Tampilkan hasil 01101 10 Print Selesai 4. Untuk menentukan bonus pegawai, berdasarkan ketentuan yang diberikan oleh bagian personalia dan keuangan sebagai berikut : Pegawai perusahaan digolongkan menjadi dua golongan, yaitu staf dan non staf. Staf akan mendapatkan bonus sebesar 1 juta rupiah dengan syarat bahwa ia telah bekerja paling tidak 5 tahun dan umurnya sudah mencapai 50 tahun; staf yang bekerja kurang dari 5 tahun dan berapapun umurnya, hanya mendapat bonus sebesar Rp. 500.000. Pegawai non staf yang telah bekerja lebih dari 5 tahun akan mendapat bonus sebesar Rp. 400.000 jika berumur lebih dari 50 tahun sedangkan pegawai non staf yang berumur kurang dari 50 tahun hanya mendapat bonus Rp. 250.000. Pegawai staf yang umurnya kurang dari 50 tahun akan mendapat bonus Rp. 300.000. Algoritma a. Tentukan l,u,s,ns b. Bonus = 1. Jika ns

2. Jika l <= 5 & u <=50 3. cetak bonus 400 4. jika l>= 5 5. cetak bonus 250 6. jika s 7. Jika l <= 5 & u <=50 8. Cetak bonus 1jt 9. jika l<= 5 & u >= 50 10. cetak bonus 500 11. else s u>=50 12. cetak bonus 300 c. tampilkan bonus pseudocode a. Input (l,u,s,ns) b. Bonus = 1. Jika ns 2. Jika l <= 5 & u <=50 3. cetak bonus 400 4. jika l>= 5 5. cetak bonus 250 6. jika s 7. Jika l <= 5 & u <=50 8. Cetak bonus 1jt 9. jika l<= 5 & u >= 50 10. cetak bonus 500 11. else s u>=50 12. cetak bonus 300 c. Output (bonus) Flowchart

start

l,u,s,ns

If ns

If l <= 5 & u <=50

bonus 1jt

If l <= 5 & u <=50

If l<= 5 & u >= 50 bonus 400

bonus 500

bonus 250

bonus 300

end

5. Tarif pemasangan iklan baris di sebuah Surat Kabar ditentukan sebagai berikut : - Hari : Minggu, Senin, Selasa, Rabu, Kamis dan Jumat, per baris Rp. 33.000,- Hari : Sabtu, per baris Rp. 40.000,Buatlah algoritma untuk menghitung total biaya iklan baris yang harus dibayar oleh pengiklan. a. b. c. d. e. f. g. a. b. c. d. e. Algoritma Tentukan hari, jml Jika hari minggu- jumat Cetak hrg hari = 33000 Total = jml*hrghari Jika tidak Cetak hrghari 40000 Total = jml*hrghar Pseudocode Input (hari,jml) Jika hari = minggu, senin, selasa, rabu, kamis, jumat Hrghari = 33000 Jika tidak Hrghari = 40000

f. Total jml*hrghari g. Output (total)

Flowchart
start

Hari,jml

If hari = minggu senin, selasa, rabu, kamis, jumat

tidak

Hrghari= 40000

ya Hrghari=330 00

Total = jml*hrghari

total

end

6. Info Harga Tiket Masuk bioskop Surabaya City adalah sebagai berikut : - Senin Kamis : Rp 15.000,- Jumat s/d Minggu : Rp 35.000,- Hari Libur : Rp 35.000,Input : - Hari (Minggu, Senin, Selasa, Rabu, Kamis, Jumat atau Sabtu) - Libur atau Tidak Libur - Jumlah tiket yang dibeli Output : Total biaya tiket Algoritma a. Tentukan hari,jml,libur, tidak libur b. Jika hari = senin, selasa, rabu,kamis, jumat c. Jika libur harga = 35.000

d. e. f. g. h.

Jika tidak harga = 15.000 Jika hari = sabtu& minggu Harga = 35.000 Total = jml*harga Tampilkan total Pseudocode a. Input (hari,jml,libur, tidak libur) b. Jika hari = senin, selasa, rabu,kamis, jumat c. Jika libur harga = 35.000 d. Jika tidak harga = 15.000 e. Jika hari = sabtu& minggu f. Harga = 35.000 g. Total jml*harga h. Output(total) Flowchart
start

Hari,jml

If hari = senin, selasa, rabu, kamis, jumat

tidak

Harga=35000

ya

If hari1=libur

tidak

ya Hrghari=330 00

Total = jml*hrghari

total

end

7. Di sebuah perbelanjaan di Surabaya diadakan Pekan Diskon, dimana perhitungan bonus dihitung bertingkat untuk total belanja senilai : - Rp. 150.000,diskonnya : 10% - Rp. 275.000,diskonnya : 15% - Rp. 300.000,diskonnya : 20% - Rp. 400.000,- ke atas diskonnya : 25% Diskon tidak dihitung sebagai akumulasi dari diskon nilai belanja dibawahnya. Buatlah algoritma untuk menghitung berapa nilai yang harus dibayar oleh pelanggan dengan total nilai belanja tertentu bila disertakan pula perhitungan diskonnya. Input : Total nilai belanja. Output : Nilai Diskon (dalam rupiah/bukan persen), Nilai yang harus dibayar Algoritma a. Tentukan harga b. Jika harga<=400000 c. Hitung disc = harga*25/100 d. Jika harga <=300000 e. Hitung disc = harga*20/100 f. Jika harga <= 275000 g. Hitung disc = harga*15/100 h. Hitung disc harga<= 150000*10/100 i. Tampilkan disc

a. b. c. d. e. f. g. h. i.

Pseudocode Input (harga) Jika harga<=400000 disc harga*25/100 Jika harga <=300000 disc harga*20/100 Jika harga <= 275000 disc harga*15/100 disc harga<= 150000*10/100 output (disc) flowchart

start

harga

Harga<=400000

Disc=harga*25/100

Harga<=300000 dan harga>400000

Dic=harga*20/100

Harga<=275000 dan harga>300000

Disc=haga*15/100

Harga<=150000 dan harga>275000

Disc=harga*10/100

t disc Tidak dapat disc

end

8. Berikut ini adalah ketentuan untuk menghitung nilai, dan konversi menjadi nilai huruf. Ketentuannya: Nilai=((rata-rata tugas*30%)+(UTC*30%)+(UAC*40%)) Input = tugas1,tugas2,tugas3,UTC,UAC Output = Nilai Akhir dan Nilai Huruf. A AB B BC C D jika nilai > 80 dan nilai <= 100 jika nilai > 70 dan nilai <= 80 jika nilai > 65 dan nilai <= 70 jika nilai > 60 dan nilai <= 65 jika nilai > 55 dan nilai <= 60 jika nilai > 40 dan nilai <= 55

jika nilai > 0 dan nilai <= 40 algoritma a. tentukan tugas1,tugas2,tugas3,UTC,UAC b. hitung nilai = ((tugas1+tugas2+tugas3)/3*30/100) +(UTC*30/100)+(UAC*40/100) c. jika nilai > 80 dan nilai <= 100 d. cetak A e. jika nilai > 70 dan nilai <= 80 f. cetak AB g. jika nilai > 65 dan nilai <= 70 h. cetak B i. jika nilai > 60 dan nilai <= 65 j. cetak BC k. jika nilai > 55 dan nilai <= 60 l. cetak C m. jika nilai > 40 dan nilai <= 55 n. cetak D o. Cetak E Pseudocode a. Input (tugas1,tugas2,tugas3,UTC,UAC) b. nilai (((tugas1+tugas2+tugas3)/3*30/100) +(UTC*30/100)+(UAC*40/100) c. jika nilai > 80 dan nilai <= 100 d. output (A) e. jika nilai > 70 dan nilai <= 80 f. output (AB) g. jika nilai > 65 dan nilai <= 70 h. output (B) i. jika nilai > 60 dan nilai <= 65 j. output (BC) k. jika nilai > 55 dan nilai <= 60 l. output (C) m. jika nilai > 40 dan nilai <= 55 n. output (D) o. output (E) flowchart

start a Input tugas1,tugas 2,tugas3,UTC ,UAC Nilai = ((tugas1+tugas2+tug as3)/3*30/100) +(UTC*30/ 100)+(UAC*40/100) t

nilai > 55 dan nilai <= 60

Cetak C

nilai > 40 dan nilai <= 55 nilai > 80 dan nilai <= 100 y Cetak A t t

Cetak D

nilai > 70 dan nilai <= 80

Cetak E y Catak AB

nilai > 65 dan nilai <= 70

end y Cetak B

nilai > 60 dan nilai <= 65

Cetak BC

9. Berikut ini adalah tarif pemakaian Air PDAM Kota Surabaya Jumlah Pemakaian (m3) Harga/m3 Pemakaian I ( < 50 m3) Rp. 200,Pemakaian II ( 51 150 ) Rp. 500,Pemakaian III ( 151 300 ) Rp. 1.000,3 Pemakaian I V( > 300 m ) Rp.1.500,Input : Jumlah Pemakaian Output: Besar biaya yang harus dibayar Jumlah Pemakaian = 500 m3

Pemakaian I ( s/d 50 m3) Rp. 200,- * 50 = Rp. 10.000,Pemakaian II ( 51 150 ) Rp. 500,- * 100 = Rp. 50.000,Pemakaian III ( 151 300 ) Rp. 1.000,- * 150 = Rp. 150.000,3 Pemakaian IV( > 300 m ) Rp.1.500,- * 200 = Rp. 300.000,Biaya Total Rp. 510.000, algoritma a. tentukan pemakaian air b. jika pemakaian air <=50 c. hitung biaya = 200* pemakaian air d. jika pemakaian air <50 dan pemakaian air >=150 e. hitung biaya = 50*200 + (pemakaian air-50)*500 f. jika pemakaian air <150 dan pemakaian air >= 300 g. hitung biaya = 50*200 + 100*500+(pemakaian air-150)*1000 h. hitung biaya = 50*200+100*500+150*100(pemakaian air-300)*1500 i. tampilkan biaya pseudocode a. input (pa) b. jika pa<= 50 c. biaya 200* pa d. jika pa <50 dan pa >=150 e. biaya 50*200 + (pa-50)*500 f. jika pa <150 dan pa >= 300 g. biaya 50*200 + 100*500+(pa-150)*1000 h. biaya 50*200+100*500+150*100(pa-300)*1500 i. output(biaya) flowchart

start

Input pa

pa<= 50

biaya = 200* pa

pa <50 dan pa >=150

biaya = 50*200 + (pa-50)*500

pa <150 dan pa >= 300

biaya = 50*200 + 100*500+(pa150)*1000

t biaya = 50*200+100*500+1 50*100(pa300)*1500

Output biaya

end

10. Sebuah perusahaan kartu kredit memberikan cash back kepada nasabahnya berdasarkan jumlah nilai pemakaian kartu kredit selama sebulan. Nilai pemakaian cash back --------------------- ---------s.d 1.000.000 5% 1.000.000 10.000.000 6% 10.000.000 25.000.000 7% Diatas 25.000.000 8%

Ilustrasi: seorang nasabah yang total pemakaian selama sebulan 18.000.000, maka cash backnya= 5%x1.000.000+6%x9.000.000+7%x8.000.000 = 160.000 algoritma a. tentukan total b. jika total >= 1000000 c. hitung cb = 5/100*total d. jika total <1000000 dan total >= 10000000 e. hitung cb = 5/100*1000000 + 6/100* (total-1000000) f. jika total < 10000000 dan total >= 25000000 g. hitung cb = 5/100*1000000 + 6/100*9.000.000+7/100*(total-10000000) h. hitung cb =5/100*1000000 + 6/100*9.000.000+7/100*10000000+8/100*(total20000000) i. tampilkan cb pseudocode a. input (total) b. jika total >= 1000000 c. cb 5/100*total d. jika total <1000000 dan total >= 10000000 e. cb 5/100*1000000 + 6/100* (total-1000000) f. jika total < 10000000 dan total >= 25000000 g. cb 5/100*1000000 + 6/100*9.000.000+7/100*(total-10000000) h. cb 5/100*1000000 + 6/100*9.000.000+7/100*10000000+8/100*(total-20000000) i. output(cb) flowchart

start

Input total

total >= 1000000

cb = 5/100*total

total <1000000 dan total >= 10000000

cb = 5/100*1000000 + 6/100* (total1000000)

t cb = 5/100*1000000 + 6/ 100*9.000.000+7/ 100*(total10000000)

total < 10000000 dan total >= 25000000

t cb =5/100*1000000 + 6/ 100*9.000.000+7/ 100*10000000+8/ 100*(total20000000)

tampilkan cb

end

SOURCE CODE
4.1 Source Code & Output

4.2 Source Code & Output

4.3 Source Code & Output

4.4 Source Code dan Input

4.5 Source Code dan Output

4.6 Source Code dan Output

4.7 Source Code dan Output

4.8 Source Code dan Output

4.9 Source Code dan Output

4.10 Source Code dan Output

Referensi
http://adityarachmad1.blogspot.com/2011/12/dasar-pemrograman-java.html http://riskarisku.blogspot.com/2013/05/dasar-php.html http://ahmadrizal.wordpress.com/2008/11/10/dasar-dasar-pemograman-javadengan-netbeans/ http://farock-dna.blogspot.com/2012/01/cara-membuat-program-sederhana.html http://mahasiswabsi2010.blogspot.com/2011/09/pengenalan-dasarpemrograman.html file:///D:/TUGAS%20UNESA/DasPro/MODUL%202/Adam_NSATH%27s%20Blog%20% 20LANDASAN%20TEORI%20Pengukuran%20Kerja%20Operator.html http://wismarini.staff.unisbank.ac.id/2013/06/20/definisi-dasar-teori-algoritma-danpemrograman/ http://www.slideshare.net/stiqom/03-pseudocode-22814853 http://sindarku.wordpress.com/2009/06/24/karakteristik-algoritma/ http://tugas2kuliah.wordpress.com/2011/11/29/pengertian-algoritma-danpemograman/ http://rivsoe666.blog.unsoed.ac.id/2011/10/pengertian-algoritma-flow-chart-danpseudocode

Anda mungkin juga menyukai