Modul 2
Dasar
pemrograman
(Diajukan untuk melengkapi salah satu tugas mata
kuliah Dasar pemrograman)
Disusun Oleh:
Evin Nofia Delta (135623016)
PROGRAM STUDI D3 MANAJEMEN INFORMATIKA(A) 2013
FAKULTAS TEKNIK
UNIVERSITAS NEGERI SURABAYA
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 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.
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)
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 yang terdapat dalam
netbeans antara lain:
- Smart
Code Completion: untuk mengusulkan nama variabel dari suatu tipe,
melengkapi keyword dan mengusulkan tipe parameter dari sebuah method.
- Bookmarking:
fitur yang digunakan untuk menandai baris yang suatu saat hendak kita
modifikasi.
- Go
to commands: fitur yang digunakan untuk jump ke deklarasi variabel, source
code atau file yang ada pada project yang sama.
- Code
generator: jika kita menggunakan fitur ini kita dapat meng-generate
constructor, setter and getter method dan yang lainnya.
- Error
stripe: fitur yang akan menandai baris yang eror dengan memberi highlight
merah.
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 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 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 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.
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:
- 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.
- 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.
- 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.
Berikut sekilas
mengenai beberapa syntaks SQL yang digunakan pada NetBeans:
1. Interface :
- java.sql.Statement
Interface yang digunakan untuk mengirim laporan statis SQL ke server
database dan memperoleh hasilnya.
- javax.sql.ConnectionEventListener
Menerima event atau kejadian bahwa obyek PooledConnection digeneralisasi.
2. Classes :
- java.sql.Date
Subclass dari java.util.Date digunakan untuk tipe data SQL DATE.
- java.lang.DriverManager
Class yang digunakan untuk mengelola satu set JDBC drivers.
3. Exception Classes:
-
java.sql.SQLException Eksepsi yang menyediakan informasi tentang Database
error
- java.sql.SQLWarning
Eksepsi yang menyediakan informasi tentang peringatan Database.
4. DataBase Access (Microsoft
Access) merupakan sebuah aplikasi basis data yang didukung oleh NetBeans, data
dapat disimpan di dalam format Microsoft Access, Microsoft Jet Database Engine,
Microsoft SQL Server, Oracle Database, atau semua kontainer basis data yang
mendukung standar ODBC. Access juga mendukung teknik-teknik pemrograman
berorientasi objek.
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.
2.
Eclipse
·
Eclipse (perangkat lunak)
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.
Sejarah
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[1] 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.
Versi Peluncuran
Sejak
tahun 2006, Eclipse Foundation mengkoordinasikan peluncuran Eclipse secara
rutin dan simultan yang dikenal dengan nama Simultaneous Release.
Setiap versi peluncuran terdiri dari Eclipse Platform dan juga sejumlah proyek
yang terlibat dalam proyek Eclipse. Tujuan dari sistem ini adalah untuk
menyediakan distribusi Eclipse dengan fitur-fitur dan versi yang
terstandarisasi. Hal ini juga dimaksudkan untuk mempermudah deployment dan
maintenance untuk sistem enterprise, serta untuk kenyamanan.Peluncuran simultan
dijadwalkan pada bulan Juni setiap tahunnya.
Kode
Peluncuran
|
Tanggal
Peluncuran
|
Platform
|
Nama
Proyek
|
Eclipse 3.0
|
3.0
|
||
Eclipse 3.1
|
3.1
|
||
Callisto
|
3.2
|
||
Europa
|
3.3
|
||
Ganymede
|
3.4
|
||
Galileo
|
3.5
|
||
Helios
|
3.6
|
| Juno
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 [4].
Nama Eclipse seolah-olah memberi pesan explisit:
cahaya Sun (matahari) yang pancarannya dihalangi
oleh Eclipse (gerhana).
3.
Penulisan Program di Java, Input, Output
import
java.util.Scanner;
public class InputOut {
public static void main(String args[])
{
Scanner masukan = new Scanner
(System.in);
String x;
System.out.print("Masukan Sebuah Kata : ");
x = masukan.next();
System.out.println("Kata
Yang Anda Masukan Adalah : "+x);
}
}
Penjelasan nya ada
di bawah ini :
import
java.util.scanner = guna nya adalah untuk
mengambil fungsi scanner pada java
public class InputOut
{ = mendeklarasikan class
"InputOut" (harus ada dengan nama berbeda juga tidak apa - apa)
public static void
main(String args[]) { = saya sendiri kurang
tahu ini untuk apa mungkin untuk pendeklarasian dimulai code java
Scanner masukan = new
Scanner (System.in); = fungsi dari code
ini adalah untuk pendeklarasian variable Scanner (variabel nya adalah
"masukan" terserah anda bila ingin diganti tidak apa - apa)
String x; = pendeklarasian variable "x" yang dinilai (value) nya
bergantung pada scanner
System.out.print("Masukan
Sebuah Kata : "); =
code untuk membuat output pada java (seperti echo pada PHP)
x = masukan.next(); = memasukan nilai variabel "x" dari scanner
System.out.println("Kata
Yang Anda Masukan Adalah : "+x); =
code untuk membuat output pada java (seperti echo pada PHP)
Jika sudah selesai
lihatlah, apa yang anda masukan akan di repeat oleh program keren kan? tunggu
tutorial dari saya selanjutnya ya
FORMAT
PENDEKLARASIAN VARIABEL : [tipe_data
(SPASI) nama_variabel]
int = mendeklarasikan tipe data Integer
char = mendeklarasikan tipe data Char / Character
boolean = mendeklarasikan tipe data Boolean
String = mendeklarasikan tipe data String
float = mendeklarasikan tipe data Float
dan lain – lain
4.
Operator:
Assigment, Matematika, Perbandingan, Logika
ASSIGNMENT
OPERATOR (OPERATOR PENUGASAN)
Operator
ini berfungsi untuk menyalin suatu nilai yang terletak di sebelah kanan ke dalam
suatu variable yang terletak disebelah kirimya. Assignment operator ini hanya
mempunyai macam operator, yaitu =
Contoh program :
Pada
baris kedua diberikan assignment operator, yang bertugas menyalin nilai
disebelah kanannya (7+5), ke dalam variable a yang terletak di sebelah kirinya,
sehingga sesudah baris kedua dieksekusi, variable a akan bernilai 12.
ARITHMATIC OPERATOR (OPERATOR
ARITMATIKA)
Operator
ini berfungsi untuk operasi aritmatika. Yang termasuk dalam aritmatik operator
adalah sebgai berikut :
Aritmatic Operator
|
Keterangan
|
+
|
Operasi Penambahan
|
-
|
Operasi Pengurangan
|
*
|
Operasi Perkalian
|
/
|
Operasi Pembagian
|
%
|
Operasi Modulus
|
Contoh
program :
Berikut adalah program
untuk menghitung nilai deskriminan D=b2-4ac dari suatu persamaan kuadrat ax2 +
bx + c = 0
Hasil
eksekusi :
RATIONAL
OPERATOR (OPERATOR RELASI)
è True
atau false
è Dibaca
: apakah
Relational
operator (operator relasi) adalah operator yang sering dipakai untuk operasi
perbandingan dan selalu menghasilkan suatu nilai bertipe boolean (true atau false)
. yang termasuk logikal operator adalah sebagai berikut :
Rational Operator
|
Keterangan
|
==
|
Operasi perbandingan sama dengan
|
!=
|
Operasi perbandingan tidak sama dengan
|
>
|
Operasi perbandingan lebih besar
|
>=
|
Operasi perbandingan lebih besar sama dengan
|
<
|
Operasi perbandingan lebih kecil
|
|
|
<=
|
Operasi perbandingan lebih kecil sama dengan
|
Contoh
program :
OPERATOR
LOGIKA
Operator
Logika memiliki satu atau lebih operan boolean yang menghasilkan nilai boolean.
Ada enam operator logika yaitu
Logical Operator
|
Keterangan
|
!
|
Operasi negasi (NOT)
|
&
|
Operasi AND
|
|
|
Operasi OR
|
^
|
Operasi XOR
|
&&
|
Operasi AND (short circuit)
|
||
|
Operasi OR (short circuit)
|
Operator
!,&, | dan ^ mempunyai implementaso yang sama sebagaimana ketika ia menjadi
bitwise operator. Hanya saja di logical operator, operan yang dilibatkan disini
harus bertipe boolean, yang hanya mempunyai nilai true atau false.
Operator
&& (short cicuit)
Operator
&& adalah operator yang berfungsi untuk melakukan operasi AND pada
bit-bit nilai operan yang bertipe boolean. Operator 77 memounyai ketentuan
sebagaimana ketentuan operator &. Hanya saja perbedaan terletak pada saat
operasi AND sudah dapat menghasilkan suatu nilai dari operan pertama, maka
operasi AND dengan && tidak lagi melihat operankedua, sedangkan operasi
AND dengan & masih melihat operan kedua. Oleh karena itu operator
&& disebut juga dengan short cicuit boolean operator. Sehingga operator
77 mempunyai ketentuan sebagai berikut :
Operan 1
|
Operan 2
|
Hasil &&
|
False
|
Tidak dilihat
|
False
|
False
|
Tidak dilihat
|
False
|
True
|
0
|
False
|
True
|
1
|
True
|
Berikut
adalah 2 contoh program sederhana untuk membedakan pemakaian operator& dan
operator && :
Hasil
eksekusi :
5.
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.
6.
Percabangan
(if, if....else, if...elseif...., switch)
Percabangan adalah suatu pilihan atau opsi dengan kondisi tertentu. Jika
kondisi yang menjadi syarat terpenuhi, maka opsi atau pilihan dijalankan, jika
tidak maka sebaliknya. Dalam java terdapat 4 macam jenis percabangan, if,
if-else, else-if, dan juga switch. Keempat jenis ini memiliki penggunaan
masing-masing. Berikut penjelasan mengenai penggunaan tiap-tiap percabangan :
IF
Percabangan if
ini digunakan jika kita hanya memiliki satu pernyaatan yang akan
dijalankan dengan syarat tertentu. Sintaks if seperti berikut :
if(kondisi){
pernyataan
}
Jika kondisi
benar, maka pernyataan akan dijalankan.
Contoh :
public class coba{
public static void main (String [] args){
int a=0;
if (a==0)
System.out.println("Nilai a =
0");
if (a==1)
System.out.println("Nilai a =
1");
}
}
Output : Program akan menampilkan nilai a = 0 saja, karena pada if
yang kedua, kondisi tidak memenuhi atau salah.
IF-ELSE
Percabangan if else digunakan saat kita memiliki dua
pernyataan dengan syarat tertentu. Sintaks if-else seperti berikut :
if(kondisi){
pernyataan1
}else{
pernyataan2
}
Jika hasil dari if benar, maka pernyataan1 yang dijalankan, sedangkan jika
salah, pernyataan dua yang akan dijalankan.
Contoh :
public class coba{
public static void main (String [] args){
int a=0;
if (a==0)
System.out.println("Nilai a =
0");
else
System.out.println("Nilai a =
1");
}
}
Output : program akan menampilkan nilai a = 0, karena kondisi if
bernilai benar, jika pada inisialisasi nilai a tidak bernilai 0, maka program
akan menampilkan nilai a = 1.
ELSE-IF
percabangan
yang digunakan saat kita memiliki banyak kondisi (lebih dari 2) dan banyak
pernyataan (lebih dari 2). Sintaks dari else-if seperti berikut :
if(kondisi){
pernyataan1
}elseif(kondisi2){
pernyataan2
}else(kondisi3){
pernyataan3
}
else {
penyataan4
}
jika kondisi1 benar, maka pernyataan1 akan dijalankan,
jika kondisi2 benar, maka penyataan2 akan dijalankan, jika semua kondisi salah,
maka penyataan4 yang akan dijalankan saja.
Contoh :
public class coba{
public static void main (String []
args){
int a=2;
if (a==0)
System.out.println("Nilai a =
0");
else if(a==1)
System.out.println("Nilai a =
1");
else if(a==2)
System.out.println("Nilai a =
2");
}
}
Output : Program akan menampilkan nilai a = 2
saja, karena pada else-if yang ketiga atau dengan pernyataan a==2 bernilai benar, sedangkan
pernyataan yang lain tidak dijalankan karena kondisi tidak memenuhi.
SWITCH
switch-case : percabangan yang digunakan saat kita memiliki
banyak kondisi (lebih dari 2) dan banyak pernyataan (ledbih dari 2). Sebenarnya
switch-case ini hampir sama dengan else if, hanya saja sintaksnya yang berbeda.
Sintaks dari 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
7.
Soal
Praktikum, Flowchart atau psoudocode dari masing-masing soal
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,
JAWAB
:
Algoritma:
a. Tentukan nilai a, b
b. Hitung C =
c. Tampilkan C
Psuodocode
a. Input (a,b)
b. C ß
c. Output (c)
Flowchart
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
JAWAB:
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. Buat algoritma untuk mengkonversi
bilangan dalam format desimal menjadi biner.
Input :
bilangan desimal
Output :
bilangan biner
Ilustrasi:
JAWAB:
Algoritma
a.
Baca desimal
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
decimal
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
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?
JAWAB:
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. 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.
JAWAB:
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. 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 .
JAWAB:
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. 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
JAWAB
:
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)
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
JAWAB:
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. 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
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.
JAWAB:
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. Sebuah
perusahaan kartu kredit memberikan cash back kepada nasabahnya berdasarkan
jumlah nilai pemakaian kartu kredit selama sebulan.
Nilai pemakaian cash back
--------------------- ----------
s.d 1.000.000 5%
1.000.000 –
10.000.000 6%
10.000.000 – 25.000.000 7%
Diatas 25.000.000 8%
Ilustrasi:
seorang nasabah yang total pemakaian selama sebulan 18.000.000, maka cash
backnya= 5%x1.000.000+6%x9.000.000+7%x8.000.000 = 160.000
Buat algoritma untuk
menghitung cash back yang diterima nasabah berdasarkan nilai pemakaian kartu
kredit.
JAWAB:
1.
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
8.
Kode Sumber (Source Code) beserta Outputnya
9.
Referensi
2. http://id.wikipedia.org/wiki/Eclipse_%28perangkat_lunak%29
5.