Anda di halaman 1dari 6

Tanda Tangan Verifikasi

Dosen Ka. Prodi

UJIAN TENGAH SEMESTER GANJIL T.A. 2021/2022


PERIODE UJIAN NOVEMBER 2021
REGULER PAGI

Mata Kuliah : Algoritma dan Pemrograman


Hari, Tanggal : Selasa, 23 November 2021
Kelas/Semester : TI-3/1
Waktu Ujian : 1x23 Jam (08:00 – 07:00 hari Rabu)
Dosen : Kusnadi, S.Kom., M.Kom.
Jawaban : Format PDF

NAMA : YUNDA PUTRI HERAWATI


NIM : 20210120074
KELAS : TEKNIK INFORMATIKA 3/1

Soal :
1. Jelaskan tujuan kita mempelajari algoritma dan pemrograman. (POINT 10)
2. Sebutkan apa saja aturan dalam penulisan algoritma (POINT 10)
3. Tulis kembali algoritma di bawah ini, jika ditemukan yang menurut anda salah silahkan
perbaiki. (POINT 15)
ALGORITMA Hitung Angsuran Kredit
Algorima untuk menentukan besar cicilan sebuah pinjaman sesuai dengan besar pinjaman dan
lama serta bunga
DESKRIPSI
lama : integer
pinjaman : string
bunga : string
xbunga : char
cicilan : real
xcicilan : string
DEKLARASI
write (“Masukkan besar pinjaman = “) read (“pinjaman”)
write (“Masukkan lama pinjaman = “) read (“lama”) write
(“Masukkan besar bunga = “’) read (“bunga”)
xbunga = bunga * pinjamanxcicilan
= pinjaman / lama cicilan =
xbunga + xcicilan
write (‘Besar anguran perbulan untuk pinjaman sebesar Rp’,pinjaman,’ dengan
lama’,lama,’ dan bunga ‘,bunga,’ % adalah = Rp’,
4. Membuat algoritma kasir untuk menghitung penjualan baju di "IF Clothing". Tentukan varibel-
veriabel apa saja yang dibutuhkan untuk mendukung proses perhitungannya. Ada beberapa
ketentuan sbb: (POINT 20)
- Jika kode baju=IF1 maka Merk Baju = IFSE, dengan ukuran baju=S atau s, makaharganya
45000, Jika ukuran baju= selain itu, maka harganya 60000.
- Jika kode baju=IF2 maka Merk Baju = IFIS, dengan ukuran baju=S atau s, makaharganya 65000,
Jika ukuran Baju= selain itu, maka harganya 75000.
- Jika memasukkan kode baju selain yang ada di listing program (selain 1/2) maka
keluarannya=Salah kode baju.

5. Buat algoritma untuk menghitung Nilai Akhir mahasiswa beserta Indexnya. Dengan ketentuan
antara lain : Kehadiran 10%, Tugas 10%, Kuis 20%, UTS 30% dan UAS 40%. Dengan ketentuan
Nilai Akhir dan Indeks: (POINT 20)

Nilai Akhir Indeks Keterangan


85 – 100 A Lulus
70 - 84,9 B Lulus
55 - 69,9 C Lulus
40 - 54,9 D Gagal
< 40 E Gagal

6. Buat Program untuk menghitung gaji karyawan dengan input nama, golongan, status kawin,
jumlah jam kerja. (POINT 25)
Tunjangan
Jam Upah
Gol Gaji Pokok Kerja Lembur/Jam Menikah
Lajang
Anak=0 Anak=1 Anak=2
1 3,000,000 30 30,000 400,000 420,000 150,000 500,000
2 2,000,000 35 20,000 300,000 320,000 350,000 400,000
3 1,500,000 40 15,000 200,000 220,000 250,000 300,000
Pajak sebesar 5% untuk semua karyawan
Jawaban :

1. Tujuan mempelajari algoritma dan pemrograman adalah agar memudahkan menyelesaikan masalah
secara efisien, membuat masalah besar menjadi lebih sederhana, dan meminimalisir kesalahan.

2. Judul, Deklarasi, Deskripsi

3.
ALGORITMA Hitung Angsuran Kredit
{Algorima untuk menentukan besar cicilan sebuah pinjaman sesuai dengan besar pinjaman dan
lama serta bunga}

DEKLARASI :
lama : integer
pinjaman : string
bunga : string
xbunga : char
cicilan : real
xcicilan : string
DESKRIPSI :
write (‘Masukkan besar pinjaman = ‘) read (pinjaman)
write (‘Masukkan lama pinjaman = ‘) read (lama)
write (‘Masukkan besar bunga = ‘) read (bunga)
xbunga = bunga * pinjaman
xcicilan = pinjaman / lama
cicilan = xbunga + xcicilan
write (‘Besar anguran perbulan untuk pinjaman sebesar Rp. ’, pinjaman ’ dengan lama’, lama ’ dan
bunga ‘, bunga ’ % adalah = Rp ’, cicilan)

4.
ALGORITMA total_penjualan
{Menghitung total penjualan baju di IF Clothing}

DEKLARASI:
kode_baju : string
merk : string
harga : integer
ukuran : char

DESKRIPSI:
write (‘Masukkan Kode Baju {IF1, IF2}= ’) read (kode_baju)
if (kode_baju = ‘IF1’ or kode_baju = ‘if1’) then
merk  IFSE
if (ukuran = ‘S’ or ukuran = ‘s’) then
harga  45000
else
harga  60000
endif
elseif (kode_baju = ‘IF2’ or kode_baju = ‘if2’) then
merk  IFIS
if (ukuran = ‘S’ or ukuran = ‘s’) then
harga  65000
else
harga  75000
endif

else
merk  ‘Kode Baju Salah’
endif

5.
ALGORITMA menghitung_nilai_akhir
{ Menghitung nilai akhir mahasiswa }

DEKLARASI:
nim : string
nama_mahasiswa : string
indeks : string
keterangan : string
absen_kehadiran : integer
nilai_kuis : float
nilai_uts : float
nilai_uas : float
const kuis : 0,1
const tugas : 0,1
const kehadiran : 0,1
const uts : 0,3
const uas : 0,4
total_nilai : float

write (‘masukan Nama Mahasiswa =’) read (nama_mahasiswa)


write (‘masukan Nim =’) read (nim)
write (‘masukan Keterangan =’) read (keterangan)
write (‘masukan Indeks = [A], [B], [C], [D], [E]’) read (indeks)
write (‘masukan Absen Kehadiran =’) read (absen_kehadiran)
write (‘masukan Nilai Tugas =’) read (nilai_tugas)
write (‘masukan Nilai Kuis =’) read (nilai_kuis)
write (‘masukan Nilai Uts =’) read (nilai_uts)
write (‘masukan Nilai Uas =’) read (nilai_uas)
total_nilai  (kehadiran * absen_kehadiran) + (kuis * nilai_kuis) + (tugas * nilai_tugas) +
(uts *nilai_uts) + (uas * nilai_uas)
if (total_nilai >= 85) then
indeks  A
elseif (total_nilai >= 70) then
indeks  B
elseif (total_nilai >= 55) then
indeks  C
elseif (total_nilai >= 40) then
indeks  D
else
indeks  E
endif

if (indeks >= ‘C’) then


keterangan  ‘LULUS’
else
keterangan  ‘GAGAL’

6.
ALGORITMA gaji_karyawan
{Menghitung gaji karyawan}

DEKLARASI:
nik : string
nama_karyawan : string
status : string
golongan : string
gaji_pokok : string
jam_kerja : string
upah_lembur : int
tunjangan : string
jumlah_anak : integer
const pajak : 0.5
total_pajak : float
total_gaji : float

DESKRIPSI:
write (‘masukan Nik =’) read (nik)
write (‘masukan Nama Karyawan =’) read (nama_karyawan)
write (‘masukan Golongan =’) read (golongan)
write (‘masukan Status Lajang {L}, Menikah {M} =’) read (status)
write (‘masukan Jumlah Anak 0{0}, 1{1}, 2{2} =’) read (jumlah_anak)
write (‘masukan Jam Kerja =’) read (jam_kerja)
if (golongan = ‘1’) then
gaji_pokok  3000000
upah_lembur  30000
elseif (golongan = ‘2’) then
gaji_pokok  2000000
upah_lembur  20000
else
gaji_pokok  1500000
upah_lembur  15000
endif
if (status = ‘M’ or status = ‘m’ ) then
if (golongan = ‘1’) then
tunjangan  420000
tunjangan  150000
tunjangan  500000
elseif (golongan = ‘2’) then
tunjangan  320000
tunjangan  350000
tunjangan  400000
else
tunjangan  220000
tunjangan  250000
tunjangan  420000
endif
else (status = ‘L’ or status ‘l’) then
if (golongan= ‘1’) then
tunjangan  400000
elseif (golongan= ‘2’) then
tunjangan  300000
else
tunjangan  200000
endif
endif

total_gaji  (gaji_pokok + upah_lembur + tunjangan) / total_pajak

write (‘Total Gaji = ‘, total_gaji)

Anda mungkin juga menyukai