0% menganggap dokumen ini bermanfaat (0 suara)
61 tayangan98 halaman

Dasar Pemrograman

Diunggah oleh

rafifauzi327
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai KEY, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
61 tayangan98 halaman

Dasar Pemrograman

Diunggah oleh

rafifauzi327
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai KEY, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 98

DASAR

PEMROGRAMAN
JAVA NETBEAN
Moch Lutfi
Email: [email protected]
Whatsap/Telegram: 0816555065

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


PENGANTAR ALGORITMA &
PEMROGRAMAN

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Pengertian Program dan Bahasa Pemrograman

1. Program adalah kumpulan instruksi yang digunakan untuk


mengatur komputer agar melakukan suatu tindakan
tertentu. Tanpa program, komputer tidak dapat melakukan
apa-apa. Dengan kata lain, program merupakan salah satu
bagian penting pada komputer agar melakukan aksi yang
sesuai dengan yang dikehendaki oleh pembuatnya.
2. Orang yang membuat program biasa disebut pemrogram
(programmer). Adapun aktivitas yang berhubungan dengan
pembuatan program dinamakan pemrograman
(programming).

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Menyelesaikan Masalah dengan Program
Orang yang membuat program biasanya bertujuan untuk
menyelesaikan masalah. Terdapat tiga langkah penting yang
harus dilakukan :
1. Analisis
2. Pseudo-code
3. flowchart

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


1. Analisis
Didalam analisis masalah diperlukan tindakan untuk
mengidentifikasi informasi yang menjadi keluaran pemecahan
masalah dan data-data yang menjadi masukan. Algoritma
adalah langkah-langkah yang dilakukan untuk menyelesaikan
suatu masalah.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


2. Pseudo-code
Sebuah kode yang digunakan untuk menulis sebuah
algoritma dengan cara yang bebas yang tidak terikat dengan
bahasa pemrograman tertentu. Pseudo-code berisikan
langkah-langkah untuk menyelesaikan suatu permasalahan
hampir sama dengan algoritma, hanya saja bentuknya sedikit
berbeda dari algoritma. Pseudo-code menggunakan bahasa
yang hampir menyerupai bahasa pemrograman. Selain itu
biasanya pseudo code menggunakan bahasa yang mudah
dipahami secara universal dan juga lebih ringkas dari pada
algoritma.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Notasi - notasi Pseudo

1. Bentuk (Pernyataan)
X <---- Yketerangan :X : diberi nilaiY : Memberi NilaiEx : Hasil <----
Bilangan Mod 2

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Notasi - notasi Pseudo
1. Bentuk Percabangan

if kondisi then pernyataan


========================
if kondisi 1 then pernyataan 1else pernyataan 2
========================
if kondisi 1 then pernyataan 1else if kodisi 2 then pernyataan 2else if
kondisi n then pernyataan nelse pernyataan else

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Notasi - notasi Pseudo

1. Bentuk Perulangan

for (persyaratan) do pernyataan for


==========================
while (persyaratan) pernyataan while
==========================
Repeat pernyataan repeatUntil (persyratan)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


1. Flow Chart
Suatu bagan dengan simbol-simbol tertentu yang
menggambarkan urutan proses secara mendetail dan
hubungan antara suatu proses (instruksi) dengan proses
lainnya dalam suatu program.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Algoritma menghitung luas lingkaran
PENYELESAIAN:
Langkah 1 (identifikasi)
Langkah 2 (pseudo-code)
Langkah 3 (flow chart)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Langkah 1 (identifikasi)
1.

1. Masukkan jari-jari lingkaran


2. Hitung luas lingkaran dengan menggunakan rumus 3.14 x
jari-jari x jari-jari
3. Tampilkan nilai luas lingkaran

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Langkah 2 (pseudo-code)
1. jari-jari ← r
2. luas ← 3.14 x jari-jari x jari-jari
3. Tampil (luas)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Langkah 3 (flowchart)
Simbol-simbol dalam flowchart

mulai / Masukkan /
selesai Keluaran

Proses

Prosedur /
Penghubung
fungsi

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Flow chart dari menghitung luas
lingkaran
START

Masukkan
j a r i _j a r i

Luas ← 3. 14 x j a r i _j a r i x
j a r i _j a r i

Keluaran
luas

E
ND

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Macam-macam Struktur Dasar Algoritma
Terdapat tiga buah struktur dasar, antara lain :
1. Struktur Sekuensial (Runtunan)

2. Struktur Seleksi

3. Struktur Pengulangan

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


1. Struktur Sekuensial (Runtunan)
Langkah-langkah yang dilakukan dalam algoritma diproses
secara berurutan.
Contoh : Buatlah algoritma untuk menampilkan isi dua buah
variabel. Variabel a = 12, b = 55 menjadi a = 55, b = 12
Solusi : Untuk menukarkan isi dua buah variabel diperlukan sebuah
variabel yang digunakan untuk membantu penukaran data.
Pseudo Code
Masukan (a , b)
a=b
b=a
tampilkan (a , b)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


1. Struktur Seleksi
Struktur seleksi menyatakan pemilihan langkah yang
didasarkan oleh suatu kondisi (pengambilan keputusan) yang
dinyatakan dengan belah ketupat.

Kondisi

Langkah 1 Langkah 2

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


2. Struktur Seleksi (pseudo code)
Pada struktur di atas, langkah 1 hanya akan dijalankan kalau
kondisi bernilai BENAR, sedangkan langkah 2 hanya dijalankan kalau
kondisi bernilai SALAH.
Contoh 1 : Buatlah algoritma untuk menentukan bilangan terbesar
dari dua buah bilangan x dan y ??
Solusi : Penyelesaian dalam bentuk Pseudocode
1. masukan (x , y)
2. terbesar ← x // asumsi bahwa x adalah yang terbesar
3. JIKA terbesar < y MAKA
terbesar ← y
AKHIR JIKA
4. tampilkan (terbesar)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


2. Struktur Seleksi (flow chart)
Masukkan
x , y

Terbesar ← x

Salah
Terbesar ← x

benar

Terbesar ← x

Tampilkan
terbesar
1/8/2018 9:32:06 PM WA/Telegram: 0816555065
1. Struktur Pengulangan

Pengulangan menyatakan suatu tindakan atau langkah


yang dijalankan beberapa kali. Sebagai contoh, jika Anda ingin
menampilkan tulisan ”Hello” sebanyak 10 kali, Anda dapat
menuliskannya menggunakan Struktur Sekuensial akan tetapi
jika ingin menampilkan dalam jumlah yang besar maka
Struktur Sekuensial dianggap tidak praktis lagi. Oleh karena itu
dapat menggunakan Struktur Pengulangan.

salah
kondisi

benar

prosedur

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


3. Struktur Pengulangan (Pseudo code)

Contoh 1 : Buatlah algoritma untuk menampilkan 6 buah


tulisan ”Hello” dengan menggunakan pengulangan.
Solusi : Penyelesaian dalam bentuk Pseudocode
1. pencacah ← 1
2. ULANG SELAMA pencacah < 7
tampilkan (”Hello”)
pencacah ← pencacah + 1
AKHIR-ULANG

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


3. Struktur Pengulangan (flow chart)

Pencacah ← 1

Salah Pencacah
< 7

benar

Tampilkan
“Hello”

pencacah ←
pencacah + 1

Selesai

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Tingkat Bahasa Pemrograman
1. Bahasa Pemrograman Tingkat Rendah (Assembler)
2. Bahasa Pemrograman Tingkat Sedang(C, Pascal, Fortran)
3. Bahasa Pemrograman Tingkat Tinggi(Java, C++, C#)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Paradigma Pemrograman
Sudut pandang dan style pemrograman berhubungan
dengan bagaimana sebuah masalah diformulasikan dalam
bahasa pemrograman
1. Functional Programming: Urutan fungsi secara sekuensial
(Scheme, Lisp)
2. Procedural Programming: Pemecahan masalah
berdasarkan prosedural kerja yg terkumpul dalam unit
pemrograman bernama fungsi (C, Pascal)
3. Object-Oriented Programming: Koleksi object yang saling
berinteraksi . Class adalah unit pemrograman (Java, C#, C+
+)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


1/8/2018 9:32:06 PM WA/Telegram: 0816555065
Sejarah Java
Pada Tahun 1996, Sun Microsystem secara resmi merilis versi awal Java yang
kemudian terus berkembang hingga muncul JDK 1.1 (Java Development Kit versi
1.1). Perkembangan terus dilakukan hingga muncul versi baru yang disebut Java 2.
Perubahan utama antara versi sebelumnya adalah adanya Swing yang merupakan
teknologi Graphical User Interface (GUI) yang mampu menghasilkan aplikasi
desktop yang benar-benar baik.
Untuk mengembangkan aplikasi berbasis java, kita memerlukan Java
Development Kit(JDK), saat ini java telah mencapai versi 2 yang kenal dengan java 2
platform. Java 2 platform, dibagi menjadi tiga kategori yaitu:
1. Java Standart Edition (Java SE) pengembangan aplikasi desktop dan applet
(aplikasi java di browser).
2. Java Enterprice Edition(Java EE) pengembangan aplikasi server-side dengan
mempergunakan EJBs (Enterprise Java Beans), aplikasi web dengan servlet dan
JSP dan teknologi CORBA (Common Object Request Broker Architecture) dan
XML (Extensible Markup Language).
3. Java Micro Edition(Java ME) pengembangan aplikasi perangkat bergerak
(mobile).

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Editor Java
Ada banyak editor yang bisa kita gunakan untuk menuliskan soce code
bahasa pemrograman java, bahkan semua editor dimungkinkan selama
editor tersebut mampu menyimpan file dengan ekstensi .java yang
merupakan ekstensi dari file untuk menyimpan source code bahasa
pemrograman java.
Berikut contoh beberapa editor yang bisa dipakai untuk menuliskan
aplikasi java:
1. Notepad
2. Gel
3. JCreator
4. Eclipse
5. Netbeans

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Instalasi Java SE dan Netbeans IDE

1. Instalasi Java SE dengan mengklik: jdk-8u141-nb-


8_2-windows-i586.exe(download dari:
http://java.sun.com/javase/downloads)
2.

3. Instalasi Netbeans dengan mengklik: netbeans-


8.2-windows.exe(download dari: http://netbeans.org)
4.

5. Ikuti seluruh proses instalasi sampai selesai

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Buat file dengan ekstensi .java
metode ini bisa dipanggil dan digunakan didalam Class atau diluar Class.
public class helloworld memiliki sifat yang sama disemua instant Class.
{
public static void main(String[] args) variabel objek.
{ bahwa metode ini tidak mengirimkan nilai balik.
System.out.println(“hallo dunia”);
} yang digunakan untuk mengawali segala bentuk eksekusi pada program java.
metode
}
tipe data objek yang menangani serangkaian karakter-karakter yang berjenis array
stream yang digunakan untuk menangani keluaran standar java
merupakan metode yang digunakan untuk menampilkan teks
dilayar.
digunakan untuk mengakhiri pernyataan

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Contoh lain Nama bebas

String nama = “ “; Yang di munculkan


nama+ = “halo namaku lisa”;
system.out.println(nama);
system.out.println(“ jumlah karakter ” +nama.length);

Yang di munculkan

Menghitung jumlah karakter

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Mengenal Fungsi Pada Java
String
Int
Double
Char

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Fungsi String
String adalah tipe data untuk teks yang merupakan gabungan huruf, angka,
whitespace (spasi), dan berbagai karakter. Fungsi ini digunakan untuk membuat
identifier String/teks.
String juga sering disebut sebagai “array of char”
(Identifier : tanda pengenal)
format: String identifier_name;

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


JoptionPane memunculkan Dialog box

Ketikan script di luar class import javax.swing.JoptionPane;

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Keterangan:

Nama= JoptionPane.showInputDialog(“Hello, Siapa namamu?”);


Berfungsi untuk membuat input dialog box JOptionPane yang nantinya
memberikan pesan berupa sebuah textfield dan button OK
string msg = “ selamat dating “ + nama + “ !” ;
Hasil dari input dialog box JoptionPane adalah String, kemudian akan
disimpan variable nama.
JoptionPane.ShowMessageDialog(Null, msg);
Berfungsi untuk menampilkan sebuah dialog yang berisi pesan yang telah
diinputkan pada input dialog box JOptionPane

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Fungsi int
int (Integer) adalah tipe data untuk angka numerik yang tidak menggunakan
koma, untuk tipe data 32 bit.
berikut contohnya: (dikombinasikan dengan String yang tadi)
format : int identifier_name;

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Fungsi doubel
Double adalah tipe data untuk angka, sama seperti int, tapi Double dapat
menggunakan koma dan tipe data merupakan 64 bit.
format : Double identifier_name;

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Fungsi char
char adalah tipe data untuk karakter tunggal, bisa berupa alpabet ataupun
angka
format: char identifier_name;

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Latihan
1. Buat class HaloIndonesia di dalam package halo Isi
HaloIndonesia.java dengan main method dan tiga tampilan
di bawah:
Halo Indonesia
Selamat Pagi Indonesia
Jaya Indonesia
2. Buatlah program double karakter char?
3. Membuat program penggabungan kata dengan dengan
mode inputan jOptionPane?

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


OPERATOR DAN TIPE DATA DALAM BAHASA
JAVA
1. Tipe data Sederhana
2. Operator dalam bahasa java:
Operator aritmatika
Operator pembandingan
Operator penambahan dan pengurangan
Operator pemberian nilai
1. Latihan

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


TIPE DATA SEDERHANA
Tipe data diperlukan agar compiler mengetahui operasi
apa yang valid dan seberapa banyak memori yang diperlukan
oleh sebuah nilai yang akan disimpan atau dioperasikan.
Sebagai contoh pada sebuah program, data yang dimasukan
ditampung dalam sebuah variable, dimana variable tersebut
pasti memiliki tipe data dan harus dideklarasikan terlebih
dahulu sebelum dapat digunakan. Untuk bahasa java tipe data
dapat dibagi ke dalam dua kategori, yaitu:
1. Tipe Data Sederhana
2. Tipe Data Komposit

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


TIPE DATA SEDERHANA
Tipe data sederhana merupakan tipe data dasar yang dikenal
java, di mana tipe data dasar ini tidak dapat diturunkan dari tipe
lain. Tipe data sederhana terdiri dari delapan jenis yaitu:
1. Empat tipe data angka pertama untuk bilangan bulat: byte, short,
int, long;
2. Dua tipe data angka selanjutnya adalah floating point: float dan
double (tipe ini digunakan untuk bilangan real yang dapat kita
pakai untuk mendeklarasikan bilangan pecahan).
3. Satu tipe Boolean yang digunakan untuk menentukan nilai logika:
true dan false;
4. Tipe yang terakhir adalah char (tipe ini digunakan untuk
menyimpan karakter Unicode tunggal, yaitu data berupa karakter
tunggal [huruf])

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Selanjutnya adalah tipe data untuk floating point. Tipe data float dipakai
pada variable yang berdata bilangan pecahan dengan panjang 32bit,
sedangkan tipe data double digunakan untuk mendeklarasikan bilangan-
bilangan pecahan dengan panjang 64 bit. Dengan kata lain tipe data float
dan double dirancang untuk variable bernilai pecahan dengan panjang bit
yang lebih besar.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Source Code TipeData Bilangan Bulat dan
Float

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Boolean & Char
Tipe data Boolean hanya dapat menyimpan nilai true dan
false, yang secara internal dalam java direpresentasikan
sebagai bilangan biner 1 bit. Tipe data ini biasanya digunakan
untuk perintah kondisional.
Tipe data sederhana yang terakhir adalah character (char).
Tipe data char digunakan untuk menyimpan karakter Unicode
tunggal. Berbeda dengan string, tipe data char hanya
digunakan untuk satu karakter seperti A atau D.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Source Code Tipe Data Boolean dan Char

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


OPERATOR DALAM BAHASA JAVA
Operator merupakan symbol yang digunakan untuk
operasi-operasi aritmatika dan logika. Ada beberapa macam
operator yang harus diketahui dalam pengaplikasian algoritma
pada sebuah program, khususnya pada bahasa java, yaitu:
1. Operator aritmatika
2. Operator pembandingan
3. Operator penambahan (increment) dan pengurangan
(decrement)
4. Operator pemberian nilai (assignment).

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


OPERATOR ARITMATIKA
operator aritmatika merupakan symbol-symbol yang biasa
digunakan dalam operasi matematika seperti penambahan
dan penguran. Simbol-symbol ini sudah sangat umum dalam
kehidupan sehari-hari sehingga pengaplikasiannya pada
bahasa pemrograman tidak terlalu rumit.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


SOURCE-CODE ARITMATIKA

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


OPERATOR PEMBANDINGAN
Operator pembandingan dalam algoritma biasanya
digunakan ketika membuat perintah kondisional dalam
sebuah program. Misalnya, ketika membuat sebuah perintah
kondisional A>B, operator “>” berfungsi sebagai pembanding
antara nilai A dan B, di mana jika nilai A lebih besar, perintah
kondisional tersebut bernilai true. Namun jika salah, nilainya
false.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


SOURCE-CODE PEMBANDING

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


OPERATOR PENAMBAHAN DAN
PENGURANGAN
Operator penambahan (increment) dan pengurangan
(decrement) sebenarnya hamper sama dengan operator
aritmatika. Hanya saja, pengurangannya dalam pemrograman
sedikit berbeda. Operator penambahan dan pengurangan
biasanya dipakai pada perintah perulangan seperti for, while,
dan do-while.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


SOURCE-CODE PENAMBAHAN DAN
PENGURANGAN

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Keterangan
Mungkin hasil program diatas sedikit membingungkan
karena nilainya berbeda dengan teori yang sudah dijabarkan
sebelumnya. Kuncinya terletak pada perbedaan dalam teori
dalam operator j++ dan ++j. ketika perintah j++ dibuat, nilai j
ditampilkan terlebih dahulu sebelum ditambahkan,
sedangkan pada perintah ++j dan nilai j ditambahkan terlebih
dahulu, kemudian ditampilkan dalam hasil program. Pada
hasil running program, nilai p=6 didapat dari perintah ++j
sehingga j=5+1 ditambahkan terlebih dahulu, kemudian
ditampilkan. Berbeda dengan nilai q=6, nilai q didapat dari
perintah j++ sehingga nilai j=6+1 nilai j=6 didapat dari
perintah sebelumnya, ditampilkan terlebih dahulu kemudian
ditambahkan. Dengan demikian nilai q yang ditampilkan
berasal dari hasil penambahan sebelumnya.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


OPERATOR ASSIGNMENT

Operator pemberian nilai (assignment) merupakan operasi


yang bertujuan untuk mempersingkat pengkodean pada
operasi aritmatika. Penggunaannya hampir sama dengan
operator pada penambahan dan pengurangan, namun proses
pemberian nilainya menggunakan dua variable yang berbeda.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


SOURCE-CODE ASSIGNMENT

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Latihan: Meningkatkan Pemahaman
1. Buatlah sebuah program untuk menghitung luas bangun
ruang balok dan kubus? Dengan ketentuan sisi=5,
panjang=4, lebar=2, tinggi=9.
2. Tentukan luas dan keliling lingkaran yang berjari-jari 12 cm?

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


CONSOLE I/O PADA
PEMROGRAMAN JAVA
1. Scanner Class
2. BufferedReader Class
3. Data InputStream Class

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Scanner Input
Statement Di Luar Class

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


BufferedReader Class
Statement Di Luar Class

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


DataInputStream
Statement Di Luar Class

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Latihan
1. Buat program yang dengan memakai metode input pada
java dan outputnya seperti dibawah ini?
Nama Anda : NAILA
Alamat anda : pasuruan
NIM Anda : 2017.016.094
Masukkan Nilai absen : 78Masukan Nilai UTS : 85.0Masukan Nilai UAS : 90.0
Masukan Nilai Tugas : 95.0Nilai Akhirnya Adalah :
Grade :
Ketentuan bobot nilai:
Absen : 30%
Tugas : 20%
UTS : 25%
UAS : 25%

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


PERNYATAAN KONDISIONAL, PERULANG
DAN JUMP
1. Pernyataan kondisional
Perintah if
Perintah if-else
Perintah nested if
Perintah switch-case

1. Looping/Perulangan
Teknik perulangan dengan for
Teknik perulangan dengan while

Teknik perulangan dengan do-while


Teknik perulangan dengan rekursi

1. Jump
Pernyataan break
Pernyataan continue
Pernyataan return
1/8/2018 9:32:06 PM WA/Telegram: 0816555065
1. Latihan
PERNYATAAN KONDISIONAL, PERULANGAN,
DAN JUMP
Seperti bahasa pemrograman lainnya, bahasa java
memiliki cara untuk mengontrol alur eksekusi program yang
bergantung pada kondisi yang telah ditentukan. Secara garis
besar, kontrol alur eksekusi pada java dapat dikelompokkan ke
dalam tiga bagian, yaitu kondisional, perulangan (looping),
dan lompatan (jump).

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


1. Pernyataan Kondisional
Pernyataan kondisional atau pernyataan kontrol
merupakan pernyataan yang terdiri atas kondisi-kondisi, di
mana jika kondisi tersebut terpenuhi, program akan
melakukan instruksi tertentu. Dengan kata lain, pernyataan
kondisional merupakan penunjuk arah untuk urutan suatu
program. Ada dua kunci (keyword) yang dapat digunakan
untuk melakukan seleksi dalam Java, yaitu if-else dan switch,
di mana kedua kunci tersebut menentukan alur eksekusi
program yang akan dijalankan pada suatu percabangan.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Perintah If
Konstruksi if hanya memiliki satu kondisi. Artinya, satu atau beberapa
instruksi akan dijalankan apabila kondisinya dipenuhi. Contoh :

Perhatikan potongan kode di atas, jika nilai IPK kurang dari 2.0, tidak
ada pernyataan yang akan dieksekusi. Sebaliknya, jika nilai IPK lebih besar
atau sama dengan 2.0, pernyataan “Anda lulus” akan dieksekusi.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Perintah If-Else
Konstruksi if-else sedikit berbeda dengan konstruksi if.
Dalam konstruksi if-else, jika sebuah kondisi tidak terpenuhi,
program akan mencari kondisi lain yang ada atau menjalankan
instruksi yang berada di luar bagian dari kondisi yang tidak
terpenuhi.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Program di atas merupakan contoh pernyataan
kondisional (if-else). Apabila parameter yang dimasukkan
bernilai true (IPK >3.75), pernyataan di dalam if-lah yang akan
dieksekusi. Sebaliknya, apabila parameter yang dimasukkan
bernilai false, pernyataan di dalam else-lah yang akan
dieksekusi.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Perintah Nested If
Pernyataan nested-if atau if bersarang merupakan
pernyataan kondisional yang memiliki pilihan (opsi) lebih dari
satu, di mana jika sebuah parameter yang dimasukkan bernilai
false, opsi selanjutnyalah yang akan dicek. Pada akhirnya, jika
semua opsi tidak memenuhi syarat, opsi paling akhir (else)
akan dieksekusi.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Dengan menggunakan konsep pernyataan kondisional nested if-else,
kita dapat membuat sejumlah pilihan pada setiap proses untuk program
yang dibuat.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Switch-Case
Hampir sama dengan if-else, switch-case juga dipakai untuk
mengeksekusi pernyataan kondisional. Bedanya, switch-case
dingunakan untuk mengeksekusi sebuah kondisi dalam bentuk
perbandingan. Biasanya perintah ini digunakan dalam game seperti
mobil balap. Jika keypad A ditekan, mobil akan bergerak ke kiri.
Sementara jika keypad B ditekan, mobil akan bergerak ke kanan.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


1/8/2018 9:32:06 PM WA/Telegram: 0816555065
2. Looping (for, while, do-while)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Flow Chart Looping

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


1/8/2018 9:32:06 PM WA/Telegram: 0816555065
Teknik Perulangan dengan Rekursi
Teknik perulangan denga rekursi ini cukup unik. Teknik ini
memanggil dirinya sendiri untuk melakukan perulangan.
Perulangan akan berhenti jika variabel yang diulang pada saat
proses rekursif sudah tidak terpenuhi. Teknik rekursi sangat
bermanfaat terutama pada kasus-kasus seperti pengurutan
data, tree, dan graph.
Pembahasan teknik rekursi dimulai dari aturan dan bagaimana
proses rekursif berjalan. Seperti halnya perulangan dengan
teknik yang lain, pada teknik rekursi terdapat pengontrol yang
bertugas untuk menentukan kapan sebuah proses rekursif
berakhir. Perhatikan kode Program rekursif berikut.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Teknik Perulangan dengan Rekursi

Terdapat sebuah pernyataan kondisional if(n==0), yang


berfungsi untuk menghentikan proses rekursif. Jik nilai n==0,
rekursi akan dihentikan.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Teknik Perulangan dengan Rekursi
Selanjutnya, perhatikan seluruh aliran kode proses rekursif. Jika
method factorial dengan nilai 4 dipanggil, proses rekursif akan
dilakukan. Karena 4 tidak sama dengan 0, kondisional else diambil dan
4*factorial(4-1) tereksekusi. Dengan demikian, nilai variabelnya
menjadi 3. Setelah itu method factorial dengan nilai 3 dipanggil. Karena
3 tidak sama dengan 0, kondisional else akan dieksekusi. Begitu
seterusnya sampai nilai n==0. Pada nilai n==0 proses rekursif akan
berhenti dan mengembalikan nilai n=1. Kemudian, nilai n=1 akan
memanggil kembali nilai dari tiap method sebelumnya untuk dikalikan
sehingga nilai total yang sudah dikalikan menjadi 1*1*2*3*4=24.
Mungkin timbul pertanyaan di benak kita, mengapa nilai 1
dikembalikan pada saat n==0 (return 1)? Jika nilai 0 dikembalikan
pada saat n==0 (return 0), tentu hasil dari program tersebut
0*1*2*3*4=0. Berikut gambar yang menjelaskan alur rekursi.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Teknik Perulangan dengan Rekursi
Fak(1)=1*fak(1-1)

Return
1*1=1
Fak(2)=2*fak(2-1)

Return
2*1=2
Fak(3)=3*fak(3-1)

Return
3*2=6
Fak(4)=4*fak(4-1)

Return
4*6=24

Dari gambar diatas dapat dilihat bagaimana proses rekursif berjalan.


Pengontrol dari perulangan rekursif di atas adalah perintah opsional
if(n==0). Jika perintah opsional tersebut bernilai true, rekursi akan
berhenti.
1/8/2018 9:32:06 PM WA/Telegram: 0816555065
3. Jump
Jump atau lompatan merupakan suatu bentuk
pengendalian (controlled jump) yang digunakan untuk
mentransfer kendali alur ke bagian program yang lain. Bahasa
Java mendukung tiga jenis bentuk pengendalian, yaitu
break;
continue;
return;

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Pernyataan Break
Pernyataan break digunakan untuk keluar dari switch atau
loop. Dengan memakai break, kita bisa mengakhiri suatu
looping tanpa harus menunggu proses tersebut selesai.
Bentuk lain penggunaan break adalah perintah switch case,
(kondisional switch-case). Berikut contoh program yang
menggunakan break untuk menghentikan loop yang berjalan.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Pernyataan Break

Perhatikan program diatas. Pernyataan break berada di dalam


perintah kondisional (if(i==3)). Jika dilakukan tiga kali (i==3),
perulangannya akan berhenti.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Pernyataan Continue
Jika pernyataan break berfungsi untuk menghentikan /
keluar dari looping, pernyataan continue digunakan untuk
segera melanjutkan proses ke perulangan berikutnya tanpa
mengeksekusi proses yang sedang berlangsung. Berikut
contoh program yang memperlihatkan kegunaan dari
pernyataan continue.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Pernyataan Return
Kegunaan pernyataan return sedikit berbeda dari kedua
jenis controlled jump sebelumnya. Pernyataan return dipakai
untuk segera keluar dari sebuah fungsi / method. Pernyataan
return biasanya digunakan pasa sebuah method yang memiliki
nilai pengembalian.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Pernyataan Return
Perhatikan potongan kode di atas. Method kubus dibuat
dengan memberikan pengembalian nilai bertipe integer.
Pernyataan return berfungsi untuk mengembalikan volume
kubus dengan panjang sisi = 5. Dari hasil running program
dapat diliat bahwa volume kubus tersebut adalah 125.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Latihan
Buatlah sebuah program yang berfungsi untuk
menghitung nilai pangkat. Anda bisa menggunakan metode
perulangan for, while, atau rekursi. (Petunjuk: method yang
dibuat harus memiliki 2 parameter input.)

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


UTS
Buatlah program penjualan dengan menggunakan switch-case, if-else dan
looping. (dalam proses perhitungan selesai, jika pernyataan
“iya”=kembali menghitung ke menu pilihan, jika “tidak”=selesai)
Menjual rokok dengan harga per unit Rp.15000, apabila membeli
dengan jumlah >=10 unit, maka mendapatkan discount 15% dari harga
per unit rokok, jika <=10 maka tidak mendapatkan discount.
Menjual kopi dengan harga per cangkir Rp.5000, apabila membeli
dengan jumlah >=2 unit maka mendapatkan free wifi, jika membeli
dengan jumlah >=5 maka akan mendapatkan free wifi dan discount 10%
dari harga percangkir.

Catatan:
Gunakan console i/o dari inputan harga dan jumlah unit,
kecuali discount.
Selamat Mengerjakan

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


STRING & ARRAY

1. String
Length ()
Chart at (i)
Index of
Equals
1. Array
Array dimensi satu
Array dimensi dua
1.
1/8/2018 Latihan
9:32:06 PM WA/Telegram: 0816555065
1. Definisi String
String merupakan struktur data abstrak yang paling sering
dijumpai. String juga merupakan suatu tipe data bentukan
seperti halnya array, bahkan string sering direpresentasikan
sebagai array karakter atau array of char, yaitu array dari tipe
data char (karakter), sehingga membentuk suatu tipe data
baru yang bisa menyimpan susunan huruf atau karakter
lainnya.
Di dalam Java, string bukanlah sebuah tipe data. String
merupakan objek dari sebuah class. Dalam konteks
pemrograman, string sangat sering dipakai. Pencarian,
pencocokan, serta pengenalan pola dilakukan dengan
memandang ruang persoalannya sebagai string.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Length()
Length() merupakan sebuah method dalam class String yang
digunakan untuk mengembalikan nilai jumlah karakter dari
string. Dengan kata lain, length berfungsi untuk menentukan
jumlah karakter dari variabel String. Berikut contoh cara
pendeklarasian length untuk menentukan jumlah karakter
pada sebuah string.
String kata=“banana”;
Int ukuran=kata.length();
Method length() tidak membutuhkan argumen tambahan apa
pun, di mana pada kasus di atas nilai variabel ukuran adalah 6
karena jumlah karakter dari String kata = “banana” adalah
6. Hal yang perlu diperhatikan ketika melihat jumlah karakter
dalam string adalah adanya space. Karena dalam method
length() space dibaca sebagai 1 karakter, apabila kata String
kata = “banana” ditulis, nilai variabel ukuran menjadi 7.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


CharAt(i)
Method charAt(i) digunakan untuk mengambil huruf-huruf
yang berada dalam sebuah string. Untuk menyimpan hasil
pengambilan huruf tersebut, kita memerlukan variabel baru
yang bertipe char. Contoh :
String kata=“nilaimu”;
Char huruf=kata.charAt(0);

Kode program kata.charAt(0) menunjukkan bahwa kita


menginginkan sebuah huruf dalam String nilaimu pada indeks
0, yaitu huruf n. perlu dipahami disini bahwa konteks indeks
dalam charAt hampir mirip dengan indeks dalam array, di mana
ia akan membaca karakter dari objek String dari indeks 0 untuk
huruf pertama. Jadi, apabila menulis kode katacharAt(6), kita
akan mendapatkan huruf u. Berikut contoh program yang
menjelaskan method charAt().

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


IndexOf
Method indexOf bisa dikatakan sebagai method yang berlawanan dengan
method charAt. Mengapa ? Karena method ini digunakan untuk mengambil indeks
dari sebuah karakter yang diinginkan, sedangkan method charAt digunakan untuk
mengambil karakter dari indeks tertentu. Contoh :
String nama=“nadila”;
Int letak=nama.indexOf(‘d’);
Kode program di atas menjelaskan bahwa nama.indexOf(‘d’) akan
mengembalikan nilai indeks dari posisi karakter huruf d, yaitu angka 2. Mengapa
angka 2 ? Bukankah letaknya pada posisi ketiga ? Jawabannya hampir sama dengan
method charAt(). Pada method indexOf dimulai dari 0. Hal penting yang harus
diperhatikan pada method indexOf adalah apabila jumlah karakter yang digunakan
lebih dari satu (seperti huruf ɑ pada Nɑdilɑ). Cara untuk mengatasinya, tambahan
angka untuk menandai karakter mana yang diinginkan. Contoh :
Int letak=nama.indexOf(‘a’,2);
Penambahan angka 2 menandakan bahwa kita ingin mengambil nilai indeks yang
kedua dari huruf ɑ dala sebuah string sehingga nilai yang diambil adalah indeks ke-
5.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Equals
Method equals merupakan method yang bersifat
comparable, yaitu method yang digunakan untuk
membandingkan sebuah string dengan string yang lain. Method
ini akan memberikan nilai boolean true jika kedua string sama.
Hal ini dibutuhkan karena terkadang dalam suatu kondisi kita
perlu membandingkan dua buah string, biasanya untuk
menentukan jumlah karakter atau isi string. Contoh :
String nama=“nadila”;
String nama=“nadilax”;
Boolean hasil=nama.equals(kata);

nama.equals(kata) membandingkan String nama denga


String kata baik dari segi panjang karakter, huruf besar, maupun
huruf kecil. Dalam kasus di atas, nilai boolean hasil=false karena
panjang kedua karakter berbeda. Berikut contoh program yang
menjelaskan equals.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


2. Array
Array adalah kumpulan data untuk menyimpan item
bertipe sama. Setiap data disimpan dalam alamat memori
yang berbeda yang disebut elemen array. Nilai variabel array
bisa bertipe int, double, ataupun yang lainnya. Hal yang
membedakan antara nilai yang satu dengan nilai yang lain
adalah indeks array. Kata indeks bisa dianalogikan sebagai
nomor kamar di sebuah hotel. Tentunya tiap kamar ditempati
oleh orang yang berbeda. Jadi, indeks Merupakan lokasi data
yang akan disimpan. DI dalam tiap indeks, array dapat
menyimpan nilai bertipe sama. Contoh berikut menunjukkan
cara untuk mendeklarasikan variabel bertipe int dan double.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Array satu dimensi
Array dimensi satu merupakan rangkaian variabel bertipe
serupa. Setiap elemen dalam array dapat diakses melalui
indeks, yang secara default dimulai dari 0. Seperti dijelaskan
sebelumnya, untuk membuat array (termasuk array dimensi
satu) perlu dideklarasikan sebuah variabel array dengan tipe
yang diinginkan.
Int [] hitung= new int [10];
Dengan mendeklarasikan array secara penuh seperti di atas,
kita sudah bisa mengisi tiap indeks dengan data bertipe
integer.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Array dua dimensi
Array dimensi dua sering kali dianalogikan sebagai sebuah
matriks. Jika array dimensi satu hanya terdiri atas satu baris
dan banyak kolom, array dimensi dua terdiri atas banyak baris
dan banyak kolom yang bertipe sama. Dengan
menganalogikan array-nya sebagai sebuah matriks, angka
yang ada akan diatur berdasarkan baris dan kolom / lajur.
Angka dalam susunan tersebut dinamakan entri dalam
matriks atau disebut juga elemen atau unsur.
Int [] [] arr= new int [2][3];
Variabel int[][] arr yang dideklarasikan memiliki ukuran
matriks 2 x 3. Artinya, array yang dibuat akan mengalokasikan
memori sebanyak enam dengan bentuk matriks dua baris dan
tiga kolom. Berikut contoh program penuh untuk array
dimensi dua.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Latihan
Untuk menentukan pemahaman tentang array dan string,
berikut beberapa soal beserta jawaban sebagai bahan latihan.
Sebuah kata disebut palindrom apabila kata tersebut terbaca
sama, baik dari depan maupun belakang, misalnya idi dan
kasurrusak. Buatlah sebuah program untuk memeriksa
apakah suatu kata termasuk palindrom atau tidak. Program
anda bisa menggunakan metode rekursi atau perulangan
biasa.
Buatlah sebuah program untuk mencari nilai terbesar dari
sebuah array dimensi satu.
Sebuah kata disebut abecedarian jika huruf-huruf dalam kata
itu tersusun menurut abjad. Kata Adi, acknow, dan abik,
misalnya, adalah abecedarian. Buatlah sebuah program yang
berfungsi untuk mengecek apakah sebuah kata termasuk
abecedarian atau tidak.

1/8/2018 9:32:06 PM WA/Telegram: 0816555065


Latihan Psikomotorik
1. Apa hasil source code berikut:
Int bin;
Bil = 1;
While (bil <=10){
System.out.println(bil + “ ”);
Bil=bil+2;
2. Apa definisi Pseudo Code? Tulislah Notasi Pseudo Code Luas dan Keliling
Persegi Panjang!
3. Apa definisi flowchart? Tulislah Flowchart Luas dan Keliling Persegi Panjang!
4. Tulislah Source Code dengan perintah Nested if atau if bersarang yang meminta
sebuah inputan Nama dan Nilai dari keyboard, dan kemudian menampilkan
informasi Nama, Nilai dan Grade.
Dengan ketentuan: jika nilai >=90-100 maka huruf =A, nilai >=79-89 maka
huruf B, nilai >=70-88 maka huruf =C, dan jika <=70 maka huruf=D
5. Tulislah source code dengan masing-masing perintah for , while dan do-while
dengan menampilkan informasi:
Selamat mengerjakan UAS
Selamat mengerjakan UAS

1/8/2018 9:32:06 PM WA/Telegram: 0816555065

Anda mungkin juga menyukai