Anda di halaman 1dari 12

LABORATORIUM PEMBELAJARAN ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER


UNIVERSITAS BRAWIJAYA

BAB : PROGRAM INPUT, OUTPUT, DAN PROSES


NAMA : RIEFQI ARDHYA BISMA
NIM : 175150201111050
TANGGAL : 20/09/2017
ASISTEN : - SANTI YUNIKA SUFIANA
- MEILINDA AGUSTIN RAHMAWATI

A. DEFINISI MASALAH
1. Buatlah program dengan tampilan sebagai berikut :

Masukkan operator pertama :3


Masukkan operator kedua :2
Hasil penjumahan :5
Hasil pengurangan :1
Hasil perkalian :6
Hasil pembagian : 1.5

2. Buatlah program untuk menghitung pemakaian daya listrik dirumah tangga secara
sederhana. Tampilan program sebagai berikut :

Program penghitung pemakaian listrik sederhana


Masukkan Nama : Bpk Asisten
Keluarahan : Java
Masukkan posisi awal Kwh Meter : 8000
Masukkan posisi akhir Khw Meter : 9000
Masukkan biaya beban saat ini : 140
Masukkan PPJ (dalam persen) : 10
===================PLN Java===================
Nama : Bpk Asisten
Kelurahan : Java
Pemakaian bulan ini : 1000 Kwh Meter
Tarif Listrik : Rp 140000,-
PPJ 10% : Rp 14000,-
Total Bayar : Rp 154000,-
==============================================

B. SOURCE CODE

 Tugas Praktikum 1

1 import java.util.Scanner;
2
3 public class TugasPraktikum1 {
4
5 public static void main(String[] args) {
6 float input1, input2;
7
8 System.out.printf("%-30s%s", "Masukan operator pertama", ": ");
9 Scanner operasi = new Scanner(System.in);
10 input1 = operasi.nextFloat();
11 System.out.printf("%-30s%s", "Masukan operator kedua", ": ");
12 input2 = operasi.nextFloat();
13 System.out.printf("%-30s%s%.0f%n", "Hasil penjumlahan", ": ", input1 + input2);
14 System.out.printf("%-30s%s%.0f%n", "Hasil pengurangan", ": ", input1 - input2);
15 System.out.printf("%-30s%s%.0f%n", "Hasil perkalian", ": ", input1 * input2);
16 System.out.printf("%-30s%s%.1f%n", "Hasil pembagian", ": ", input1 / input2);
17
18 }
19 }

 Tugas Praktikum 2

1 import java.util.Scanner;
2
3 public class TugasPraktikum2 {
4 public static void main(String[] args) {
5
6 String nama, lurah;
7 int pemakaian, awal, akhir, beban, ppj, persen,total;
8 Scanner lst = new Scanner (System.in);
9 System.out.println("Program penghitung pemakaian listrik sederhana");
10 System.out.printf("%-35s%s","Masukan nama",": ");
11 nama = lst.nextLine();
12 System.out.printf("%-35s%s","Kelurahan",": ");
13 lurah = lst.nextLine();
14 System.out.printf("%-35s%s","Masukan posisi awal Kwh Meter",": ");
15 awal = lst.nextInt();
16 System.out.printf("%-35s%s","Masukan posisi akhir Kwh Meter",": ");
17 akhir = lst.nextInt();
18 System.out.printf("%-35s%s","Masukan biaya beban saat ini",": ");
19 beban = lst.nextInt();
20 System.out.printf("%-35s%s","Masukan PPJ (dalam persen)",": ");
21 ppj = lst.nextInt();
22
23 pemakaian = akhir-awal;
24 beban = beban*pemakaian;
25 persen = beban*ppj/100;
26 total = beban+persen;
27
28 System.out.println("===================PLN JAVA===================");
29 System.out.printf("%-24s%s%s\n","Nama",": ",nama);
30 System.out.printf("%-24s%s%s\n","Kelurahan",": ",lurah);
31 System.out.printf("%-24s%s%d%s\n", "Pemakaian bulan ini",": ",pemakaian," Kwh
32 Meter");
33 System.out.printf("%-24s%s%s%d%s\n", "Tarif listrik",": ", "Rp ",beban,",-");
34 System.out.printf("%s%d%-18s%s%s%d%s\n", "PPJ ",ppj,"%", ": ","Rp ",persen,",-");
35 System.out.printf("%-24s%s%s%d%s\n","Total Bayar",": ","Rp ",total,",-");
36 System.out.println("==============================================");
37 }
38 }
C. PEMBAHASAN

 Tugas Praktikum 1

1 Mengimport Scanner class agar dapat menginputkan suatu literal.


3 Deklarasi class dengan nama TugasPraktikum1.
5 Public dapat ditujukan untuk metode main bersifat public atau dapat dipanggil
dimana saja.
Main merupakan metode yang pertama kali dijalankan saat program dieksekusi.
String adalah tipe data untuk menampung kata/kalimat pada argument args.
Args yakni argument bertipe data String yang mengandung array. Dapat dimisalkan
sebagai memory menampung program.
6 Deklarasi variabel input1 & input2 tipe data float.
8 Perintah mencetak output dengan format %-30s%s.
%-30s adalah format untuk output “Masukan Operator Pertama” tipe data String
dengan space 30 dan dimulai dari kiri sebab ada tanda negative.
%s adalah format untuk “:” tipe data String.
10 Membuat objek Scanner dengan nama “operasi”
11 Prosedur input nilai ke dalam variabel input1. Dikarenakan variabel input1 bertipe
data float, maka nilai di scan dengan nextFloat();
15 Perintah mencetak output dengan format %-30s%s%.0f%n.
%-30s adalah format untuk output “Hasil penjumlahan” tipe data String dengan
space 30 dan dimulai dari kiri sebab ada tanda negative.
%s adalah format untuk “:” tipe data String.
%.0f adalah format untuk hasil penjumlahan variabel input1 & input2 tipe data float
dengan tidak ada angka di belakang koma.
%n merupakan format bermakna newline.
17 Perintah mencetak output berformat untuk hasil pengurangan input1 & input2.
19 Perintah mencetak output berformat untuk hasil perkalian input1 & input2 .
21 Perintah mencetak output berformat untuk hasil pembagian input1 & input2 dengan
format %.1f. Maknanya menampilkan hasil bagi dengan 1 angka di belakang koma.

 Tugas Praktikum 2

1 Mengimport Scanner class agar dapat menginputkan suatu literal.


3 Deklarasi class dengan nama TugasPraktikum2.
4 Public dapat ditujukan untuk metode main bersifat public atau dapat dipanggil
dimana saja.
Main merupakan metode yang pertama kali dijalankan saat program dieksekusi.
String adalah tipe data untuk menampung kata/kalimat pada argument args.
Args yakni argument bertipe data String yang mengandung array. Dapat dimisalkan
sebagai memory menampung program.
6 Deklarasi variabel nama & lurah tipe data String.
7 Deklarasi variabel pemakaian, awal, akhir, beban, ppj, persen & total tipe data
integer.
8 Membuat objek Scanner dengan nama “lst”.
11 Perintah mencetak output dengan format %-35s%s.
%-35s adalah format untuk output “Masukan nama” tipe data String dengan space 35
dan dimulai dari kiri sebab ada tanda negative.
%s adalah format untuk “:” tipe data String.
12 Prosedur input nilai ke dalam variabel nama. Dikarenakan variabel nama bertipe data
String, maka nilai di scan dengan nextLine();
28 Operasi pengurangan variabel akhir & awal yang disimpan pada variabel
pemakaian.
29 Operasi pada variabel beban dengan mengalikan variabel beban & pemakaian.
30 Mengalikan variabel beban & ppj, lalu dibagi 100. Sehingga didapat nilai persentase
yang disimpan dalam variabel persentase.
31 Operasi penghitung total biaya dengan menjumlahkan variabel beban & persen yang
disimpan pada variabel total.
35 Perintah mencetak output dengan format %-24s%s%s\n.
%-24s adalah format untuk output “Nama” tipe data String dengan space 24 dan
dimulai dari kiri sebab ada tanda negative.
%s adalah format untuk “:” tipe data String.
%s adalah format untuk output variable nama.
36 Perintah mencetak output berformat untuk hasil input kelurahan
37 Perintah mencetak output berformat untuk hasil pengurangan akhir & awal pada
variabel pemakaian.
39 Perintah mencetak output berformat untuk hasil beban tarif listrik dikali pemakaian.
Perintah mencetak output berformat untuk hasil variabel beban dikali persentase ppj.
Perintah mencetak output berformat untuk hasil total jumlah beban dan hasil
persentase.

D. SCREENSHOT PROGRAM

 Tugas Praktikum 1
 Tugas Praktikum 2

E. PRAKTIKUM

A. Output
1. Jalankan kelas Output1 – Output4 dan benahi jika menemukan kesalahan!

Kesalahan terjadi pada Output4 sebab quote sign untuk format tidak sesuai pada line
9.

2. Pada Kelas Output2 baris keempat hapus tanda + kemudian amati apa yang terjadi
dan jelaskan!

Terjadi kesalahan. Karena tanda + digunakan sebagai penghubung literal. Sehingga


jika dihapus yang terjadi yaitu program akan kebingungan dengan 2 literal ada namun
tak berpenghubung.

3. Pada kelas Output3 baris 3 – 6, jelaskan arti dari kode tersebut dan temukan
perbedaannya!

%30s bermakna literal string memiliki space sebanyak 30 dan dimulai dari paling
kanan sebab tidak ada tanda negative sebelum angka 30. Tanda negative ini
menandakan string dimulai dari paling kiri. %c merupakan format ditujukan literal
tipe char. \n setara dengan enter/newline.

4. Pada kelas output3 baris 3 ganti karakter ‘|’ menjadi ‘ab’ amati dan jelaskan!
Terjadi error sebab format %c hanya untuk karakter tunggal

5. Pada kelas Output3 setelah baris 6 tambahkan kode program dengan syntax
System.out.printf("%-30.8s%c\n","Pemrograman Java",'|'); kemudian amati
perbedaannya dengan baris 6 dan simpulkan!

Syntax line 6 terdapat format %30.5s yang bermakna diberi space 30 dimulai dari
paling kanan, dengan maksimal 5 karakter output tipe data String yang muncul.
Sedangkan syntax line 7 terdapat format %-30.8s bermakna diberi space 30 dimulai
dari paling kiri sebab terdapat tanda negative. Lalu diberi batasan maksimal 8 karakter
output tipe data String yang muncul.

6. Pada kelas Output4 tambahkan kode program yang mencentak nilai x dengan
format 2 angka dibelakang koma!

Source Code :

Output :

7. Pada kelas Output4 tambahkan kode berikut System.out.printf("%g %15e


%15.3f\n",x,x,x); amati apa yang terjadi dan jelaskan!

%g merupakan format secara default mencetak 2 angka dibelakang koma.


%e merupakan scientific notation sehingga jika di cetak akan menhasilkan pangkat.
%15.3f menghasilkan output sejumlah 3 angka dibelakang koma.

8. Dari ketiga jenis output tersebut simpulkan dan temukan perbedaannya!

Dapat disimpulkan terdapat banyak cara untuk menghasilkan output diantaranya print,
println, dan printf. Output1 merupakan program yang dicetak menggunakan “print”.
Output2 menggunakan perintah “println”. Output3 mulai menggunakan perintah
“printf” (print berformat) untuk tipe data String. Dan Output4 merupakan perintah
“printf” untuk tipe data float serta integer.

B. Variabel
1. Jalankan kelas Variabel dan benahi jika menemukan kesalahan!
Tidak terjadi kesalahan.

2. Setelah baris 5 tambahkan syntax untuk mengurangkan nilai dari variabel nilai dan
nilai_2, amati yang terjadi dan jelaskan! (benahi jika menemukan kesalahan)

Terjadi kesalahan. Sebab perbedaan tipe data antara double dan integer perlu adanya
proses casting (mengconvert suatu tipe data ke bentuk tipe data lain). Namun langkah
paling mudah yaitu mengubah tipe data secara manual.
Setelah tipe data variabel nilai diubah menjadi double secara manual.

3. Setekah baris 8 tambahkan variabel dengan type data char dengan nama variabel: ch
dan mempunyai nilai sama seperti pada variabel s dan amati apa yang terjadi,
jelaskan!

Terjadi error karena untuk mencetak sebuah kalimat dibutuhkan variable tipe data
String. Sedangkan char hanyalah tipe data mencetak karakter & simbol.

4. Tambahkan variabel dengan nama nilai3 yang bertipe data integer dan diberi nilai
awal 100 kemudian lakukan pembagian yang disimpan pada variabel hasil kemudian
cetak menggunakan kelas System!

Source Code:
Output :

5. Tambahkan variabel dengan nama nilai3 yang bertipe data integer dan diberi nilai
awal 100 kemudian lakukan pembagian tanpa harus disimpan disebuah variabel
melainkan cetak pada layar menggunakan System!

Source Code :

Output :
6. Jelaskan perbedaan antara no 4 dan no 5!

Pada nomor 4 kita harus melakukan operasi & menyimpan nilai pembagian dalam
variable. Ketika mencetak kita perlu memanggil variabelnya.
Nomor 5 tidak perlu melakukan operasi dalam variable, melainkan kita dapat
melakukannya di system print dan akan tercetak secara langsung

C. Input
1. Jalankan kelas Input dan benahi jika menemukan kesalahan!

Tidak ada kesalahan.

2. Pada baris 7 ubah nextInt() menjadi nextDouble() dan amati apa yang terjadi serta
jelaskan!

Tidak bisa karena variable yang telah dideklarasikan yakni Integer, maka yang harus
dipakai yakni input.nextInt();

3. Tambahkan perintah untuk memasukkan nama dan NIM user dan ditampilkan pada
akhir program!
Source Code :

Output :

F. KESIMPULAN

Dari pertemuan Praktikum Pemrograman Dasar yang membahas Bab 1 didapat


berbagai bentuk output, input, tipe data, serta variabel. Beberapa bentuk output yang
diketahui ada 3 macam, antara lain print, println, dan printf yang jelas memiliki fungsi
berbeda. “Print” merupakan perintah mencetak nilai tanpa membuat line baru. Namun
“println” sebaliknya. Ia merupakan perintah untuk mencetak nilai dan secara otomatis
membuat line baru. Sedangkan “printf” adalah perintah untuk mencetak nilai
berformat.
Sebenarnya ada 3 macam pula macam input keyboard dalam java diantaranya
Scanner, BufferedReader, dan JOptionPane. Namun pada Praktikum Pemrograman
Dasar Bab 1 yang dipakai ialah class Scanner. Scanner merupakan perintah input
keyboard yang akan disimpan dalam variabel. Sebelum class Scanner dapat dipakai,
kita perlu memanggil class Scanner dengan syntax “import java.util.Scanner;”. Setelah
itu dapat dilakukan pembuatan objek dengan nama yang diinginkan. Dan prosedur
input nilai ke dalam suatu variabel baru dapat dilakukan dan harus sesuai dengan tipe
data variabel terkait.
Variabel dapat dikatakan sebagai wadah yang menyimpan nilai/literal. Wadah ini
harus memiliki tipe yang sesuai dengan isinya. Tipe ini dinamakan tipe data. Tipe
data, variabel, dan nilai harus saling berhubungan agar program dapat dijalankan.
Contohnya tipe data String digunakan untuk menampung nilai berbentuk kata atau
kalimat. Integer untuk bilangan bulat dari -2,147,483,648 hingga 2,147,483, 647. Jika
suatu variabel tipe data integer berisi literal berbentuk kalimat, maka program akan
error sebab tipe wadah serta isinya tidak sesuai. Beberapa macam tipe data di java
antara lain, boolean (true/false), byte (-128 hingga 127), String (kata/kalimat), char
(karakter), integer (-2,147,483,648 hingga 2,147,483, 647), double (bilangan riil
±1.79769313486231570E+308), dll

Anda mungkin juga menyukai