Riska Ari Septiana
Selasa, 26 November 2013
Kamis, 21 November 2013
Dasar pemrograman
LARIK
Larik (array) adalah suatu variabel yang terdiri dari sekumpulan data dimana
data-data tersebut mempunyai tipe data
yang sama. Setiap data disimpan dalam alamat memori yang berbeda-beda dan disebut dengan elemen array. Setiap elemen mempunyai nilai indek sesuai dengan urutannya. Melalui indek inilah kita dapat mengakses
data-data tersebut. Indek dari elemen array ini, baik dalam bahasa C++ maupun Java dimulai dari 0, bukan 1 seperti dalam bahasa Pascal.
Array dideklarasikan dengan tanda [ ]
(bracket), baik dalam bahasa C++ dan
Java.
Minggu, 03 November 2013
Senin, 28 Oktober 2013
Modul
2
Praktikum
Dasar Pemrograman
NAMA : RISKA ARI SEPTIANA
NIM : 135623007
PRODI : D3 MANAJEMEN
INFORMATIKA (A)
MATA
KULIAH : DASAR PEMROGRAMAN
Universitas Negeri Surabaya (UNESA)
Kantor : Jl. Ketintang, Surabaya 60231 Indonesia
Telp. : (031)-8280009, 8280393, 8280675
Fax : (031)-8280804
Kantor : Jl. Ketintang, Surabaya 60231 Indonesia
Telp. : (031)-8280009, 8280393, 8280675
Fax : (031)-8280804
Netbeans
Netbeans merupakan sebuah aplikasi Integrated
Development Environment (IDE) yang berbasiskan Java dari Sun Microsystems yang
berjalan di atas swing. Swing merupakan sebuah teknologi Java untuk pengembangan
aplikasi desktop yang dapat berjalan pada berbagai macam platform seperti
windows, linux, Mac OS X dan Solaris. Sebuah IDE merupakan lingkup pemrograman
yang di integrasikan ke dalam suatu aplikasi perangkat lunak yang menyediakan
Graphic User Interface (GUI), suatu kode editor atau text, suatu compiler dan
suatu debugger. Netbeans juga digunakan oleh sang programmer untuk menulis,
meng-compile, mencari kesalahan dan menyebarkan program netbeans yang ditulis
dalam bahasa pemrograman java namun selain itu dapat juga mendukung bahasa
pemrograman lainnya dan program ini pun bebas untuk digunakan dan untuk membuat
professional desktop, enterprise, web, and mobile applications dengan Java
language, C/C++, dan bahkan dynamic languages seperti PHP, JavaScript, Groovy,
dan Ruby.
NetBeans merupakan sebuah proyek kode terbuka yang
sukses dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan
memiliki hampir 100 mitra (dan terus bertambah!). Sun Microsystems mendirikan
proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus menjadi sponsor
utama. Dan saat ini pun netbeans memiliki 2 produk yaitu Platform Netbeans dan
Netbeans IDE. Platform Netbeans merupakan framework yang dapat digunakan
kembali (reusable) untuk menyederhanakan pengembangan aplikasi deskto dan
Platform NetBeans juga menawarkan layanan-layanan yang umum bagi aplikasi
desktop, mengijinkan pengembang untuk fokus ke logika yang spesifik terhadap
aplikasi.
Netbeans IDE merupakan
sebuah IDE open source yang ditulis sepenuhnya dengan bahasa pemrograman java
menggunakan platform netbeans. NetBeans IDE mendukung pengembangan semua tipe
aplikasi Java (J2SE, web, EJB, dan aplikasi mobile). Fitur lainnya adalah
sistem proyek berbasis Ant, kontrol versi, dan refactoring.
Versi terbaru saat ini adalah NetBeans IDE 5.5.1 yang dirilis Mei 2007 mengembangkan fitur-fitur Java EE yang sudah ada (termasuk Java Persistence support, EJB-3 dan JAX-WS). Sementara paket tambahannya, NetBeans Enterprise Pack mendukung pengembangan aplikasi perusahaan Java EE 5, meliputi alat desain visual SOA, skema XML, web service dan pemodelan UML. NetBeans C/C++ Pack mendukung proyek C/C++.
Modularitas: Semua fungsi IDE disediakan oleh modul-modul. Tiap modul menyediakan fungsi yang didefinisikan dengan baik, seperti dukungan untuk bahasa pemrograman Java, editing, atau dukungan bagi CVS. NetBeans memuat semua modul yang diperlukan dalam pengembangan Java dalam sekali download, memungkinkan pengguna untuk mulai bekerja sesegera mungkin. Modul-modul juga mengijinkan NetBeans untuk bisa dikembangkan. Fitur-fitur baru, seperti dukungan untuk bahasa pemrograman lain, dapat ditambahkan dengan menginstal modul tambahan. Sebagai contoh, Sun Studio, Sun Java Studio Enterprise, dan Sun Java Studio Creator dari Sun Microsystem semuanya berbasis NetBeans IDE.
Versi terbaru saat ini adalah NetBeans IDE 5.5.1 yang dirilis Mei 2007 mengembangkan fitur-fitur Java EE yang sudah ada (termasuk Java Persistence support, EJB-3 dan JAX-WS). Sementara paket tambahannya, NetBeans Enterprise Pack mendukung pengembangan aplikasi perusahaan Java EE 5, meliputi alat desain visual SOA, skema XML, web service dan pemodelan UML. NetBeans C/C++ Pack mendukung proyek C/C++.
Modularitas: Semua fungsi IDE disediakan oleh modul-modul. Tiap modul menyediakan fungsi yang didefinisikan dengan baik, seperti dukungan untuk bahasa pemrograman Java, editing, atau dukungan bagi CVS. NetBeans memuat semua modul yang diperlukan dalam pengembangan Java dalam sekali download, memungkinkan pengguna untuk mulai bekerja sesegera mungkin. Modul-modul juga mengijinkan NetBeans untuk bisa dikembangkan. Fitur-fitur baru, seperti dukungan untuk bahasa pemrograman lain, dapat ditambahkan dengan menginstal modul tambahan. Sebagai contoh, Sun Studio, Sun Java Studio Enterprise, dan Sun Java Studio Creator dari Sun Microsystem semuanya berbasis NetBeans IDE.
Fitur-fitur
dari Platform Netbeans antara lain:
§ Manajemen antarmuka (misal:
menu & toolbar)
§ Manajemen pengaturan pengguna
§ Manajemen penyimpanan (menyimpan dan
membuka berbagai macam data)
§ Manajemen jendela
§ Wizard framework (mendukung dialog
langkah demi langkah)
Paket-Paket
Tambahan NetBeans IDE
NetBeans
Mobility Pack
NetBeans
Mobility Pack adalah alat untuk mengembangkan aplikasi yang berjalan pada
perangkat bergerak (mobile), umumnya telepon seluler, tetapi juga mencakup PDA,
dan lain-lain.
NetBeans Mobility Pack dapat digunakan untuk menulis, menguji, dan debugging aplikasi untuk perangkat bergerak yang menggunakan teknologi berplatform Java Micro Edition (platform Java ME). Paket ini mengintegrasikan dukungan terhadap Mobile Information Device Profile (MIDP) 2.0, Connected Limited Device Configuration (CLDC) 1.1, dan Connected Device Configuration (CDC). Emulator dari pihak ketiga dapat diintegrasikan dengan mudah untuk lingkungan pengujian yang lebih kokoh. NetBeans Mobility Pack saat ini tersedia dalam dua klaster yang berbeda, yang satu memuat CDC dan yang lainnya CLDC.
NetBeans Mobility Pack dapat digunakan untuk menulis, menguji, dan debugging aplikasi untuk perangkat bergerak yang menggunakan teknologi berplatform Java Micro Edition (platform Java ME). Paket ini mengintegrasikan dukungan terhadap Mobile Information Device Profile (MIDP) 2.0, Connected Limited Device Configuration (CLDC) 1.1, dan Connected Device Configuration (CDC). Emulator dari pihak ketiga dapat diintegrasikan dengan mudah untuk lingkungan pengujian yang lebih kokoh. NetBeans Mobility Pack saat ini tersedia dalam dua klaster yang berbeda, yang satu memuat CDC dan yang lainnya CLDC.
NetBeans Profiler
NetBeans Profiler adalah alat untuk
mengoptimalkan aplikasi Java, membantu menemukan kebocoran memori dan
mengoptimalkan kecepatan. Profiler ini berdasarkan sebuah proyek riset Sun
Laboratories yang dahulu bernama Jfluid. Riset tersebut mengungkap teknik
tertentu yang dapat digunakan untuk menurunkan overhead proses profiling
aplikasi Java. Salah satu dari teknik tersebut adalah instrumentas i kode byte
dinamis, yang berguna untuk profiling aplikasi Java yang besar. Dengan
menggunakan instrumentasi kode byte dinamis dan algoritma-algoritma tambahan,
Netbeans Profiler mampu mendapatkan informasi runtime aplikasi yang terlalu
besar atau kompleks bagi profiler lain. NetBeans IDE 6.0 akan mendukung
Profiling Point yang memungkinkan kita memprofilkan titik yang tepat dari
eksekusi dan mengukur waktu eksekusi.
NetBeans
C/C++ Pack
NetBeans C/C++ Pack menambahkan
dukungan terhadap pengembang C/C++ ke NetBeans IDE 5.5. Paket ini
memperbolehkan pengembang menggunakan sekumpulan kompiler dan alat sendiri
bersama dengan NetBeans IDE untuk membangun aplikasi native untuk MS Windows,
Linux, dan Solaris. Paket ini membuat editor mengenali bahasa C/C++ dan
menyediakan project template, browser kelas yang dinamis, dukungan pembuatan
file dan fungsionalitas debugger. Para pengembang juga dapat mengembangkan
paket tersebut dengan fungsionalitas tambahan mereka sendiri.
NetBeans
Enterprise Pack
NetBeans Enterprise Pack memperluas
dukungan terhadap pengembangan aplikasi perusahaan dan web service di NetBeans
IDE 5.5. Enterprise Pack ini mengembangkan kemampuan untuk menulis, menguji,
dan debug aplikasi dengan arsitektur berorientasi layanan (Service-Oriented
Architecture) menggunakan XML, BPEL, dan Java web service. Paket ini
menambahkan alat desain visual untuk pemodelan UML, skema XML, dan web service
orchestration, juga dukungan untuk web service dengan menggunakan identitas
yang aman. Paket ini juga menginstal dan mengkonfigurasi runtime yang
diperlukan, termasuk mesin BPEL dan server manajemen identitas yang
terintegrasi dengan Sun Java System Application Server.
NetBeans Ruby Pack
Versi NetBeans 6.0 mendatang akan
mengijinkan pengembangan IDE menggunakan Ruby dan Jruby, sebagaimana Rails
untuk dua implementasi Ruby yang lain. Preview NetBeans Ruby Pack tersedia
sejak rilis Milestone 7 NetBeans 6.
Ruby Pack
memasukkan fungsionalitas editor seperti:
§ pengeditan dasar
§ pewarnaan sintaks untuk Ruby
§ pelengkapan kode
§ occurence highlighting
§ pop-up dokumentasi yang terintegrasi
untuk pemanggilan Ruby API
§ analisis semantik dengan
highlighting parameter dan variabel lokal yang tidak terpakai
NetBeans
JavaScript Editor
NetBeans JavaScript Editor menyediakan perluasan dukungan terhadap JavaScript dan CSS. Fitur-fiturnya antara lain:
1. Editor JavaScript
NetBeans JavaScript Editor menyediakan perluasan dukungan terhadap JavaScript dan CSS. Fitur-fiturnya antara lain:
1. Editor JavaScript
§ syntax highlighting
§ pelengkapan kode untuk objek dan
fungsi native
§ semua fitur dalam editor NetBeans
§ pembuatan kerangka kelas JavaScript
secara otomatis
§ pembuatan pemanggilan AJAX dari
template
2.
Ekstensi editor CSS
§ pelengkapan kode untuk nama-nama
style
§ navigasi cepat melalui panel
navigator
§ penampilan deklarasi aturan CSS di
List View
§ penampilan struktur file di Tree
View
§ mengurutkan outline view berdasarkan
nama, tipe, atau urutan deklarasi (List & Tree)
§ pembuatan deklarasi aturan (hanya
Tree)
§ pemfaktoran kembali sebagian nama
rule (hanya Tree)
Database
yang didukung oleh Netbeans antara lain:
1.
JDBC merupakan
spesifikasi standar dari JavaSoft API (Aplication Programming Interface) yang
memungkinkan program Java untuk mengakses sistem database manajemen. JDBC API
terdiri dari satu set interface dan kelas yang ditulis dalam bahasa pemrograman
Java. JDBC API Menggunakan interface standar dan kelas, programmer dapat
menulis aplikasi yang terhubung ke database, mengirimkan pertanyaan ditulis SQL
(Structured Query Language), dan memproses hasilnya.
2.
ORACLE merupakan sebuah aplikasi
basisdata yang didukung oleh NetBeans, Oracle secara umum hampir sama dengan
MySQL namun yang membedakan adalah oracle dapat digunakan dan dihubungkan
dengan netbeans dan harus menggunakan drivers untuk menyimpan data-data yang
telah dibuat. Oracle merupakan salah satu dari beberapa aplikasi basisdata yang
sering digunakan untuk koneksi ke basisdata pada NetBeans karena relatif mudah
dan cepat.
3.
MySQL
merupakan sebuah aplikasi basisdata yang didukung oleh NetBeans, MySQL memilki
Fitur Yang ada sudah lumayan lengkap, dari input, update, delete serta Search.
Sebuah antarmuka ODBC memanggil MyODBC yang memungkinkan setiap bahasa
pemrograman yang mendukung ODBC untuk berkomunikasi dengan basis data MySQL.
Kebanyakan kode sumber MySQL dalam ANSI C.
Kelebihan
dan Kekurangan Netbeans
Kelebihan
NetBeans GUI Builder :
§ Salah satu yang menjadi kelebihan
NetBeans GUI Builder adalah yang telah disebutkan diatas, yaitu GRATIS. Selain
itu NetBeans GUI Builder sangat kompetebel dengan Swing karena memang langsung
dikembangkan oleh Sun yang notabenenya sebagai pengembang Swing.
Kekurangan
NetBeans GUI Builder :
§ NetBeans hanya mensupport 1
pengembangan Java GUI, yaitu Swing, yang padahal ada Java GUI yang dikembangkan
oleh eclipse yang bernama SWT dan JFace yang sudah cukup populer.
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 awalnya
dikembangkan oleh IBM untuk menggantikan perangkat lunak IBM Visual Age for
Java 4.0. Produk ini diluncurkan oleh IBM
pada tanggal 5 November 2001, yang menginvestasikan sebanyak US$ 40 juta untuk pengembangannya. Semenjak itu
konsursium Eclipse Foundation mengambil alih untuk pengembangan Eclipse lebih lanjut dan
pengaturan organisasinya.
Arsitektur
Sejak versi 3.0, Eclipse pada
dasarnya merupakan sebuah kernel, yang mengangkat plug-in.
Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang
sudah diinstal. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini adalah
komponen yang membentuk RCP:
·
Core
platform
·
Eclipse
Workbench
Secara standar Eclipse selalu
dilengkapi dengan JDT (Java Development Tools), plug-in yang
membuat Eclipse kompatibel untuk mengembangkan program Java, dan PDE (Plug-in Development Environment) untuk
mengembangkan plug-in baru. Eclipse beserta plug-in-nya
diimplementasikan dalam bahasa pemrograman Java.
Konsep Eclipse adalah IDE yang
terbuka (open), mudah diperluas (extensible) untuk apa saja, dan
tidak untuk sesuatu yang spesifik[2]. Jadi, Eclipse tidak saja untuk mengembangkan program Java,
akan tetapi dapat digunakan untuk berbagai macam keperluan, cukup dengan
menginstal plug-in yang dibutuhkan. Apabila ingin
mengembangkan program C/C++ terdapat plug-in CDT(C/C++ Development Tools). Selain itu, pengembangan
secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat
diagram UML. Dengan menggunakan PDE setiap
orang bisa membuat plug-in sesuai dengan keinginannya. Salah
satu situs yang menawarkan plug-in secara gratis seperti Eclipse downloads by project.
Kontroversi Eclipse
Hadirnya Eclipse di
tengah-tengah persaingan IDE, terutama Java IDE, menimbulkan banyak
kontroversi. Salah satunya adalah penggunaan user
interface Eclipse. Sun
Microsystems sebagai
perusahaan yang membuat Java, selama ini mengeluarkan dua library untuk pengembangan Graphical User Interface (GUI), yaitu Abstract
Windowing Toolkit (AWT)
dan Swing.
Akan tetapi dalam pembuatan Eclipse, dua library ini ditinggalkan karena berbagai
alasan, yang salah satunya adalah kedua library ini tidak memberikan look and feel yang baik. Sehingga untuk hal ini
dikembangkanlah GUI-library yang baru, SWT.
Selain itu, Sun yang
mempunyai IDE sendiri untuk pengembangan Java bernama NetBeans, menjadi gerah
atas kehadiran Eclipse yang sampai saat ini komunitasnya cukup besar[3].
Hal ini terlihat dengan menolaknya Sun untuk bekerja sama dalam Eclipse
Foundation, walau telah diundang. Nama Eclipse seolah-olah memberi pesan explisit:
cahaya Sun (matahari) yang pancarannya dihalangi
oleh Eclipse (gerhana).
Penulisan Program di Java, Input, Output
pertama kali mestinya cara
menulis kata, yang biasanya dalam bahasa pemrograman disebut pemrograman “Hello
word”.
01 /*
02 * To change this template, choose Tools | Templates
03 * and open the template in the editor.
04 */
05
06 /**
07 *
08 * @author Ecko Zulkaryanto
09 */
10 public class Hello {
11
12 /**
13 * @param args the command line arguments
14 */
15 public static void main(String[] args) {
16 // TODO code application logic here
17 System.out.print(”\n\t\tThis is Java Programming Language\n”);
18 System.out.println(”\t\t Welcome to Java Programming”);
19 }
20
21 }
Klo udah pernah belajar C/C++ biasanya langsung ngerti koding di atas. Bagi yg baru di java, install JDK dulu, baru bisa compile and jalanin/running koding ini. setelah install and bikin path-nya, compile program ini di console atau command prompt (ketik start menu>run>ketik “cmd”>enter). lalu masuk ke direktori file koding di atas yang udah dikasih nama “Hello.java”. untuk compile ketik perintah “javac Hello.java” dan untuk running ketik perintah “java Hello”. Lebih gampang pake compiler , ex: “netbeans”, bisa juga peke eclipse, atau yang lebih gampang pake jcreator.
01 /*
02 * To change this template, choose Tools | Templates
03 * and open the template in the editor.
04 */
05
06 /**
07 *
08 * @author Ecko Zulkaryanto
09 */
10 public class Hello {
11
12 /**
13 * @param args the command line arguments
14 */
15 public static void main(String[] args) {
16 // TODO code application logic here
17 System.out.print(”\n\t\tThis is Java Programming Language\n”);
18 System.out.println(”\t\t Welcome to Java Programming”);
19 }
20
21 }
Klo udah pernah belajar C/C++ biasanya langsung ngerti koding di atas. Bagi yg baru di java, install JDK dulu, baru bisa compile and jalanin/running koding ini. setelah install and bikin path-nya, compile program ini di console atau command prompt (ketik start menu>run>ketik “cmd”>enter). lalu masuk ke direktori file koding di atas yang udah dikasih nama “Hello.java”. untuk compile ketik perintah “javac Hello.java” dan untuk running ketik perintah “java Hello”. Lebih gampang pake compiler , ex: “netbeans”, bisa juga peke eclipse, atau yang lebih gampang pake jcreator.
Java – Pemrograman dengan Array
int B[] = {10, 5, 14, 20, 35, 27, 50, 75}; artinya B adalah sebuah integer array yang berisi nilai-nilai didalam {}. B.length = artinya banyaknya data pada array B[], nila pertama array B[] adalah B[0] dan selanjutnya. Program berikut beriisi looping dengan for untuk menghitung jumlah angka dalam variabel array B[].
public class Program5 {
public static void main(String[] arg) {
int B[] = {10, 5, 14, 20, 35, 27, 50, 75};
int jumlah = 0;
for (int n=0; n 0; x–) {
hasil *= x;
int B[] = {10, 5, 14, 20, 35, 27, 50, 75}; artinya B adalah sebuah integer array yang berisi nilai-nilai didalam {}. B.length = artinya banyaknya data pada array B[], nila pertama array B[] adalah B[0] dan selanjutnya. Program berikut beriisi looping dengan for untuk menghitung jumlah angka dalam variabel array B[].
public class Program5 {
public static void main(String[] arg) {
int B[] = {10, 5, 14, 20, 35, 27, 50, 75};
int jumlah = 0;
for (int n=0; n 0; x–) {
hasil *= x;
}
System.out.println(faktorial + “!=” + hasil);
}
System.out.println(faktorial + “!=” + hasil);
}
}
Save dengan nama Program4. Jika saat dijalankan diisi 25 pada bilangan, maka pada General Output terdapat tulisan berikut:
25!=2076180480
Process completed.
Selamat mencoba!
Save dengan nama Program4. Jika saat dijalankan diisi 25 pada bilangan, maka pada General Output terdapat tulisan berikut:
25!=2076180480
Process completed.
Selamat mencoba!
Dalam
pemrograman Java, perintah import digunakan untuk mendefinisikan package yang
akan dipakai dalam program. Hal ini digunakan untuk mempersingkat perintah
dalam program. Dalam program berikut, ditulis import javax.swing.*, sehingga
package ini tidak usah ditulis didalam program. Import ditulis diawal program
sebulum class.
//Singkatan package
import javax.swing.*;
public class Program10 {
public static void main(String[] arg) {
String in = JOptionPane.showInputDialog(“Bilangan 1-12″);
int bil = Integer.parseInt(in);
String bulan = “”;
String B[] = {“Januari”, “Februari”, “Maret”, “April”, “Mei”, “Juni”, “Juli”, “Agustus”, “September”, “Oktober”, “Nopember”, “Desember”};
System.out.println(“Bulan ke ” + bil + “=” + B[bil-1]);
}
}
Contoh output:
Bulan ke 3=Meret
Process completed.
//Singkatan package
import javax.swing.*;
public class Program10 {
public static void main(String[] arg) {
String in = JOptionPane.showInputDialog(“Bilangan 1-12″);
int bil = Integer.parseInt(in);
String bulan = “”;
String B[] = {“Januari”, “Februari”, “Maret”, “April”, “Mei”, “Juni”, “Juli”, “Agustus”, “September”, “Oktober”, “Nopember”, “Desember”};
System.out.println(“Bulan ke ” + bil + “=” + B[bil-1]);
}
}
Contoh output:
Bulan ke 3=Meret
Process completed.
Java
– Pemrograman dengan JOptionPane dan If
Berikut salah satu contoh pemrograman Java dengan menggunakan JOptionPane.showInputDialog untuk menampilkan kotak dialog isian untuk umur. Jika umur yang diisikan adalah 20 atau lebih, maka akan ditampilkan tulisan Dewasa, jika tidak ditampikan Anak-anak.
Nilai Isi Umur yang diketik, akan dimasukkan ke sebuah variable string bernama dataUser. Sebelum diolah, dataUser diubah menjadi integer dengan perintah, umur = Integer.parseInt(dataUser);. Baru setelah itu nilai umur bisa dicek dengan if, untuk menentukan apakah Dewasa atau Anak-anak.
Silahkan diketik program berikut:
public class Program2 {
public static void main(String[] arg) {
int umur ;
String dataUser = javax.swing.JOptionPane.showInputDialog(“Isi umur”);
umur = Integer.parseInt(dataUser);
Berikut salah satu contoh pemrograman Java dengan menggunakan JOptionPane.showInputDialog untuk menampilkan kotak dialog isian untuk umur. Jika umur yang diisikan adalah 20 atau lebih, maka akan ditampilkan tulisan Dewasa, jika tidak ditampikan Anak-anak.
Nilai Isi Umur yang diketik, akan dimasukkan ke sebuah variable string bernama dataUser. Sebelum diolah, dataUser diubah menjadi integer dengan perintah, umur = Integer.parseInt(dataUser);. Baru setelah itu nilai umur bisa dicek dengan if, untuk menentukan apakah Dewasa atau Anak-anak.
Silahkan diketik program berikut:
public class Program2 {
public static void main(String[] arg) {
int umur ;
String dataUser = javax.swing.JOptionPane.showInputDialog(“Isi umur”);
umur = Integer.parseInt(dataUser);
if
(umur >=20)
System.out.println(“Dewasa”);
else
System.out.println(“Anak-anak”);
System.out.println(“Dewasa”);
else
System.out.println(“Anak-anak”);
}
}
Simpan proram ini dengan nama Program2, lalu jalankan.
}
Simpan proram ini dengan nama Program2, lalu jalankan.
java
perhitungan angka
Pemrograman Java adalah sebuah pemrograman yang tersetruktur berbasis objek (OOP) yang menekankan aspek disiplin dalam penulisan program. Dalam pemrograman Java, besar kecilnya tulisan dapat berpengaruh terhadap jalannya program tersebut. Untuk menulis program Java, bisa menggunakan teks editor seperti notepad engan ekstension .java, namun akan lebih mudah menggunakan program khusus misalnya JCreator atau Netbeans.
Dalam program Java, nama class harus sama dengan nama file saat menyimpan programnya. Dalam contoh berikut dibuat sebuah class Program1, maka saat save program harus diberi nama Program1 juga.
Salah satu contoh sederhana program perkalian dengan java, seperti berikut:
public class Program1 {
public static void main(String[] arg) {
int a = 5 ; //inisialisasi variable a
int b = 10 ; /* inisialisasi variable b */
int c = a+b ;
System.out.println (a + “+” + b + “=” + c );
}
}
Setelah selesai diketik, simpan dengan nama Program1. Lakukan Build-Build File untuk memeriksa apakah ada kesalahan penulisan atau tidak. Jika tidak ada program bisa dijalankan dengan perintah Run – Run Project (F5). Program ini akan menghasilkan output berikut:
5+10=15
Pemrograman Java adalah sebuah pemrograman yang tersetruktur berbasis objek (OOP) yang menekankan aspek disiplin dalam penulisan program. Dalam pemrograman Java, besar kecilnya tulisan dapat berpengaruh terhadap jalannya program tersebut. Untuk menulis program Java, bisa menggunakan teks editor seperti notepad engan ekstension .java, namun akan lebih mudah menggunakan program khusus misalnya JCreator atau Netbeans.
Dalam program Java, nama class harus sama dengan nama file saat menyimpan programnya. Dalam contoh berikut dibuat sebuah class Program1, maka saat save program harus diberi nama Program1 juga.
Salah satu contoh sederhana program perkalian dengan java, seperti berikut:
public class Program1 {
public static void main(String[] arg) {
int a = 5 ; //inisialisasi variable a
int b = 10 ; /* inisialisasi variable b */
int c = a+b ;
System.out.println (a + “+” + b + “=” + c );
}
}
Setelah selesai diketik, simpan dengan nama Program1. Lakukan Build-Build File untuk memeriksa apakah ada kesalahan penulisan atau tidak. Jika tidak ada program bisa dijalankan dengan perintah Run – Run Project (F5). Program ini akan menghasilkan output berikut:
5+10=15
Mengurutkan
(sorting) objek menggunakan interface Comparable dan Comparator
Posted in Fundamental, Intermediate by jolly on the January 15th, 2010
Sorting(pengurutan) akan sering dijumpai dalam pembuatan program. Lebih lagi dalam sistem informasi yang menyajikan tabel-tabel yang berisi daftar tertentu yang menjadi hasil pemrosesan data. Misalnya saat anda membuat sistem informasi manajemen penjualan, anda mungkin saja akan diminta untuk membuat daftar nama produk yang diurutkan berdasarkan nama produk atau daftar permintaan produk yang diurutkan berdasarkan jumlah rupiah yang akan didapat dari permintaan tersebut.
Sorting dalam bahasa pemrograman java sangatlah mudah terutama untuk data dengan tipe-data primitif (mis: int, String), karena fungsinya(method-nya) sudah tersedia. Data tersebut disimpan dalam collection (mis: list, array) Berikut ini sorting data dengan tipe-data primitif.
Nama file: SortingPrimitiveData.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class SortingPrimitiveData {
10. public static void main(String[] args) {
11. List integers = new ArrayList();
12. integers.add(98);
13. integers.add(56);
14. integers.add(107);
15. integers.add(219);
16. integers.add(45);
17. Collections.sort(integers);
18. for (Integer integer : integers) {
19. System.out.println(integer);
20. }
21. }
22. }
23.
Sorting data dengan tipe-data referensial (Sorting objek)
Data daftar table biasanya disimpan dalam sebuah list. List tersebut berisi objek-objek yang nantinya akan membentuk baris tabel. 1 Objek 1 baris tabel. Sedangkan Kolom-kolom tabel tersebut merupakan field (property) dari sebuah objek. Kemudian anda diminta untuk melakukan pengurutan isi tabel tersebut berdasarkan salah satu kolom (property). Bagaimana anda akan melakukannya?
Berikut ini salah satu cara (dengan contoh sederhana) yang dapat digunakan.
Dari kelas berikut ini nantinya akan dibuat objek-objek yang dimasukkan dalam list.
Nama file: TeamScore.java
1.
2. /**
3. *
4. * @author JSL
5. */
6. public class TeamScore implements Comparable {
7. private String teamName;
8. private int score;
9. public int getScore() {
10. return score;
11. }
12. public void setScore(int score) {
13. this.score = score;
14. }
15. public String getTeamName() {
16. return teamName;
17. }
18. public void setTeamName(String teamName) {
19. this.teamName = teamName;
20. }
21. public int compareTo(Object o) {
22. /**
23. * Sort by score ascending
24. */
25. return this.score – ((TeamScore) o).score;
26. /**
27. * Sort by score descending
28. */
29. //return ((TeamScore) o).score – this.score;
30. }
31. }
32.
Terlihat bahwa kelas TeamScore meng-implements interface Comparable dan dibuatkan implementasi dari fungsi compareTo().
Berikutnya adalah bagaimana kelas ini digunakan dalam sorting, berikut potongan kodenya.
Nama file: ObjectSorting.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class ObjectSorting {
10. public static void main(String[] args) {
11. List teamScores = new ArrayList();
12. /**
13. * Create new team
14. */
15. TeamScore t1 = new TeamScore();
16. TeamScore t2 = new TeamScore();
17. TeamScore t3 = new TeamScore();
18. TeamScore t4 = new TeamScore();
19. /**
20. * Set Team
21. */
22. t1.setScore(28);
23. t1.setTeamName(“Arsenal”);
24. t2.setScore(25);
25. t2.setTeamName(“MU”);
26. t3.setScore(22);
27. t3.setTeamName(“Chealsea”);
28. t4.setScore(25);
29. t4.setTeamName(“Liverpool”);
30. /**
31. * Add to list
32. */
33. teamScores.add(t1);
34. teamScores.add(t2);
35. teamScores.add(t3);
36. teamScores.add(t4);
37. /**
38. * Sort it
39. */
40. Collections.sort(teamScores);
41. for (TeamScore teamScore : teamScores) {
42. System.out.println(teamScore.getTeamName() + ” get ” + teamScore.getScore() + ” points.”);
43. }
44. }
45. }
46.
Output:
1.
2. run:
3. Chealsea get 22 points.
4. MU get 25 points.
5. Liverpool get 25 points.
6. Arsenal get 28 points.
7. BUILD SUCCESSFUL (total time: 0 seconds)
Perlu diperhatikan bahwa proses sorting diatas adalah berdasarkan score. Terlihat pada fungsi compareTo() yang dibandingkan adalah score-nya.
1.
2. return this.score – ((TeamScore) o).score;
Sekarang, bagaimana jika objek tersebut akan diurutkan berdasarkan teamName? Seperti pada sorting data tipe-data primitif diperlukan class yang mengimplementasi interface Comparator. Berikut potongan kodenya.
Nama file: SortByTeamName.java
1.
2. import java.util.Comparator;
3. /**
4. *
5. * @author JSL
6. */
7. public class SortByTeamName implements Comparator {
8. public int compare(TeamScore t1, TeamScore t2) {
9. /*
10. * Sort ascending
11. */
12. return t1.getTeamName().compareTo(t2.getTeamName());
13. /*
14. * Sort descending
15. */
16. //return t2.getTeamName().compareTo(t1.getTeamName());
17. }
18. }
19.
Kemudian tambahkan parameter pada fungsi Collections.sort() pada kelas ObjectSorting.
Nama file: ObjectSorting.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class ObjectSorting {
10. public static void main(String[] args) {
11. List teamScores = new ArrayList();
12. /**
13. * Create new team
14. */
15. TeamScore t1 = new TeamScore();
16. TeamScore t2 = new TeamScore();
17. TeamScore t3 = new TeamScore();
18. TeamScore t4 = new TeamScore();
19. /**
20. * Set Team
21. */
22. t1.setScore(28);
23. t1.setTeamName(“Arsenal”);
24. t2.setScore(25);
25. t2.setTeamName(“MU”);
26. t3.setScore(22);
27. t3.setTeamName(“Chealsea”);
28. t4.setScore(25);
29. t4.setTeamName(“Liverpool”);
30. /**
31. * Add to list
32. */
33. teamScores.add(t1);
34. teamScores.add(t2);
35. teamScores.add(t3);
36. teamScores.add(t4);
37. /**
38. * Sort it
39. */
40. Collections.sort(teamScores, new SortByTeamName());
41. for (TeamScore teamScore : teamScores) {
42. System.out.println(teamScore.getTeamName() + ” get ” + teamScore.getScore() + ” points.”);
43. }
44. }
45. }
46.
Output:
1.
2. run:
3. Arsenal get 28 points.
4. Chealsea get 22 points.
5. Liverpool get 25 points.
6. MU get 25 points.
7. BUILD SUCCESSFUL (total time: 0 seconds)
Posted in Fundamental, Intermediate by jolly on the January 15th, 2010
Sorting(pengurutan) akan sering dijumpai dalam pembuatan program. Lebih lagi dalam sistem informasi yang menyajikan tabel-tabel yang berisi daftar tertentu yang menjadi hasil pemrosesan data. Misalnya saat anda membuat sistem informasi manajemen penjualan, anda mungkin saja akan diminta untuk membuat daftar nama produk yang diurutkan berdasarkan nama produk atau daftar permintaan produk yang diurutkan berdasarkan jumlah rupiah yang akan didapat dari permintaan tersebut.
Sorting dalam bahasa pemrograman java sangatlah mudah terutama untuk data dengan tipe-data primitif (mis: int, String), karena fungsinya(method-nya) sudah tersedia. Data tersebut disimpan dalam collection (mis: list, array) Berikut ini sorting data dengan tipe-data primitif.
Nama file: SortingPrimitiveData.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class SortingPrimitiveData {
10. public static void main(String[] args) {
11. List integers = new ArrayList();
12. integers.add(98);
13. integers.add(56);
14. integers.add(107);
15. integers.add(219);
16. integers.add(45);
17. Collections.sort(integers);
18. for (Integer integer : integers) {
19. System.out.println(integer);
20. }
21. }
22. }
23.
Sorting data dengan tipe-data referensial (Sorting objek)
Data daftar table biasanya disimpan dalam sebuah list. List tersebut berisi objek-objek yang nantinya akan membentuk baris tabel. 1 Objek 1 baris tabel. Sedangkan Kolom-kolom tabel tersebut merupakan field (property) dari sebuah objek. Kemudian anda diminta untuk melakukan pengurutan isi tabel tersebut berdasarkan salah satu kolom (property). Bagaimana anda akan melakukannya?
Berikut ini salah satu cara (dengan contoh sederhana) yang dapat digunakan.
Dari kelas berikut ini nantinya akan dibuat objek-objek yang dimasukkan dalam list.
Nama file: TeamScore.java
1.
2. /**
3. *
4. * @author JSL
5. */
6. public class TeamScore implements Comparable {
7. private String teamName;
8. private int score;
9. public int getScore() {
10. return score;
11. }
12. public void setScore(int score) {
13. this.score = score;
14. }
15. public String getTeamName() {
16. return teamName;
17. }
18. public void setTeamName(String teamName) {
19. this.teamName = teamName;
20. }
21. public int compareTo(Object o) {
22. /**
23. * Sort by score ascending
24. */
25. return this.score – ((TeamScore) o).score;
26. /**
27. * Sort by score descending
28. */
29. //return ((TeamScore) o).score – this.score;
30. }
31. }
32.
Terlihat bahwa kelas TeamScore meng-implements interface Comparable dan dibuatkan implementasi dari fungsi compareTo().
Berikutnya adalah bagaimana kelas ini digunakan dalam sorting, berikut potongan kodenya.
Nama file: ObjectSorting.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class ObjectSorting {
10. public static void main(String[] args) {
11. List teamScores = new ArrayList();
12. /**
13. * Create new team
14. */
15. TeamScore t1 = new TeamScore();
16. TeamScore t2 = new TeamScore();
17. TeamScore t3 = new TeamScore();
18. TeamScore t4 = new TeamScore();
19. /**
20. * Set Team
21. */
22. t1.setScore(28);
23. t1.setTeamName(“Arsenal”);
24. t2.setScore(25);
25. t2.setTeamName(“MU”);
26. t3.setScore(22);
27. t3.setTeamName(“Chealsea”);
28. t4.setScore(25);
29. t4.setTeamName(“Liverpool”);
30. /**
31. * Add to list
32. */
33. teamScores.add(t1);
34. teamScores.add(t2);
35. teamScores.add(t3);
36. teamScores.add(t4);
37. /**
38. * Sort it
39. */
40. Collections.sort(teamScores);
41. for (TeamScore teamScore : teamScores) {
42. System.out.println(teamScore.getTeamName() + ” get ” + teamScore.getScore() + ” points.”);
43. }
44. }
45. }
46.
Output:
1.
2. run:
3. Chealsea get 22 points.
4. MU get 25 points.
5. Liverpool get 25 points.
6. Arsenal get 28 points.
7. BUILD SUCCESSFUL (total time: 0 seconds)
Perlu diperhatikan bahwa proses sorting diatas adalah berdasarkan score. Terlihat pada fungsi compareTo() yang dibandingkan adalah score-nya.
1.
2. return this.score – ((TeamScore) o).score;
Sekarang, bagaimana jika objek tersebut akan diurutkan berdasarkan teamName? Seperti pada sorting data tipe-data primitif diperlukan class yang mengimplementasi interface Comparator. Berikut potongan kodenya.
Nama file: SortByTeamName.java
1.
2. import java.util.Comparator;
3. /**
4. *
5. * @author JSL
6. */
7. public class SortByTeamName implements Comparator {
8. public int compare(TeamScore t1, TeamScore t2) {
9. /*
10. * Sort ascending
11. */
12. return t1.getTeamName().compareTo(t2.getTeamName());
13. /*
14. * Sort descending
15. */
16. //return t2.getTeamName().compareTo(t1.getTeamName());
17. }
18. }
19.
Kemudian tambahkan parameter pada fungsi Collections.sort() pada kelas ObjectSorting.
Nama file: ObjectSorting.java
1.
2. import java.util.ArrayList;
3. import java.util.Collections;
4. import java.util.List;
5. /**
6. *
7. * @author JSL
8. */
9. public class ObjectSorting {
10. public static void main(String[] args) {
11. List teamScores = new ArrayList();
12. /**
13. * Create new team
14. */
15. TeamScore t1 = new TeamScore();
16. TeamScore t2 = new TeamScore();
17. TeamScore t3 = new TeamScore();
18. TeamScore t4 = new TeamScore();
19. /**
20. * Set Team
21. */
22. t1.setScore(28);
23. t1.setTeamName(“Arsenal”);
24. t2.setScore(25);
25. t2.setTeamName(“MU”);
26. t3.setScore(22);
27. t3.setTeamName(“Chealsea”);
28. t4.setScore(25);
29. t4.setTeamName(“Liverpool”);
30. /**
31. * Add to list
32. */
33. teamScores.add(t1);
34. teamScores.add(t2);
35. teamScores.add(t3);
36. teamScores.add(t4);
37. /**
38. * Sort it
39. */
40. Collections.sort(teamScores, new SortByTeamName());
41. for (TeamScore teamScore : teamScores) {
42. System.out.println(teamScore.getTeamName() + ” get ” + teamScore.getScore() + ” points.”);
43. }
44. }
45. }
46.
Output:
1.
2. run:
3. Arsenal get 28 points.
4. Chealsea get 22 points.
5. Liverpool get 25 points.
6. MU get 25 points.
7. BUILD SUCCESSFUL (total time: 0 seconds)
·
Operator: Assigment, Matematika, Perbandingan,
Logika
o Operator
Assignment
Operator
assignment digunakan untuk melakukan pemberian nilai terhadap suatu variabel
sehingga operator ini juga sering dikenal dengan operator penugasan. Dalam
bahasa Pascal operator yang digunakan untuk melakukan hal ini adalah operator
:=. Berikut ini bentuk umum untuk melakukan pemberian nilai terhadap suatu
variabel.
NamaVariabel := nilai_yang_akan_dimasukkan;
Contoh:
Var
x:
integer;
y:
real;
str:
string;
Begin
x
:= 123;
y
:= 56.04;
str
:= ‘Mencoba memasukkan nilai ke dalam variabel’;
....
End.
Operator: Assigment, Matematika, Perbandingan,
Logika
o Operator
Matematika
Bahasa Pascal menyediakan beberapa operator
yang dapat digunakan dalam operasi aritmatika, seperti penjumlahan,
pengurangan, perkalian, pembagian dan penentuan sisa bagi.
Operator
|
Jenis Operasi
|
Tipe Operand
|
Tipe Hasil
|
Contoh
|
+
|
Penjumlahan
|
Integer, real
|
Integer, real
|
a + b
|
-
|
Pengurangan
|
Integer, real
|
Integer, real
|
x – 1
|
*
|
Perkalian
|
Integer, real
|
Integer, real
|
a * b
|
/
|
Pembagian untuk bilangan riil
|
Integer, real
|
real
|
5 / 3
|
div
|
Pembagian untuk bilangan bulat
|
Integer
|
Integer
|
10 div 4
|
mod
|
Sisa bagi
|
integer
|
integer
|
10 od 3
|
o 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)
{
……
}
?>
coba kamu perhatikan script php diatas pada bagian
(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
Berikut ini merupakan operator perbandingan yang dapat digunakan di php
Simbol
|
Keterangan
|
|
==
|
:
|
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 Inequality. Perbandingan menggunakan operator ini akan
mengembalikan nilai true jika kedua operand memiliki nilai berbeda, apabila
tidak maka akan mengembalikan nilai false.
|
===
|
:
|
disebut
juga sebagai operator Identical. Operator ini digunakan untuk membandingkan
apakah kedua operand identik. Yang dimaksud dengan identik disini adalah
kedua operand memiliki nilai dan tipe data yang sama.
|
!==
|
:
|
disebut juga
sebagai operator Not Identical. Operator ini digunakan untuk membandingkan
apakah kedua operand tersebut tidak identik. Yang dimaksud dengan tidak
identik adalah kedua operand memiliki nilai dan tipe data yang berbeda.
|
>
|
:
|
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 besar sama atau sama dengan 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 atau sama dengan operand yang disebelah kanan.
|
o
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 :
- and (&&) dan
- or (||)
Berikut adalah hasil dari operasi logika &&
:
- true && true = true
- true && false = false
- false && true = false
- false && false = false
dan ini adalah hasil dari operator logika || :
- 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);
}
}
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, 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
1. 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.
Petunjuk: sisi miring
segitiga siku-siku dapat dihitung dengan rumus pythagoras,
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.
Contoh, untuk uang Rp
12.500, diperlukan 1 lembar 10.000, 1 lembar 2.000, dan 1 koin 500.
Input :
jumlah uang
Output :
banyaknya pecahan uang
3.
Buat algoritma untuk mengkonversi
bilangan dalam format desimal menjadi biner.
Input :
bilangan desimal
Output :
bilangan biner
Ilustrasi:
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 : -
Hari (Minggu, Senin, Selasa, Rabu, Kamis, Jumat atau Sabtu)
- Jumlah baris yang dipakai
Output : 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 : Total nilai belanja.
Output :
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’ jika nilai > 80 dan
nilai <= 100
‘AB’ jika nilai > 70 dan nilai <= 80
‘B’ jika nilai > 65 dan nilai <= 70
‘BC’ jika nilai > 60 dan nilai <= 65
‘C’ jika nilai > 55 dan nilai <= 60
‘AB’ jika nilai > 70 dan nilai <= 80
‘B’ jika nilai > 65 dan nilai <= 70
‘BC’ jika nilai > 60 dan nilai <= 65
‘C’ jika nilai > 55 dan nilai <= 60
’D’ jika nilai > 40 dan
nilai <= 55
’E’ 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,-
Pemakaian
I V ( > 300 m3 ) Rp. 1.500,-
Input : Jumlah Pemakaian
Output : Besar biaya yang harus dibayar
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%
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,-
Pemakaian
IV (
> 300 m3 ) Rp. 1.500,- * 200 = Rp. 300.000,-
Biaya Total Rp.
510.000,-
Pertanyaan: Buat algoritma untuk kasus diatas.
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
JAWABAN PRAKTIKUM
1. Algoritma:
a. Tentukan
nilai a, b
b. Hitung
C =
c. Tampilkan
C
Psuodocode
a. Input
(a,b)
b. C
ß
c. Output
(c)
Flowchart
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
3. 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
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
5. Algoritma
a. Tentukan
hari, jml
b. Jika
hari minggu- jum’at
c. Cetak
hrg hari = 33000
d. Total
= jml*hrghari
e. Jika
tidak
f. Cetak
hrghari 40000
g. Total
= jml*hrghar
Pseudocode
a. Input
(hari,jml)
b. Jika hari = minggu, senin, selasa, rabu, kamis,
jum’at
c. Hrghari
= 33000
d. Jika
tidak
e. Hrghari
= 40000
f. Total
ßjml*hrghari
g. Output
(total)
Flowchart
6. Algoritma
a. Tentukan
hari,jml,libur, tidak libur
b. Jika
hari = senin, selasa, rabu,kamis, jum’at
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. Tampilkan
total
Pseudocode
a. Input
(hari,jml,libur, tidak libur)
b. Jika
hari = senin, selasa, rabu,kamis, jum’at
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
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. Input
(harga)
b. Jika
harga<=400000
c. disc
ß
harga*25/100
d. Jika
harga <=300000
e. disc
ß
harga*20/100
f. Jika
harga <= 275000
g. disc
ß
harga*15/100
h. disc
ß
harga<= 150000*10/100
i.
output (disc)
flowchart
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. 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
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. 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
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*(total-20000000)
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
SOURCE
CODE
2.
REFERENSI
2. Eclipse:
3. Penulisan
Program di Java, Input, Output:
4. Operator:
Assigment, Matematika, Perbandingan, Logika
§ Operator Assignment
§ Operator
Matematika
§ Operator
Perbandingan
§ Operator
Logika
5. Tingkatan
Operator
6. Percabangan
(if, if....else, if...elseif...., switch)
Langganan:
Postingan (Atom)