banyak kekurangannya dan masih kalah dibandingkan Eclipse. Kemudian dimunculkanlah netbeans versi 5.0 yang berubah dan jauh lebih baik dibandingkan pendahulunya. Netbeans kemudian terus berkembang dan meluncurkan versi versi dengan fitur yang lebih baik sampai sekarang versi Netbeans yang terbaru adalah versi 7.0.1Persaingan antar IDE yang ketat tinggal menyisakan tiga buah IDE yaitu Netbeans, Eclipse, dan IntelijlDEA. Dari ketiga IDE ini masing masing mempunyai keunggulan dan kelemahan sendiri sehingga tetap dipakai sebagai pengembang aplikasi java dan akan terus berkembang menyesuaikan dengan kebutuhan pemakainya.Adapun kelebihan Netbeans IDE antara lain : Mendukung berbagai bahasa pemograman seperti java,C/C++,php, Berjalan pada multiplatform sistem operasi termasuk Windows, Linux, Mac OS, Solaris Berfungsi untuk pengembangan aplikasi mobile menggunakan bahasa Java Mendukung untuk pengembangan aplikasi web menggunakan PHP Mendukung permodelan perangkat lunak menggunakan UML Terdapat banyak modul untuk mengembangkan lebih lanjut Merupakan produk free(baca:bebas) tanpa ada batasan penggunaannya Merupakan produk open source (baca:kode sumber terbuka)
Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++,Cobol, Python, Perl, PHP, dan lain sebagainya. Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in. Elipse+AVR plugin, dengan tambahan plugin tersebut kita dapat memprogram mikrokontroler AVR menggunakan IDE ini, selain itu keuntungan menggunakan eclipse ialah dapat bekerja di berbagai sistem operasi seperti Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X. Nah sebelum menambahkan plugin ini kedalam eclipse temen2 perlu menginstal WINAVR dan AVR toolchain untuk mengaktifkan AVR GCC, informasi tersebut dapat temen2 lihat dilink berikut http://fahmizaleeits.wordpress.com/2013/02/16/avrstudio4-winavr-avr-gcc/ Eclipse : http://www.eclipse.org/downloads/ Eclipse Classic 3.7.2 (Indigo packages) :http://www.eclipse.org/downloads/packages/eclipse-classic-372/indigosr2 AVR pulgin: http://avreclipse.sourceforge.net/wiki/index.php/The_AVR_Eclipse_Plugin
Nah berikut link tutorial yang dapat membantu temen2 secara lebih detail untuk langkah-langkah meng-instal Eclipse+AVR plugin: http://awawa.hariko.com/eclipse_avr_en.html http://interactive-matter.eu/how-to/developing-software-for-the-atmel-avr-withavr-eclipse-avr-gcc-avrdude/ http://www.protostack.com/blog/2010/12/avr-eclipse-environment-onwindows/ on youtube channel : http://www.youtube.com/watch?v=A_neNE0-KUM
Dalam penulisan bahasa program, disarankan : 1. Huruf depan dari sebuah class atau method menggunakan huruf besar. 2. Menulis Komentar pada sebuah class atau method untuk memudahkan debug (pencarian kesalahan). Serta mempermudah orang lain membaca program kita. Dalam dunia nyata, programmer bekerja secara team, jadi di usahakan partner team mengerti apa yang anda buat dengan memberikan komentar pada setiap script yang anda tulis. 3. Membuat indentasi (jarak antara induk perintah dan anak perintah). Identasi sebisa mungkin dibuat standard, semisal pada contoh diatas, jarak antara tulisan class Welcome sebagai induk perintah dengan tulisan public sebagai anak perintah adalah 5 spasi. Sekali lagi, ini untuk mempermudah dalam pemahaman program. Pernyataan input dan output yang dimaksudkan disini merupakan pernyataan atau statement untuk mendapatkan input dari keyboard sedangkan untuk pernyataan atau statement output merupakan pernyataan untuk menampilkan sesuatu ke layar.
Statement keluaran pada JAVA menggunakan : System.out.print catatan : untuk menampilkan kelayar setelah selesai tidak akan berpindah baris, akibatnya perintah keluaran akan ditampilkan pada baris yang sama. System.out.println catatan : untuk menampilkan kelayar juga fungsinya hanya perintah keluarannya saja saat ditampilkan , akan ditampilakn pada baris berikutnya.
Untuk meng-input sebuah nilai ke variabel di java menggunakan kelas Scanner. kelas ini sudah disediakan mulai dari JAVA versi 1.5 contoh cari menggunakan kelas Scanner : import java.util.Scanner; public class Masukan { public static void main (String args[]) {
Scanner input = new Scanner(System.in); int a; System.out.print(Masukkan Angka : ); a=input.nextInt(); System.out.println(Hasil :+a); } } hasil dari program saat di RUN : run: Masukkan Angka : 10 Hasil :10 BUILD SUCCESSFUL (total time: 5 seconds) Dalam input data sebenarnya ada beberapa jenis tipe data, dan dalam contoh program diatas penulis menggunakan input data bertipe integer(nextInt). Dibawah ini ada bebrapa jenis input data, yaitu sebagai berikut: 1. 2. 3. 4. 5. 6. nextString nextBoolean nextShort nextLong nextFloat nextdouble : untuk input tipe data string : untuk tipe boolean (benar atau salah) : input tipe data short integer : input tipe data long integer : input tipe data float : input tipe data double
OPERATOR MATEMATIKA Operator matematika adalah simbol yang digunakan untuk melakukan perhitungan matematika dasar. Operator yang umum digunakan antara lain : + penjumlahan / pembagian - pengurangan ^ perpangkatan * perkalian % persentase Contoh : nilai a di C2 = 20, nilai b di D2 = 5, maka rumus perkalian di E2 adalah =C2*D2
OPERATOR PERBANDINGAN Seperti artinya "Comparison" yaitu Perbandingan maka sudah lah jelas dan pasti fungsi dari operator perbandingan ini adalah untuk membandingkan antara dua pilihan nilai. Operator ini biasa digunakan pada struktur operasi if dan elseif. Operator ini selalu menghasilkan nilai TRUE ('BENAR') atau FALSE ('SALAH'). Untuk lebih jelasnya dapat diliha di Tabel berikut ini Perbandingan yang Beberapa Operator dipakai:
Operator f == k f k === f! = k
Deskripsi Benar jika f sama dengan k Benar jika f sama dengan k, dan mereka adalah dari jenis yang sama Benar jika f tidak sama dengan k Benar jika f tidak sama dengan k, atau mereka bukan dari jenis kang sama Benar jika f lebih besar dari k Benar jika f kurang dari k Benar jika f lebih besar dari atau sama dengan k Benar jika f kurang dari atau sama dengan k Benar jika f tidak sama dengan k, atau mereka bukan dari jenis kang sama
Contoh 5 == 8 returns false 5 === "5"returns true 5! = 8 returns true 5<>8 returns true 5> 8 returns false 5<8 returns true 5> = 8 returns false 5<=8 returns true 5!=="5"returns false
Tidak sama Lebih besar dari Kurang dari Lebih besar dari atau sama dengan Kurang dari atau sama dengan Tidak identik
f! == k
OPERATOR LOGIKA Operator logika itu adalah operator yang digunakan untuk membandingkan dua nilai boolean. Biasanya digunakan untuk menggabungkan hasil dari operator pembanding. Ada dua operator di operator logika :
or (||)
true && true = true true && false = false false && true = false false && false = false
true || true = true true || false = true false || true = true false || false = false
Jadi dalam operator logika && hanya akan menghasilkan true jika kedua nilai true dan operator logika || akan menghasilkan false jika kedua nilai false (kebalikannya). /** * Copyright (c) 2012 @khannedy and/or its affiliates. All rights reserved. * @khannedy PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */ package khannedy.pakarjava.javadasar; /** * * @author Eko Kurniawan Khannedy */ public class OperatorLogika { /** * @param args the command line arguments */ public static void main(String[] args) { boolean hasil;
hasil = true && true; System.out.println(hasil); hasil = true && false; System.out.println(hasil); hasil = false && true; System.out.println(hasil); hasil = false && false; System.out.println(hasil); hasil = true || true; System.out.println(hasil); hasil = true || false; System.out.println(hasil); hasil = false || true; System.out.println(hasil); hasil = false || false; System.out.println(hasil); } }
D.TINGKATAN OPERATOR
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 Operator Keterangan + 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 == != > >= 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 Operator Logika memiliki satu atau lebih operan boolean yang menghasilkan nilai boolean. Ada enam operator logika yaitu Logical Operator Keterangan ! 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 && : Hasil eksekusi : 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; 8
PERCABANGAN IF, IF-ELSE, ELSE-IF, dan 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 switch-case 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
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. Buat algoritmanya? 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. Input : Output - Hari (Minggu, Senin, Selasa, Rabu, Kamis, Jumat atau Sabtu) - Jumlah baris yang dipakai : Total biaya iklan yang harus dibayar pengiklan
Tuliskan algoritma untuk kasus diatas dalam bentuk flowchart. 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 Pertanyaan: Buat algoritma untuk menghitung total biaya tiket . 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 Output : Total nilai belanja. : Nilai Diskon (dalam rupiah/bukan persen), Nilai yang harus dibayar
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 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
D E
jika nilai > 40 dan nilai <= 55 jika nilai > 0 dan nilai <= 40
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) Pemakaian II ( 51 150 ) Pemakaian III ( 151 300 ) Pemakaian IV( > 300 m3 ) Biaya Total
Rp. 200,- * 50 = Rp. 500,- * 100 = Rp. 1.000,-* 150 = Rp.1.500,- * 200 =
Pertanyaan: Buat algoritma untuk kasus diatas. 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 Buat algoritma untuk menghitung cash back yang diterima nasabah berdasarkan nilai pemakaian kartu kredit.
Psuodocode
a.b
C=
end
2. 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
Hitung p0,1r = sp0,5r/100 Hitung sp0,1r = sp0,5r p0,1r*100 c. Tampilkan p100r, p50r, p20r, p10r, p5r, p1r, p0,5r, p0,1r
Pseudocode a. Input (uang) b. 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 c. 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
end
Pseudocode a. b. c. d. e. f. g. input (des) Desimal des/2 Sisa desimal%2 D= d*2 Biner biner+sisa*d If desimal == 0 output (desimal) Else kembali ke b
Flowchart 4. 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
bonus 1jt
bonus 500
bonus 250
bonus 300
end
5. Algoritma a. Tentukan hari, jml b. Jika hari minggu- jumat c. Cetak hrg hari = 33000 d. Total = jml*hrghari e. Jika tidak f. Cetak hrghari 40000 g. Total = jml*hrghar
Pseudocode a. b. c. d. e. f. g. Input (hari,jml) Jika hari = minggu, senin, selasa, rabu, kamis, jumat Hrghari = 33000 Jika tidak Hrghari = 40000 Total jml*hrghari Output (total)
Flowchart
start
Hari,jml
tidak
Hrghari= 40000
ya Hrghari=330 00
Total = jml*hrghari
total
end
6. Algoritma a. Tentukan hari,jml,libur, tidak libur b. Jika hari = senin, selasa, rabu,kamis, jumat
c. d. e. f. g. h.
Jika libur harga = 35.000 Jika tidak harga = 15.000 Jika hari = sabtu& minggu Harga = 35.000 Total = jml*harga Tampilkan total
Pseudocode a. b. c. d. e. f. g. h. Input (hari,jml,libur, tidak libur) Jika hari = senin, selasa, rabu,kamis, jumat Jika libur harga = 35.000 Jika tidak harga = 15.000 Jika hari = sabtu& minggu Harga = 35.000 Total jml*harga Output(total)
Flowchart
start
Hari,jml
tidak
Harga=35000
ya
If hari1=libur
tidak
ya Hrghari=330 00
Total = jml*hrghari
total
end
7. 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
Pseudocode a. b. c. d. e. f. g. h. i. 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
Dic=harga*20/100
Disc=haga*15/100
Disc=harga*10/100
end
8. 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. g. h. i. j. k. l. m. n. o.
cetak AB jika nilai > 65 dan nilai <= 70 cetak B jika nilai > 60 dan nilai <= 65 cetak BC jika nilai > 55 dan nilai <= 60 cetak C jika nilai > 40 dan nilai <= 55 cetak D
Cetak E
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
Cetak C
nilai > 40 dan nilai <= 55 nilai > 80 dan nilai <= 100 y Cetak A t t
Cetak D
Cetak E y Catak AB
end y Cetak B
Cetak BC
9. 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. c. d. e. f. g. h. i.
jika pa<= 50 biaya 200* pa jika pa <50 dan pa >=150 biaya 50*200 + (pa-50)*500 jika pa <150 dan pa >= 300 biaya 50*200 + 100*500+(pa-150)*1000 biaya 50*200+100*500+150*100(pa-300)*1500 output(biaya)
flowchart
start
Input pa
pa<= 50
biaya = 200* pa
Output biaya
end
10. 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. b. c. d. e. f. g. h. i. input (total) jika total >= 1000000 cb 5/100*total jika total <1000000 dan total >= 10000000 cb 5/100*1000000 + 6/100* (total-1000000) jika total < 10000000 dan total >= 25000000 cb 5/100*1000000 + 6/100*9.000.000+7/100*(total-10000000) cb 5/100*1000000 + 6/100*9.000.000+7/100*10000000+8/100*(total-20000000) output(cb)
flowchart
start
Input total
cb = 5/100*total
tampilkan cb
end
No.2
No.3
No. 4
5. Referensi
http://tentangjaket.blogspot.com/2011/07/aturan-penulisan-contoh-hasil-program.html
http://fahmizaleeits.wordpress.com/tag/eclipse-adalah/ http://agungbudisantoso24.wordpress.com/2012/02/06/statementi-input-dan-output-pada-java/ http://pakarjava.wordpress.com/2012/05/25/operator-logika/ http://fikiwan.blogspot.com/2012/02/operator-perbandingan-comparison.html