tugas modul 2 daspro reza.pdf
DESCRIPTION
TUGAS MODUL 2PRAKTIKUM DASAR PEMROGRAMANTRANSCRIPT
TUGAS MODUL 2 PRAKTIKUM DASAR PEMROGRAMAN
Oleh :
Mohammad Reza Nugraha
NIM : 135623076
PROGRAM STUDI D3 MANAJEMEN INFORMATIKA,
JURUSAN TEKNIK ELEKTRO, FAKULTAS TEKNIK,
UNIVERSITAS NEGERI SURABAYA
DASAR TEORI
NETBEANS
Netbeans adalah salah satu aplikasi IDE yang digunakan programmer untuk menulis,
mengompile, mencari kesalahan, dan menyebarkan program.netbeans ditulis dalam bahasa
java namun dapat juga mendukung bahasa pemrogramman lain. program ini bebas digunakan
Fitur-fitur pada netbeans
· Smart code completion : mengusulkan nama variable dari suatu tipe, melengkapi
keyword, dan mengusulkan tipe parameter dari method
· Menggunakan code generator : dengan menggunakan fitur ini kita dapat meng-generate
constructor, setter and getter method, dll.
· Error stripe : fitur yang menandai baris yang error dengan menghiglight merah.
· Bookmarking : fitur yang digunakan untuk menandai baris yang suatu saat hendak kita
modifikasi
· go to commands : fitur yang digunakan untuk jump ke deklarasi variable, source code
atau file yang ada pada project yang sama.
Database yang didukung Netbeans
· JDBC merupakan spesifikasi standar dari javasoft API yang memungkinkan program
java untuk mengakses sistem database manajemen.
· JDBC API terdiri dari satu set interface dan kelas yang ditulis dengan bahasa
pemrogramman java.
· ojdbc (oracle java database conectivity) adalah driver yang menghubungkan program
java dan oracle
· mysql-connector-java adalah driver yang menghubungkan program java dan oracle
· JDBC-ODBC
· mySQL-server
Netbeans sebagai IDE ditujukan untuk memudahkan pemrograman Java. Pada bulan Februari
2006 para instruktur Java dari Sun Microsystem mengikuti training untuk beralih dari
pemrograman Java manual (memakai editor teks dan command prompt) ke pemrograman
GUI dengan Netbeans.
Netbeans berbasis visual dan event-driven. Sama seperti IDE lainnya, misal Borland Delphi
dan Microsoft Visual Studio. Netbeans mencakup compiler, builder dan debugger internal.
Hal ini memudahkan proses pasca perancangan program. Proses deployment atau tes dapat
dilakukan dengan Netbeans J2SE, J2EE, J2ME di Netbeans.
Netbeans seperti juga konsep Java sangat fleksibel. Sepanjang library Java tersedia, maka kita
dapat melakukan pemrograman untuk jenis aplikasi apapun. Kita dapat membuat aplikasi
dekstop (J2SE). Pemrograman web dan enterprise (J2EE) dapat dilakukan secara visual :
· Koneksi server database melalui JDBC dapat dilakukan dari Netbeans, baik pada saat
perancangan maupun deployment program.
· Pembuatan komponen beans.
· Pembuatan Java Server Pages (JSP), web module (servicelocator dan servlet), web
services dengan menggunakan wizard yang telah disediakan.
Netbeans juga menyertakan paket web-server Apache Jakarta Tomcat, Sun Java System
Application Server, GlassFish dll. Server ini dapat diakses dari dalam Netbeans, baik pada
saat perancangan maupun saat deployment aplikasi web. Untuk membuat aplikasi mobile
(MIDP), MIDlet dapat dirancang dengan Netbeans. Pada Netbeans 5.5 kita perlu menginstal
Netbeans Mobility Pack, tetapi untuk Netbeans min versi 6.0, aplikasi MIDP, sudah ada.
Netbeans 5.0 telah mendukung JDK 5.0, sedangkan Netbeans 5.5 telah mendukung JDK 6.0.
Instal terlebih dulu min JDK 1.5. Jalankan file installer Netbeans 6.5 lalu ikuti langkah-
langkah instalasi wizard.
· Langkah pertama, perhatikan lisensi SPL (Sun Public License). Baca dengan teliti
untuk memahami apa yang boleh dan apa yang tidak boleh dilakukan dalam pemakaian
program ini.
· Langkah kedua, tentukan direktori instalasi.
· Langkah ketiga, wizard melakukan pencarian otomatis terhadap JDK yang sudah
terinstal dalam komputer. Jika berhasil maka JDK akan ditampilkan beserta direktori, jika
tidak ditemukan maka kita dapat menentukan direktori dari JDK secara manual.
· Langkah keempat, wizard akan melakukan instalasi Netbeans di lokasi direktori yang
ditentukan. Proses instalasi ini akan memerlukan beberapa menit.
· Proses instalasi akan membuatkan icon dalam menu Start. Kita dapat menjalankan
Netbeans melalui icon ini.
ECLIPSE
Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan
perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini
adalah sifat dari Eclipse:
Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris,
AIX, HP-UX dan Mac OS X.
Mulit-language: 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.
Multi-role: 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.
PENULISAN PROGRAM DI JAVA, INPUT, OUTPUT
Proses penulisan dan pembacaan data sering kita sebut dengan proses input dan output,
dimana penulisan data berarti mengalirkan data ke output dan menerima atau mendapatkan
data dari input.
A. Stream
Stream merupakan dasar operasi input-output ( I/O ) dalam Java yang menggunakan
package java.io sebagai package utama. Stream adalah representasi abstrak dari input dan
output device, dimana aliran bytes akan ditransfer seperti file dalam harddisk, file pada
sistem remote atau printer. Kita dapat membaca data dari input stream, yang dapat berupa
file, keyboard atau komputer remote. Sedangkan untuk operasi penulisan berarti menulis data
pada output stream. Package java.io mendukung dua tipe stream, yaitu binari dan karakter
stream. Binari merupakan data berupa bit atau data binari, sedangkan karakter adalah tipe
khusus untuk pembacaan dan penulisan teks/karakter.
B. Input Stream
Subclass-subclass dari inputStream adalah :
AudioInputStream,
ByteArrayInputStream,
FileInputStream,
FilterInputStream,
PipedInputStream,
SequenceInputStream, dan
StringBufferInputStream.
Dua method utama dari InputStream adalah :
Read. Method ini digunakan untuk membaca stream.
Close. Method ini digunakan untuk menutup koneksi input stream.
InputStream.java
import java.io.*;
class InputStream {
public static void main(String[] args) throws IOException {
byte[] data = new byte[10];
System.out.print("Ketik 10 buah karakter :");
System.in.read(data);
System.out.print("Karakter yang Anda ketik yaitu : ");
for(int i=0;i<data.length;i++) {
System.out.print((char)data[i]); }
C. Output Stream
Subclass-subclass dari outputStream adalah :
ByteArrayOutputStream : digunakan untuk menuliskan stream menjadi byte array.
FileOutputStream : digunakan untuk menulis pada file
FilterOutputStream : merupakan superclass dari subclass-subclass seperti
DataOutputStream, BufferOutputStream, PrintStream, CheckedOutputStream
ObjectOutputStream : digunakan untuk menuliskan objek pada OutputStream.
PipedOutputStream : digunakan untuk menjadi output dari PipedInputStream.
Sebagian method-method OutputStream adalah :
Voidclose()
Menutup output stream yang aktif dan melepaskan sumber daya terkait dengan
stream tersebut
Void flush()
Melakukan flush output stream dan memaksa semua byte buffer untuk dituliskan
keluar
Void write(byte[] b)
Menulis sebanyak b.length dari byte array ke output stream
Void write(byte[] b, int off, int len)
Menuliskan sebanyak len byte dari byte array b dimulai dari index off
import java.io.*;
class OutputStream {
public static void main(String[] args) throws IOException {
byte[] data = {'a','b','c','d','e','f','g'};
System.out.write(data,3,4);
System.out.write('\n'); //pindah baris
System.out.write(data); //tulis semua isi array data }
}
D. DataOutputStream
DataOutputStream merupakan class yang menyediakan cara praktis untuk
menuliskan
tipe data primitif ke output stream. Sebagian method DataOutputStream adalah :
writeDouble : berfungsi menuliskan data bertipe double ke output stream
writeInt : berfungsi menuliskan data bertipe integer ke output stream
writeBoolean : berfungsi menuliskan data boolean ke output stream
writeUTF : berfungsi menuliskan data string menggunakan encoding UTF-8 yang
tidak tergantung pada mesin.
E. DataInputStream
DataInputStream berfungsi untuk saling melengkapi dengan DataOutputStream,
yaitu
untuk mendapatkan data yang ditulis dengan DataOutputStream. Sebagian method
DataInputStream adalah :
ReadDouble() : membaca data bertipe double
readInt() : membaca data bertipe integer
readBoolean() : membaca data Boolean
readUTF() : membaca data dengan encoding UTF-8
F. Statement Masukan (Input)
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);
}
}
F. Statement Keluaran (Output)
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.
OPERATOR: ASSIGMENT, MATEMATIKA, PERBANDINGAN,
LOGIKA
Assignment Operator.
Assignment operator merupakan operator yang digunakan untuk memberi nilai ke suatu
variabel atau variabel ke variabel lain.menggunakan simbol titik dua diikuti oleh tanda sama
dengan (:=).
Operator Matematika
Operator Matematika yaitu operator yang digunakan untuk operasi matematis terhadap
suatu nilai data. Ada beberapa operator aritmatika yang dapat digunakan dalam pemrograman
antara lain :
a) Pangkat ( Eksponen) Pemangkatan atau eksponen banyak digunakan dalam operasi
komputer, eksponen mempunyai operator carret( ) dan sintaksnya adalah sebagai
berikut :
Eksponen = bilanngan1 bilangan2
Contoh :
Eksponen = 5 2 hasilnya = 25
Eksponen = 3 2 hasilnya = 9
Eksponen = 2 -2 hasilnya = 0,25
b) Perkalian. Perkalian digunakan untuk mengalikan dua buah bilangan atau lebih,
simbolnya (*) dan sintaksnya dalam pemrograman adalah :
Perkalian = bilangan1 * bilangan2
Contoh :
Perkalian = 2 * 2 hasilnya = 4
Perkalian = 5 * 5 hasilnya = 25
c) Pembagian. Pembagian digunakan untuk melakukan operasi pembagian terhadap
bilangan, simbolnya (/) dan sintaksnya :
Pembagian = bilangan1 / bilangan2
Contoh :
Pembagian = 4 / 2 hasilnya = 2
Pembagian = 5 / 2 hasilnya = 2,5
d) Pembagian Integer. Pembagian Integer pada dasarnya sama dengan pembagian biasa,
tetapi hasil yang diperoleh adalah bilangan integer atau bilangan bulat. Simbolnya (\)
dan sintksnya :
PembagianInt = bilangan1 \ bilangan2
Contoh :
PembagianInt = 4 \ 2 hasilnya = 2
PembagianInt = 5 \ 2 hasilnya = 2
e) Sisa Bagi (Modulus). Sisa bagi (Mod) digunakan untuk mendapatkan sisa dari
pembagian dua buah bilangan, sintaksnya :
Sisa = bilangan1 Mod bilangan2
Contoh :
Sisa = 4 Mod 2 hasilnya = 0
Sisa = 5 Mod 2 hasilnya = 1
f) Penjumlahan. Penjumlahan (+) digunakan untuk melakukan operasi penjumlahan
pada bilangan, sintaksnya :
Penjumlahan = bilangan1 + bilangan2
Contoh :
Penjumlahan = 4 + 2 hasilnya = 6
Penjumlahan = 5 + 5 hasilnya = 10
g) Pengurangan. Pengurangan (-) digunakan untuk melakukan operasi pengurangan
terhadap bilangan, sintaksnya :
Pengurangan = bilangan1 – bilangan2
Contoh :
Pengurangan = 4 – 2 hasilnya = 2
Pengurangan = 5 – 2 hasilnya = 3
h) Penggabungan String ( Concat ). Penggabungan string, simbolnya (&) digunakan
untuk menggabungkan dua buah string. sintaksnya :
String = string1 & string2
Contoh :
String = harry & potter hasilnya = harrypotter
String = 5 & 6 hasilnya = 56
OPERATOR PERBANDINGAN
Operator perbandingan berguna untuk membandingkan dua nilai atau lebih, atau bisa juga
digunakan untuk membandingkan nilai antar variabel, dimana hasil perbandingan tersebut
akan menghasilkan nilai true atau false. Nilai variabel atau nilai yang dibandingkan pada
kondisi if atau statement condition ini disebut dengan operand. Supaya lebih jelas saya akan
memberikan contoh.
<?php
$a = 10;
$b = 5;
if ($a > $b)
{
……
}
?>
Yang dimaksud dengan operand adalah $a dan $b. Kedua variabel tersebut disebut
operand karena kedua variabel tersebut digunakan untuk melakukan perbandingan. Perintah
if tersebut dapat dibaca apakah variabel $a lebih besar dari variabel $b ?. Jika iya maka
jalankan perintah dibawah perintah if. Nach gimana udah jelas kan mengenai apa yang
dimaksud dengan operand.
Berikutnya saya akan menjelaskan operator apa saja yang dapat digunakan untuk
melakukan perbandingan pada perintah if di php. Sebenarnya operator perbandingan ini tidak
saja dapat digunakan untuk melakukan perbandingan pada perintah if di php. Operator
perbandingan ini juga dapat digunakan pada perintah perulangan pada php. Namun untuk
lebih mudahnya kita pelajari dulu penerapan operator ini pada perintah if di php. Berikut ini
merupakan operator perbandingan yang dapat digunakan di php
Operator Deskripsi Contoh Keterangan
==
===
sama dengan
adalah persis sama
dengan (nilai dan jenis)
x == 8 adalah palsu
x == 5 adalah benar
=== x 5 adalah benar
x === “5″ adalah
palsu
disebut juga sebagai operator
Equality. Perbandingan
menggunakan operator ini akan
mengembalikan nilai true jika
kedua operand memiliki nilai
sama, apabila tidak maka akan
mengembalikan nilai false.
disebut juga sebagai operator
Identical. Operator ini
digunakan untuk
membandingkan apakah kedua
operand identik. Yang
! =
>
<
> =
tidak sama
lebih besar dari
kurang dari
lebih besar dari atau
sama dengan
x! = 8 adalah benar
x> 8 adalah palsu
x <8 adalah benar
x> = 8 adalah palsu
dimaksud dengan identik disini
adalah kedua operand memiliki
nilai dan tipe data yang sama.
disebut juga sebagai operator
Inequality. Perbandingan
menggunakan operator ini akan
mengembalikan nilai true jika
kedua operand memiliki nilai
berbeda, apabila tidak maka
akan mengembalikan nilai
false.
Operator ini digunakan untuk
membandingkan apakah
operand yang berada disebelah
kiri memiliki nilai lebih besar
daripada operand yang
disebelah kanan.
Operator ini digunakan untuk
membandingkan apakah
operand yang berada disebelah
kiri memiliki nilai lebih kecil
daripada operand yang
disebelah kanan.
Operator ini digunakan untuk
membandingkan apakah
operand yang berada disebelah
kiri memiliki nilai lebih besar
sama atau sama dengan
operand yang disebelah kanan.
<= kurang dari atau sama
dengan
x <= 8 adalah benar Operator ini digunakan untuk
membandingkan apakah
operand yang berada disebelah
kiri memiliki nilai lebih besar
atau sama dengan operand
yang disebelah kanan.
OPERATOR LOGIKA
Operator logika digunakan untuk menentukan logika antara variabel atau nilai.Mengingat
bahwa x = 6 dan y = 3, tabel di bawah ini menjelaskan operator logika:
Operator Deskripsi Contoh
&&
||
!
And
Or
Not
(x < 10 && y > 1) is true
(x==5 || y==5) is false
!(x==y) is true
TINGKATAN OPERATOR
Tabel pada halaman berikut akan memperlihatkan kedudukan dari setiap operator
terhadap operator lainnya, dan bagaimana arah pengeksekusian dari suatu pernyataan yang
mengandung operator tersebut
Operator Evaluasi
( ) [ ] . kiri ke kanan
! ~ ++ -- + - * & (type) sizeof kanan ke kiri
* / % kiri ke kanan
+ - kiri ke kanan
<< >> kiri ke kanan
< <= > >= kiri ke kanan
== != kiri ke kanan
& kiri ke kanan
kiri ke kanan
| kiri ke kanan
&& kiri ke kanan
|| kiri ke kanan
? : kanan ke kiri
= += -= *= /= %= &= = |= <<= >>= kanan ke kiri
, kiri ke kanan
Sebagai contoh, operator binary + dan - mempunyai kedudukan yang lebih tinggi
dibandingkan dengan operator !=, dan operator & mempunyai kedudukan yang lebih tinggi
dibandingkan dengan operator &&.
Catatan :
Operator unary +, -, dan * mempunyai kedudukan yang lebih tinggi dibandingkan dengan
bentuk binary-nya.
Kedudukan operator bitwise &, , dan | lebih rendah dibandingkan dengan operator ==
dan !=. Dengan demikian, pernyataan seperti : if ( (x & MASK) == 0 ) ...... harus
menggunakan tanda kurung seperti pada bentuk di atas agar memperoleh hasil yang
diinginkan.
PERCABANGAN (IF, IF....ELSE, IF...ELSEIF...., SWITCH)
Struktur Selection / Percabangan adalah struktur yang dihadapkan pada proses pemilihan
untuk menentukan instruksi berdasarkan syarat atau kondisi tertentu . Struktur Selection
merupakan penguji yang dilakukan untuk memilih salah satu atau beberapa alternative yang
tersedia . Struktur Selection dua buah kondisi yaitu benar ( True ) dan salah ( False) . Struktur
Selection mempunyai 4 perintah percabangan , yaitu : if , if…..else , if…else if, dan switch.
Untuk lebih jelasnya silakan lihat penjabaran masing – masing perintah percabangan dibawah
ini :
Perintah if :
Perintah if digunakan untuk menjalankan satu atau lebih perintah berdasarkan suatu
kondisi. Contoh penulisan:
if (kondisi)
{
Statement;
}
Perintah if….else :
Perintah if…else digunakan untuk memilih salah satu dari 2 pernyataan yang ditentukan .
Perintah ini akan menjalankan perintah tertentu jika TRUE dan akan menjalankan perintah
tertentu jika FALSE .Contoh penulisan :
if (kondisi)
{
Statement_1;
}
else
{
Statement_2;
}
Perintah if ….else if:
Perintah else if digunakan untuk menjalankan suatu pernyataan dengan melibatkan lebih dari
satu kondisi ( banyak kondisi)
Contoh penulisan :
if (kondisi_1)
{
Statement_1;
}
else if (kondisi_2)
{
Statement_2;
}
else
{
Statement_3;
}
Perintah switch :
Perintah switch digunakan sebagai alternative lpengganti dari perintah if…else if .
perintah switch akan menyeleksi kondisi yang diberikan dan membandingkan hasilnya
dengan konstanta – konstanta yang ada pada case . Jika case sama dengan kondisi , maka
system akan menjalankan perintah tersebut dan akan berhenti pada perintah break.
Contoh penulisan :
switch (kondisi)
{
case konstanta_1:
statement_1;
break;
case konstanta_2:
statement_2;
break;
default:
statement_3;
}
SOAL PRAKTIKUM
1.1 Algoritma untuk mencari sisi miring dari suatu segitiga siku-siku
Algoritma :
a) Input a, dimisalkan 2
b) Input b, dimisalkan 3
c) Proses
d) Tampilkan hasil (c)
e) Print
f) Selesai
1.2 Algoritma untuk menampilkan banyaknya pecahan uang paling efisien
Algoritma :
a) menentukan input (uang), dimisalkan uang berjumlah Rp 125.500
b) Hitung pecahan 100.000 : = 1
c) Hitung pecahan 50.000 : = 0
d) Hitung pecahan 20.000 : = 1
e) Hitung pecahan 10.000 : = 0
f) Hitung pecahan 5.000 : = 1
g) Hitung pecahan 2.000 : = 0
h) Hitung pecahan 1.000 : = 0
i) Hitung pecahan 500 : = 1
j) Hitung pecahan 200
: =0
k) Hitung pecahan 100
: =0
l) Hasil (1010100100)
m) Print
n) Selesai
1.3 Algoritma untuk mengkonversi bilangan dalam format desimal menjadi biner
Algoritma :
a) input desimal, dimisalkan desimal 4510
b) Proses bagi dua ambil sisa pembagian
156 10
156 : 2 = 78 sisa 0
78 : 2 = 39 sisa 1
39 : 2 = 19 sisa 1
19 : 2 = 9 sisa 1
9 : 2 = 4 sisa 0
4 : 2 = 2 sisa 0
2 : 2 = 1 sisa 1
c) Tampilkan hasil 10011102 (ditulis dr bawah ke atas)
d) Print
e) Selesai
1.4 Algoritma untuk bonus pegawai
Algoritma :
a) Input Select Case Status Pegawai
b) Input Case Status Staff
c) If MasaKerja >= 5 Then
d) If Umur >= 50 Then
e) Bonus = 1000000
f) Else
g) Bonus = 300000
h) End If
i) Else
j) Bonus = 500000
k) End IF
l) Case Else
m) If MasaKerja >= 5 Then
n) If Umur >= 50 Then
o) Bonus = 400000
p) Else
q) Bonus = 250000
r) End If
s) Else
t) Bonus = 250000
u) End IF
v) End Select
1.5 Algoritma untuk menghitung total biaya iklan baris yang harus dibayar oleh pengiklan
Algoritma :
a) Input Hari Minggu, Senin, Selasa, Rabu, Kamis, Jumat Rp 33.000/ baris
b) Input Hari Sabtu Rp 40.000/ baris
c) Input jml baris minggu s/d jum‟at = 50
Input jml baris, Hari Sabtu =12
d) Proses, Jika Hari Minggu, Senin, Selasa, Rabu, Kamis, Jumat Rp 33.000/ baris
Jika Hari Sabtu Rp 40.000/ baris
e) Harga*jml baris
f) Tampilkan hasil
g) Print
h) Selesai
1.6 Algoritma untuk menghitung total biaya tiket .
a) Input Hari Senin, Selasa, Rabu, Kamis Rp 15.000
b) Input Hari Jum‟at, sabtu, mingggu, Libur Rp 35.000
c) Input Jumlah tiket yang dibeli,
Dimisalkan juml.tiket Hari Senin, Selasa, Rabu, Kamis = 20
Dimisalkan juml.tiket Hari Jum‟at, sabtu, mingggu, Libur = 15
d) Proses, jika Hari Senin, Selasa, Rabu, Kamis Rp 15.000* juml.tiket Hari Senin,
Selasa, Rabu, Kamis (20)
Jika Hari Jum‟at, sabtu, mingggu, Libur Rp 35.000* juml.tiket Hari Jum‟at, sabtu,
mingggu, Libur = 15
e) Tampilkan hasil (1125000)
f) Print
g) Selesai
1.7 Algoritma untuk menghitung berapa nilai yang harus dibayar oleh pelanggan dengan
total nilai belanja tertentu bila disertakan pula perhitungan diskonnya. Ketentuan :
Diskon tidak dihitung sebagai akumulasi dari diskon nilai belanja dibawahnya.
Algoritma :
a) Input Total nilai belanja
b) Subtotal, jml* harga barang
c) Proses, Jika Rp. 150.000,- ke atas diskonnya : 10%,
Jika Rp. 275.000,- ke atas diskonnya : 15%,
Jika Rp. 300.000,- ke atas diskonnya : 20%,
Jika Rp. 400.000,- ke atas diskonnya : 25%
d) Hitung total bayar subtotal- potongan
e) Tampilkan total bayar
f) Print
g) Selesai
1.8 Algoritma nilai
Algoritma :
a) Masukkan 5 nilai (nilai tugas1,tugas2,tugas3,UTC,UAC)
b) Hitung nilai rata - rata tugas = nilai tugas1+tugas2+tugas3 / 3.
c) Lalu hitung semua nilai : Nilai=((rata-rata
tugas*30%)+(UTC*30%)+(UAC*40%))
d) Seleksi nilai akhir.
e) Jika nilai akhir :
> 80 dan <=100 maka nilai huruf = A
> 70 dan <=80 maka nilai huruf = AB
> 65 dan <=70 maka nilai huruf = B
> 60 dan <=65 maka nilai huruf = BC
> 55 dan <=60 maka nilai huruf = C
> 40 dan <=55 maka nilai huruf = D
> 0 dan <=40 maka nilai huruf = E
f) Output : hasil nilai akhir dan hasil seleksi nilai huruf
1.9 Algoritma tarif pemakaian Air PDAM Kota Surabaya
a) Masukkan Jumlah Pemakaian Air.
b) Hitung jumlah nilai/pemakaian yang dimasukkan :
1) Seleksi jika pemakaian < 0, maka Biaya total = Jumlah * 0.
2) Seleksi jika pemakaian <= 50, maka Biaya total = Jumlah * 200
3) Seleksi jika pemakaian <= 150, maka Biaya total = ((50 * 200) + ((jumlah - 50) * 500))
4) Seleksi jika pemakaian <= 300, maka Biaya Total = ((50 * 200) + (100 * 500) +
((jumlah - 150) * 1000)).
5) Seleksi jika pemakaian > 300, maka Biaya Total = ((50 * 200) + (100 * 500) + (150 *
1000) + ((jumlah - 300) * 1500))
c. Output : Biaya Total
1.10 Algoritma untuk menghitung cash back yang diterima nasabah berdasarkan
nilai pemakaian kartu kredit.
Algoritma :
a) Ambil input user untuk memasukkan jumlah pemakaian Kartu Kredit
1) Masukkan ke variabel string pemakaian
2) Jika panjang inputan string pemakaian lebih dari 0, atau dengan kata lain
b) user telah menginputkan value,ubah input string pemakaian menjadi bilangan
dengan nama variabel
c) int jml_pemakaian,memberikan nilai default pada variabel pemakaian1 dengan,
pemakaian1= 1000.000.Jika nilai pada variabel jml_pemakaian <= 1.000.000.
d) Memberikan nilai pada variabel pemakaian1 dengan,pemakaian1= e.
jml_pemakaian.
e) Atau jika nilai pada variabel jml_pemakaian > 1.000.000, dan nilaipada variabel
jml_pemakaian <= 10.000.000
f) Memberikan nilai pada variabel pemakaian1 dengan,pemakaian1= 1.000.000
g) Memberikan nilai pada variabel pemakaian2 dengan,pemakaian2= jml_pemakaian
– 1.000.000 atau jika nilai pada variabel jml_pemakaian > 10.000.000, dan nilai
pada variabel jml_pemakaian <= 25.000.000
h) Memberikan nilai pada variabel pemakaian2 dengan,pemakaian2= 10.000.000
i) Memberikan nilai pada variabel pemakaian3 dengan,pemakaian3= jml_pemakaian
– 25.000.000.Atau jika nilai pada variabel jml_pemakaian > 25.000.000
j) Memberikan nilai pada variabel pemakaian2 dengan,pemakaian2= 10.000.000
k) Memberikan nilai pada variabel pemakaian3 dengan,pemakaian3= 25.000.000
l) Memberikan nilai pada variabel pemakaian4 dengan,pemakaian4= jml_pemakaian
– 25.000.000
m) Memberikan nilai pada variabel cash_back_total dengan,cash_back_total=
(pemakaian1*5/100)+(pemakaian2*6/100)+(pemakaian3*7/100)+(pemakaian4*8/
10)
n) Cetak output dengan format, "Seorang nasabah yang total selama sebulan
"+jml_pemakaian+", maka total cash backnya="+cash_back_total.Atau Jika
panjang inputan tidak lebih dari 0, atau dengan kata lain user belum menginputkan
value
o) Cetak output “Ada salah satu masukan yang kosong”
p) Stop proses
2. FLOWCHART ATAU PSOUDOCODE DARI MASING-MASING SOAL
2.1 Flowchart untuk mencari sisi miring dari suatu segitiga siku-siku
START
INPUT NILAI a= 2
INPUT NILAI b= 2
Selesai
Hasil 2
2.2 Flowchart untuk menampilkan banyaknya pecahan uang paling efisien
START
INPUT UANG = 125.500
PROSES
a) hitung pecahan 100.000 :
b) hitung pecahan 50.000 :
c) hitung pecahan 20.000 :
d) hitung pecahan 10.000 :
e) hitung pecahan 5.000 :
f) hitung pecahan 2.000 :
g) hitung pecahan 1.000
:
h) hitung pecahan 500 :
i) hitung pecahan 200 :
j) hitung pecahan 100 :
Selesai
Tampilkan hasil 1010100100
2.3 Flowchart untuk mengkonversi bilangan dalam format desimal menjadi biner
START
Input desimal = 45 10
Proses
45 10 = 45 : 2 = 22 + sisa 1 22 : 2 = 11 + sisa 0 11 : 2 = 5 + sisa 1 5 : 2 = 2 + sisa 1 2 : 2 = 1 + sisa 0
Selesai
Tampilkan hasil 01101 10
2.4 Flowchart untuk bonus pegawai
START
Input Select Case
StatusPegawai, Input Case
StatusStaff
Read Select Case
StatusPegawai,Case
StatusStaff
IF((p==”staf)&&(k>=5)&& (u>=5))
Else if ((p == “staf”) && (k<5))
Print “Bonus Rp 1.000.000”
Print “Bonus Rp 500.000”
Else if ((p== “staf”) && (u,50))
Else if ((p== “non staf”) && (k>5) &&
(u>50))
Else if ((p== “non staf”) (u>50))
Print “Bonus Rp 300.000”
Print “Bonus Rp 400.000”
Print “Bonus Rp 250.000”
End
YA
YA
YA
YA
YA
TIDAK
TIDAK
TIDAK
TIDAK
2.5 Flowchart untuk menghitung total biaya iklan baris yang harus dibayar oleh pengiklan
YA Harga Rp 33.000
TIDAK
Harga Rp 40.000
SELESAI
Proses
Harga *12baris
Hasil
Sabtu
Minggu, Senin, Selasa, Rabu, Kamis, Jum’at
Start
Input Hari Minggu, Senin, Selasa, Rabu, Kamis, Jum’at Rp 33.000
Input Hari Sabtu Rp 40.000
Input jml baris minggu s/d jum‟at = 50
Input jml baris, Hari Sabtu =12
Proses
Harga *50 baris
2.6 Flowchart Algoritma untuk menghitung total biaya tiket .
YA
Harga 33.000
Harga 35.000
TIDAK
Jum’at, Sabtu, Minggu, Libur
Start
Input Hari Senin, Selasa, Rabu, Kamis Rp 15.000
Input Hari libur atau tidak libur, jumat, sabtu, minggu Rp 35.000
Senin, Selasa, Rabu, Kamis
Proses
Jml.tiket * Harga
20* 33.000
SELESAI
Tampilkan hasil
1.125.000
Proses
Jml.tiket * Harga
15* 35.000
2.7 Flowchart untuk menghitung berapa nilai yang harus dibayar oleh pelanggan dengan
total nilai belanja tertentu bila disertakan pula perhitungan diskonnya.
START
Input barang, jumlah
Subtotal, jumlah* harga barang
Diatas Rp 150.000,-
Diatas Rp 275.000,-
Diatas Rp 300.000,-
YA
YA
YA
TIDAK
TIDAK
Diatas Rp 400.000,-
Diskon 25 %
Diskon 10%
Diskon 15%
Diskon 20%
Total Bayar
Subtotal- potongan
Selesai
2.8 Flowchart nilai
START
INPUT nilai Tugas1,tugas2,tugas3,UTC,UAC
READ nilai
tugas1,tugas2,tugas3,UTC,UAC
Jml. nilai Nilai=((rata-rata
tugas*30%)+(UTC*30%)+(UAC*
40%))
If nilai > 80 dan <=100
If nilai > 70 dan <=80
If nilai > 65
dan <=70
If nilai > 55 dan <=60
> 40 dan <=55
> 0 dan <=40
A
AB
B
BC
C
D
If nilai > 40
dan <=55
> 0 dan <=40
If nilai > 0
dan <=40
PRINT, END
2.9 Flowchart tarif pemakaian Air PDAM Kota Surabaya
2.10 Flowchart untuk menghitung cash back yang diterima nasabah berdasarkan
nilai pemakaian kartu kredit.
5.SOURCE KODE BESERTA OUTPUT
Pada kode ini, saya mengasumsikan bahwa Anda telah punya source Java sendiri yang kira-kira struktur umumnya adalah sebagai berikut:
package PackageName; // import statement here public class MainClassName { public static void main(String[] args) { // Your code here } }
Kode-kode yang ada di artikel ini bisa langsung digunakan di dalam method main.
Mencetak Keluaran dari Standard Output
Untuk mencetak keluaran, bisa menggunakan: System.out.println("Hai!");
Untuk menggabungkan keluaran biasa dengan suatu variabel, Anda dapat menggunakan operator „+‟ int i = 0; System.out.println("Isi variabel i adalah " + i + ".");
Untuk yang membutuhkan keluaran dengan format, Java juga memilikinya: int i = 0; System.out.printf("Isi variabel i adalah %i.\n", i);
Membaca Masukan dari Standard Input
Ini adalah cara yang cukup mudah untuk digunakan. Pada bagian import, jangan lupa definisikan:
import java.util.Scanner;
Penggunaan Scanner adalah sebagai berikut:
Scanner inputScanner = new Scanner(System.in); String masukan = inputScanner.next(); System.out.println(masukan);
Untuk tipe data lain, ada juga caranya. Misal untuk membaca sebuah bilangan bulat:
Scanner inputScanner = new Scanner(System.in); int angka = inputScanner.nextInt(); System.out.println(angka);
Jika Anda menggunakan Integrated Development Environment (IDE) seperti NetBeans, maka Anda bisa mengeksplorasi sendiri methods yang ada dengan mengetik “inputScanner” dan diakhiri dengan tanda titik. Anda akan dibantu dengan fitur Code Completion dari IDE ini.
Coba saja, ada banyak method yang dapat Anda gunakan. Hal yang sama juga bisa Anda lakukan, misalnya dengan mengetik “System.out” diakhiri dengan tanda titik. Anda akan melihat method yang begitu banyak.
Ini adalah cara yang mudah untuk mencoba belajar sendiri, tanpa harus capek-capek browsing.
Fitur Code Completion pada NetBeans ketika Anda mengetik "inputScanner" diakhiri dengan tanda titik.
REFERENSI
http://agungbudisantoso24.wordpress.com/2012/02/06/statementi-input-dan-output-pada-
java/
http://abdublog92.wordpress.com/2011/10/01/assignment-operator/
http://matematika-website.blogspot.com/2008/04/operator-matematika.html
http://tutorial.belajarweb.net/javascript/javascript-perbandingan-dan-operator-logika.html
http://www.indrabt.com/operator-perbandingan-pada-perintah-if-di-php.html
http://www.zuriatiskom.tripod.com/operator.html
http://www.books.google.com/books?isbn=9792078525
http://rodelaide.blogspot.com/2013/02/struktur-percabangan-kontrol-
selection.html#chitika_close_button
http://rfetricia.blogspot.com/2012/12/algoritma-dan-flowchart-sisi-miring.html
http://unoguys.blogspot.com/2013/02/percabangan-atau-pemilihan-pada-java.html
http://id.answers.yahoo.com/question/index?qid=20101117223748AAt1JjC
http://murnia-wiyoto.blogspot.com/2011/12/konversi-bilangan-biner-dan-bilangan.html
http://id.wikipedia.org/wiki/Kode_sumber
http://id.wikipedia.org/wiki/Pemrograman
http://rofidahsadiyah.blogspot.com/2012/10/fungsi-input-output-kode-format-contoh.html
http://bugspin.blogspot.com/2011/01/contoh-source-code-sederhana-bahasa-c.html
http://henryzzzgadget.blogspot.com/2013/10/tugas-modul-2-praktikum-dasar.html
http://imamhidayatsite.wordpress.com/2011/03/06/inputoutput-dengan-java-bagian-1-
standard-inputoutput/