TUGAS 6
Disusun oleh:
Nama : DEDEN FARHAN
NPM : 0618104038
BANDUNG
2018
Tugas Pendahuluan VI
1. Buat algoritma untuk penghitungan gaji karyawan berikut, sehingga bisa menangani lebih dari 1
karyawan tanpa perlu keluar dari program. Buat 2 versi algoritma menggunakan looping WHILE-
DO dan REPEAT-UNTIL!.
Sebuah perusahaan meminta anda sebagai programmer yang sudah sangat terkenal untuk
membuatkan program penghitungan gaji karyawan di perusahaan tersebut, dengan ketentuan:
Gaji Pokok berdasarkan golongan
Golongan Gaji Pokok
1 500
2 1000
3 1500
4 2000
Jika sudah menikah maka tunjangan keluarganya sebesar 10% dari gaji pokok
Jika sudah menikah dan mempunyai anak (maksimal 3 orang) akan mendapat tunjangan
anak sebesar 12.5% per anak Rumus perhitungan gajinya menjadi: Gaji = Gaji Pokok +
Bonus + tunjangan keluarga + tunjangan anak
Solusi:
Algoritma WHILE-DO Algoritma REPEAT-UNTIL
Program hitung_gaji Program hitung_gaji
Kamus Data: Kamus Data:
sts, lanjut : char sts, lanjut : char
gpokok : integer gpokok : integer
gol, masa_kerja, bonus, janak :integer gol, masa_kerja, bonus, janak :integer
t_keluarga, t_anak, thp: real t_keluarga, t_anak, thp: real
Algoritma: Algoritma:
lanjut ‘Y’ lanjut ‘Y’
WHILE (lanjut!=’N’) OR (lanjut!=’n’) DO REPEAT
INPUT(gol) INPUT(gol)
INPUT(masa_kerja) INPUT(masa_kerja)
INPUT(sts) INPUT(sts)
2. Buat algoritma untuk kalkulator keliling bidang berikut, sehingga bisa menangani lebih dari 1
perhitungan tanpa perlu keluar dari program. Buat 2 versi algoritma menggunakan looping
WHILE-DO dan REPEAT-UNTIL! Buatlah program untuk membuat kalkulator keliling bidang
berdimensi dua, yaitu persegi, persegi panjang, dan lingkaran. Input yang digunakan bergantung
kebutuhan menu yang dipilih
INPUT / OUTPUT Kalkulator Keliling
1. Keliling Persegi
2. Keliling Persegi Panjang
3. Keliling Lingkaran
4. Keluar
Masukkan nomor menu : 1
Menu Hitung Keliling Persegi
Masukkan sisi : 5
Keliling persegi : 20
Kalkulator Keliling
1. Keliling Persegi
2. Keliling Persegi Panjang
3. Keliling Lingkaran
4. Keluar
Masukkan nomor menu : 3
Menu Hitung Keliling Lingkaran
Masukkan jari-jari : 7
Keliling lingkaran : 44
Solusi:
Algoritma FOR-DO Algoritma WHILE-DO
Program deret Program deret
Kamus Data: Kamus Data:
i, n, ta, na : integer i, n, ta, na : integer
Algoritma: Algoritma:
na 1 i 1
ta 0 na 1
INPUT(n) ta 0
OUTPUT(‘Sum = ’) INPUT(n)
FOR i 1 TO n DO OUTPUT(‘Sum = ’)
Solusi:
Algoritma FOR-DO Algoritma WHILE-DO
Program deret Program deret
Kamus Data: Kamus Data:
i, n, ta, na : integer i, n, ta, na : integer
Algoritma: Algoritma:
na 5 i 1
ta 0 na 5
INPUT(n) ta 0
OUTPUT(‘Sum = ’) INPUT(n)
FOR i 1 OUTPUT(‘Sum = ’)
TO n DO REPEAT
OUPUT(na, ‘ + ’) OUPUT(na, ‘ + ’)
ta ta + na ta ta + na
na na+5 na na+5
END FOR i i+1
OUTPUT(‘=’, ta) UNTIL i > n
OUTPUT(‘=’, ta)
Jika sudah menikah maka tunjangan keluarganya sebesar 10% dari gaji pokok
Jika sudah menikah dan mempunyai anak (maksimal 3 orang) akan mendapat
tunjangan anak sebesar 12.5% per anak Rumus perhitungan gajinya menjadi: Gaji =
Gaji Pokok + Bonus + tunjangan keluarga + tunjangan anak
Buat program C-nya, sehingga bisa menangani lebih dari 1 karyawan tanpa perlu keluar dari
program. Gunakan skema looping!
Solusi:
Algoritma WHILE-DO Program
Program hitung_gaji #include <stdio.h>
Kamus Data: char sts;
sts: char int lanjut, gol, masa_kerja, bonus, janak,
gpokok, thp, lanjut : integer gpokok, thp;
gol, masa_kerja, bonus, janak :integer float t_keluarga, t_anak;
t_keluarga, t_anak: float
Algoritma: main()
lanjut 1 {
WHILE (lanjut) DO lanjut = 1;
INPUT(gol) while (lanjut) {
INPUT(masa_kerja) printf("Masukan Golongan : ");
INPUT(sts) scanf("%d",&gol);
printf("Masukan Masa Kerja(thn): ");
CASE (gol) of scanf("%d",&masa_kerja);
1 : gpokok 500 printf("Sudah Menikah(Y/N):");
2 : gpokok 1000 scanf(" %c",&sts);
3 : gpokok 1500 switch(gol){
Buat program C-nya, sehingga bisa menangani lebih dari 1 perhitungan tanpa perlu keluar dari
program. Gunakan skema looping!
Solusi:
Algoritma WHILE-DO Program
2. Kasus 02
a. Buatlah program untuk menghitung dan menampilkan deret berikut:
Sum = 1 + 5 + 25 + 125 + 625 + ... Input dari user: N yaitu jumlah suku. Gunakan skema
looping.
Contoh:
Input : N = 3
Sum = 1 + 5 + 25 = 31
Input : N = 4
Sum = 1 + 5 + 25 + 125 = 156
Solusi:
Program FOR Program WHILE
Solusi:
Program FOR Program WHILE
Program deret; Program deret;
uses crt; uses crt;
var var
i, j, n, m: integer; i, j, n, m: integer;
begin begin
ClrScr; ClrScr;
Write('Masukan N : '); Write('Masukan N : ');
Readln(n); Readln(n);
Write('Masukan M : '); Write('Masukan M : ');
Readln(m); Readln(m);
m:=m*2; m:=m*2;
FOR i:= 1 to N DO i:=1;
begin FOR i <= n DO
FOR j:= 1 to M DO begin
Write(i); j:=1;
end; FOR j <= m DO
Readln; begin
end.
Write(i);
j:=j+1;
end;
i:=i+1;
end;
Readln;
end.