Bab 3
algoritma dan
flowchart
Pemrograman dan Jenis Data
 Mendefinisikan masalah
 Menentukan solusi
 Memilih algoritma
 Menulis program
 Menguji program
 Menulis dokumentasi
Langkah-langkah dalam
Pemprograman Komputer
• Variabel adalah tempat 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
Contoh penamaan variabel
• Konstanta adalah variabel 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
• Pada sebuah kode 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
• Tipe data adalah 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
Pengelompokan Tipe Data
• Tipe data numeric 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
• Jenis yang termasuk 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
Penggunaan Tipe Data
Numeric
Penggunaan Tipe Data
Numeric
 Character merupakan tipe data yang
paling banyak digunakan.
 Tipe data character kadang disebut
sebagai char atau string.
Tipe Data Character
 Tipe data string hanya dapat digunakan
menyimpan teks atau apapun
sepanjang berada dalam tanda petik
dua (“…”) atau petik tunggal (‘…’).
Tipe Data Character
Penggunaan Tipe Data Character
• Tipe data Boolean 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
If(Nilai >=86){
System.out.Println(“Nilai A”);
}
Else if(Nilai>=70){
System.out.Println(“Nilai B”);
}
Else{
System.out.Println(“Nilai C”);
}
Penggunaan Tipe Data
Boolean
Nama Operator Simbol Operator 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
Nama Operator Simbol Operator 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
Nama Operator Simbol Operator Ekspresi aljabar Ekspresi program
Not ! ! ! X
And && && X && Y
Or || || X || Y
xor xor xor X xor Y
Operator Boolean
Hasil Operator Boolean Bit
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
• Algoritma adalah urutan 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
• Structured English
SE merupakan 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
• Menghitung luas lingkaran:
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
Template Algoritma
Nama
Algoritma
Diberikan nama algoritma
Deklarasi Berisi variabel-variabel yang digunakan
Deskripsi Deskripsi alur program
• Dari contoh slide 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);
Latihan Pembuatan Flowchart
Pertemuan 5
 Flowchart atau bagan 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
Simbol-simbol yang
digunakan dalam flowchart
Contoh flowchart
Struktur Algoritma berurutan
Contoh struktur algoritma
berurutan
• Dari contoh algoritma 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
 Sebuah program tidak 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
 Sebuah aturan untuk 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
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
jawaban flowchart:
menonton_film
 Dalam suatu perhitungan 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
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
jawaban flowchart:
hitung_bilangan
 Diketahui pegawai dengan 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 (tjg0.1*gapok). Kemudian gapok
dan tjg dijumlahkan yang hasilnya disimpan sebagai gatot. Dengan
demikian output yang keluar adalah 1100.
Nama
Algoritma
Gaji_pegawai
Deklarasi Tjg, mk, gapok, gatot : double
Deskripsi Read (mk, gapok )
If(mk>3) then
tjg  0.2 * gapok
Else
tjg  0.1 * gapok
Gatot  gapok + tjg
Write(‘gaji total’,gatot )
Jawaban algoritma: gaji
Jawaban flowchart: gaji
 Buatlah algoritma dan 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
Nama Algoritma Tahun_kabisat
Deklarasi Tahun_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
Jawaban flowchart: tahun kabisat
Jawaban flowchart: tahun kabisat
 Jika beli produk >=3, maka diskon 5%
Latihan soal 5 : form
Nama
program
Pembelian_barang
Deklarasi Kodebarang, jml_beli : int;
Hargasatuan,jml_harga,pot,bayar : double;
Deskripsi read (kodebarang,hargasatuan,jml_beli)
Jml_harga = hargasatuan * jml_beli;
If jml_beli >=3
Pot = 0.5;
Else
Pot = 0;
Bayar = (Jml_harga) – (Jml_harga* pot);
Write(‘Jumlah Harga’, Jml_harga )
Write(‘Potongan’,pot)
Write (‘bayar’, bayar);
Jawaban algoritma: form
Jawaban flowchart:
form
• Sebuah usaha fotokopi 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
Nama
algoritma
Biaya_fotokopi
Deklarasi Status : String;
JLF : int;
HPP, TH : real;
Deskripsi Read (Status,JLF)
if Status==“langganan”
HPP  75
else
if JLF < 100
HPP  100
else
HPP  85
TH  JLF * HPP
Write (‘Total Harga’, TH)
jawaban algoritma:
percabangan bersarang
a01MenghitungBiayaFotokopi.java
jawaban flowchart: percabangan
• Aturan kelulusan siswa 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
Nama algoritma Kelulusan_siswa
Deklarasi nim,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
Jawaban
flowchart: lulus

bab3_alpro1algoritma pemrograman komputer.pptx

  • 1.
  • 2.
  • 3.
     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
  • 5.
  • 6.
    • 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
  • 9.
  • 10.
    • 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
  • 12.
  • 13.
  • 14.
     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
  • 16.
  • 17.
    • 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
  • 18.
    If(Nilai >=86){ System.out.Println(“Nilai A”); } Elseif(Nilai>=70){ System.out.Println(“Nilai B”); } Else{ System.out.Println(“Nilai C”); } Penggunaan Tipe Data Boolean
  • 19.
    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
  • 26.
    Template Algoritma Nama Algoritma Diberikan namaalgoritma Deklarasi Berisi variabel-variabel yang digunakan Deskripsi Deskripsi alur program
  • 27.
    • 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);
  • 28.
  • 29.
     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
  • 30.
  • 33.
  • 34.
  • 35.
  • 36.
    • 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
  • 40.
  • 41.
     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
  • 43.
  • 44.
     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 (tjg0.1*gapok). Kemudian gapok dan tjg dijumlahkan yang hasilnya disimpan sebagai gatot. Dengan demikian output yang keluar adalah 1100.
  • 45.
    Nama Algoritma Gaji_pegawai Deklarasi Tjg, mk,gapok, gatot : double Deskripsi Read (mk, gapok ) If(mk>3) then tjg  0.2 * gapok Else tjg  0.1 * gapok Gatot  gapok + tjg Write(‘gaji total’,gatot ) Jawaban algoritma: gaji
  • 46.
  • 47.
     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
  • 49.
  • 50.
  • 51.
     Jika beliproduk >=3, maka diskon 5% Latihan soal 5 : form
  • 52.
    Nama program Pembelian_barang Deklarasi Kodebarang, jml_beli: int; Hargasatuan,jml_harga,pot,bayar : double; Deskripsi read (kodebarang,hargasatuan,jml_beli) Jml_harga = hargasatuan * jml_beli; If jml_beli >=3 Pot = 0.5; Else Pot = 0; Bayar = (Jml_harga) – (Jml_harga* pot); Write(‘Jumlah Harga’, Jml_harga ) Write(‘Potongan’,pot) Write (‘bayar’, bayar); Jawaban algoritma: form
  • 53.
  • 54.
    • 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
  • 55.
    Nama algoritma Biaya_fotokopi Deklarasi Status :String; JLF : int; HPP, TH : real; Deskripsi Read (Status,JLF) if Status==“langganan” HPP  75 else if JLF < 100 HPP  100 else HPP  85 TH  JLF * HPP Write (‘Total Harga’, TH) jawaban algoritma: percabangan bersarang a01MenghitungBiayaFotokopi.java
  • 56.
  • 57.
    • 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
  • 59.