Mendefinisikan masalah
Menentukan solusi
Memilih algoritma
Menulis program
Menguji program
Menulis dokumentasi
Langkah-langkah dalam
Pemprograman Komputer
4.
• Variabel adalahtempat dimana kita dapat
mengisi atau mengosongkan nilainya dan
memanggil kembali apabila dibutuhkan. Setiap
variabel akan mempunyai nama (identifier) dan
nilai. Perhatikan contoh berikut.
• Contoh:
Username=“toni”
Nama=“kusumo_destoni”
Harga=“2500”
HargaTotal=“34000”
Definisi Kunci: Variabel
• Konstanta adalahvariabel yang nilai datanya
bersifat tetap dan tidak bisa diubah.
• konstanta adalah juga variabel bedanya adalah
pada nilai yang disimpannya.
• Jika nilai datanya sepanjang program berjalan
tidak berubahubah, maka sebuah varibel lebih
baik diperlakukan sebagai konstanta.
Definisi Kunci Konstanta
7.
• Pada sebuahkode program, biasanya nilai data dari
konstanta diberikan langsung di bagian deklarasi
konstanta.
• Sebagai contoh, jika kita membuat program
perhitungan matematik yang menggunakan nilai pi
(3.14159) yang mungkin akan muncul dibanyak
tempat pada kode program, kita dapat membuat pi
sebagai konstanta. Penggunaan konstanta pi akan
lebih memudahkan penulisan kode program
dibanding harus mengetikkan nilai 3.14159 berulang-
ulang.
Definisi Kunci Konstanta
8.
• Tipe dataadalah jenis data yang dapat diolah oleh
komputer untuk memenuhi kebutuhan dalam
pemrograman komputer.
• Setiap variabel atau konstanta yang ada dalam kode
program, sebaiknya kita tentukan dengan pasti tipe
datanya.
• Ketepatan pemilihan tipe data pada variabel atau
konstanta akan sangat menentukan pemakaian
sumberdaya komputer (terutama memori komputer)
• Salah satu tugas penting seorang programmer adalah
memilih tipe data yang sesuai untuk menghasilkan
program yang efisien dan berkinerja tinggi.
Tipe Data
• Tipe datanumeric digunakan pada variabel
atau konstanta untuk menyimpan nilai dalam
bentuk bilangan atau angka.
• Semua bahasa pemrograman menyediakan
tipe data numeric, hanya berbeda dalam jenis
numeric yang diakomodasi.
Type Data Numeric
11.
• Jenis yangtermasuk dalam tipe data numeric
antara lain integer (bilangan bulat), dan float
(bilangan pecahan).
• Tipe data Single adalah tipe data untuk
bilangan pecahan dengan presisi yang terbatas.
• Tipe data Double adalah tipe data untuk
bilangan pecahan dengan presisi yang lebih
akurat
Type Data Numeric
Character merupakantipe data yang
paling banyak digunakan.
Tipe data character kadang disebut
sebagai char atau string.
Tipe Data Character
15.
Tipe datastring hanya dapat digunakan
menyimpan teks atau apapun
sepanjang berada dalam tanda petik
dua (“…”) atau petik tunggal (‘…’).
Tipe Data Character
• Tipe dataBoolean digunakan untuk
menyimpan nilai True/False (Benar/Salah).
• Pada sebagian besar bahasa pemrograman
nilai selain 1 menunjukkan True dan 0
melambangkan False.
• Tipe data ini banyak digunakan untuk
pengambilan keputusan pada struktur
percabangan dengan IF … THEN atau IF …
THEN … ELSE.
Tipe Data Boolean
Nama Operator SimbolOperator Ekspresi aljabar Ekspresi
program
Penambahan + A + B A + B
Pengurangan - A – B A – B
Perkalian * AB A * B
Pembagian / A/B A / B
Sisa bagi
(modulo)
% A%B A % B
Operator Aritmatika
Nilai A = 8
Nilai B = 6
Penambahan = 14
Pengurangan = 2
Perkalian = 48
Pembagian = 1.333
Sisa Bagi = 2
a01Operator.java
20.
Nama Operator SimbolOperator Ekspresi aljabar Ekspresi
program
Sama dengan = == X == Y
Tidak sama
dengan
≠ != X != Y
Operator Equalitas
Nama Operator Simbol Operator Ekspresi aljabar Ekspresi
program
lebih besar > > X > Y
Lebih kecil < < X < Y
Lebih besar sama
dengan
≥ >= X >= Y
Lebih kecil sama
dengan
≤ =< X =< Y
Operator Rasionalitas (Pembanding)
Comparison.java
21.
Nama Operator SimbolOperator Ekspresi aljabar Ekspresi program
Not ! ! ! X
And && && X && Y
Or || || X || Y
xor xor xor X xor Y
Operator Boolean
22.
Hasil Operator BooleanBit
Hasil Operator Boolean
kondisi
X Y Not X Not Y X and Y X or Y X xor Y
false False True True False False False
false true 1 False False True True
True False False True False True True
True True False False True true false
X Y Not X Not Y X and Y X or Y X xor Y
0 0 1 1 0 0 0
0 1 1 0 0 1 1
1 0 0 1 0 1 1
1 1 0 0 1 1 0
23.
• Algoritma adalahurutan langkah berhingga
untuk memecahkan masalah logika atau
matematika
• Contoh algoritma: mengirimkan surat dengan
amplop
– Mempersiapkan kertas dan amplop
– Mempersiapkan alat tulis, seperti pena atau pensil
– Mulai menulis
– Memasukkan kertas kedalam amplop
– Pergi ke kantor pos untuk mengeposkan surat
tersebut
Definisi Kunci: Algoritma
24.
• Structured English
SEmerupakan alat yang cukup baik untuk
menggambarkan suatu algoritma. Dasar dari SE adalah
Bahasa Inggris, namun kita dapat memodifikasi dengan
Bahasa Indonesia sehingga kita boleh menyebutnya
sebagai Structured Indonesian (SI).
• Pseudocode
Pseudo berarti imitasi atau tiruan atau menyerupai,
sedangkan code menunjuk pada kode program.
Sehingga pseudocode adalah kode yang mirip dengan
instruksi kode program sebenarnya.
Cara Penulisan Algoritma
25.
• Menghitung luaslingkaran:
1. Masukkan R
2. Pi 3.14
3. L Pi * R * R
4. Tulis L
Contoh algoritma
Maksud dari : nilai di sebelah kanan diberikan pada
OPERAN di sebelah kiri.
Pi 3.14 = berikan nilai 3.14 ke Pi
• Dari contohslide sebelumnya (luas lingkaran)
Contoh Template Algoritma
Nama
Algoritma
Menghitung_luas_lingkaran
Deklarasi R : integer;
L : float;
Pi = 3.14 : konstanta
Deskripsi Read(R);
Pi 3.14;
L Pi * R * R;
Write(L);
Flowchart ataubagan alir adalah skema/bagan
(chart) yang menunjukkan aliran (flow) di dalam
suatu program secara logika.
Flowchart merupakan alat yang banyak
digunakan untuk menggambarkan algoritma
dalam bentu notasi-notasi tertentu.
Definisi Kunci: Flowchart
• Dari contohalgoritma menghitung luas
lingkaran, maka dapat digambarkan sebagai
berikut:
Penulisan Flowchart (1)
Nama
Algoritma
Menghitung_luas_lingkaran
Deklarasi R : integer;
L : float;
Pi = 3.14 : konstanta
Deskripsi Read(R);
Pi 3.14;
L Pi * R * R;
Write(L);
a01MenghitungLuasLingkaran.java
37.
Sebuah programtidak selamanya akan
berjalan dengan mengikuti struktur
berurutan, kadang-kadang kita perlu
merubah urutan pelaksanaan program dan
menghendaki agar pelaksanaan program
meloncat ke baris tertentu.
Peristiwa ini kadang disebut sebagai
percabangan/pemilihan atau keputusan.
Struktur Algoritma Percabangan
38.
Sebuah aturanuntuk menonton sebuah film
tertentu adalah sebagai berikut, jika usia
penonton lebih dari 17 tahun maka penonton
diperbolehkan dan apabila kurang dari 17
tahun maka penonton tidak diperbolehkan
nonton.
Latihan soal 1 : menonton_film
39.
Nama
algoritma
Menonton_film
Deklarasi Usia :real;
Psn : String;
Deskripsi Read (Usia)
if Usia > 17
Psn “anda boleh menonton”
else
Psn “anda tidak boleh menonton”
Write(‘Pesan’, Psn)
jawaban algoritma:
menonton_film
a01MenontonFilm.java
Dalam suatuperhitungan nilai P = X + Y. Jika P
positif, maka Q = X * Y, sedangkan jika negative
maka nilai Q = X/Y. Buatlah flowchart untuk
mencari nilai P dan Q
Latihan soal 2 : hitung_bilangan
42.
Nama
algoritma
Hitung_bilangan
Deklarasi X, Y: real;
P, Q : real;
Deskripsi Read (X,Y)
P X + Y
if P > 0
Q X * Y
else
Q X / Y
Write(‘Nilai P’,P)
Write(‘Nilai Q’, Q)
jawaban algoritma: hitung_bilangan
a01MenghitungBilangan.java
Diketahui pegawaidengan masa kerja lebih
dari 3 tahun mendapat tunjangan sebesar 20%
gaji pokok sedang yang kurang dari itu
mendapat tunjangan 10%. Input program
adalah masa kerja dan gaji pokok. Buatlah
algoritmanya (30)
Untuk lebih jelasnya, perhatikan penjelasan
berikut ini:
Latihan Soal 3 : gaji
Mula-mula dimasukkan data (mk) dan (gapok). Misalnya, masing-
masing diberi nilai 2 dan 1000. Karena (mk>3) bernilai salah, maka
perintah yang dikerjakan adalah (tjg0.1*gapok). Kemudian gapok
dan tjg dijumlahkan yang hasilnya disimpan sebagai gatot. Dengan
demikian output yang keluar adalah 1100.
Buatlah algoritmadan flowchart untuk
menghitung umur anda dengan memasukkan
tahun sekarang. Hasil penghitungan adalah
◦ apakah tahun sekarang tahun kabisat atau tidak
◦ Umur anda dalam hitungan jam
Latihan soal 4 : tahun kabisat
48.
Nama Algoritma Tahun_kabisat
DeklarasiTahun_sekarang : int;
Tahun_lahir : int;
Hitung_umur_tahun : int
Hitung_umur_jam : int
Kata : String
Deskripsi Read (tahun_sekarang,tahun_lahir)
Hitung_umur_tahun tahun_sekarang – tahun_lahir
Hitung_umur_jam hitung_umur_tahun * 8760
If((tahun_sekarang % 400 ==0) ||((tahun_sekarang % 4
== 0) && (tahun_sekarang %100 != 0)) )
kata tahun kabisat
Else
kata tidak tahun kabisat
Write (hitung_umur_jam, kata)
Jawaban soal: tahun kabisat
a01TahunKabisatSimple.jav
a
• Sebuah usahafotokopi mempunyai aturan
sebagai berikut :
jika yang fotokopi statusnya adalah
langganan, maka berapa lembar pun dia
fotokopi, harga perlembarnya Rp. 75,-
jika yang fotokopi bukan langganan, maka jika
dia fotokopi kurang dari 100 lembar harga
perlembarnya Rp. 100,-. Sedangkan jika lebih
atau sama dengan 100 lembar maka harga
perlembarnya Rp. 85,-.
Latihan soal 6 : percabangan
bersarang
• Aturan kelulusansiswa pada mata pelajaran
Pemrograman Web diterapkan sebagai berikut :
Jika nilai ujian tengah semester (UTS) lebih
besar dari 70 maka siswa dinyatakan lulus dan
Nilai Akhir sama dengan nilai UTS.
Jika nilai UTS kurang atau sama dengan 70
maka siswa dinyatakan lulus jika Nilai Akhir
lebih besar atau sama dengan 60 dimana Nilai
Akhir = (nilai UTS x 40%) + (nilai UAS x 60%).
Latihan Soal 7: percabangan
bersarang
58.
Nama algoritma Kelulusan_siswa
Deklarasinim,nama,status : String;
NUTS,NUAS,NA : real;
Deskripsi Read (nim,nama,status,NUTS,NUAS)
if NUTS > 70
NA NUTS;
status “lulus”
else
NA (NUTS * 0.4) + (NUAS * 0.6)
if NA >= 60
status “lulus”
else
status “tidak lulus”
Write (‘Nim, Nama, NA, Status’)
Jawaban algoritma: lulus