NPM :19303444
SOALTIPE B
Deklarasi:
M,P,A:integer
Algoritma:
A 3
M 16
A --(A)
Q A*(A+3)
P (M*2)-Q
M P+100
P P+M–Q
Jawab:A=-3,M=32,P=164
2.Aturan kelulusan siswa pada mata pelajaran Logika dan Algoritma diterapkan sebagai
berikut:
(a)Jika nilai ujian tengah semester(UTS) lebih besar dari 70 maka siswa dinyatakan
Lulus dan Nilai Akhir sama dengan nilai UTS.
(b)Jika nilai UTS kurang atau sama dengan70,maka siswa dinyatakan lulus jika Nilai Akhir
lebih besar atau sama dengan 60 dimana Nilai Akhir=(nilai UTSx40%)+ (nilai
UASx60%).Buatlah algoritma penyelesaian masalah tersebut apabila output yang
dinginkan adalah NIM,Nama Siswa,Nilai Akhir,dan Status Kelulusan.
Jawab:
Mulai
ReadNIM,nama,
NUTS,NUAS
NUTS>
NA=(NUTS*0,4)+(NUAS
*0,6)
NA>=60
PrintNIM,nama,
NUTS,NA,Status
Mulai
3. Buatlah algoritma program, dimana data NIP, Nama Pegawai, Golongan, Jumlah Anak di-input dari
Keyboard
golongan Gaji Tunjangan Pajak Jumlah Anak Bonus
I 1.000.000 15%XGapok 1% X Tunjangan <2 250.000
II 1.500.000 16%XGapok 2% XTunjangan 2-4 300.000
III 2.000.000 17%X Gapok 2% X Tunjangan >5 500.000
Total Gaji = Gaji Pokok + Tunjangan + Bonus –Pajak
Adapun data yang akan dicetak ke layar adalah NIP,
Nama Pegawai, Golongan, Jumlah Anak,Gaji Pokok,
Tunjangan, Pajak, Bonus dan Total Gaji.
3. JAWABAN
Program Data Pegawai;
Type Pegawai = record
NIP : String[9];
Nama : String[20];
Golongan : String[3];
Jum. Anak : String[8];
End;
Var
RecPeg : Array[1..20] Of Pegawai:
Gapok : Real;
Tunjangan : Real;
Bonus : Real;
Paajak : Real;
Begin
{Bagian Input Data...}
Write(Jumlah Data :’) ; Readln(J) ;
Writeln;
Write('NIP : ');Readln(Data.NIP);
Write('Nama : ');Readln(Data.Nama);
Write('Golongan : ');Readln(Data.Golongan);
Write('Jumlah Anak : ');Readln(Data.Jumlah Anak);
Writeln;
Writeln;
Case Data.Golongan of
'1' : Gapok:=1000000;
'2' : Gapok:=1500000;
'3' : Gapok:=2000000;
Else
Gapok:=0;
End;
Gaji ;=Gapok+Tunjangan+Bonus-Pajak
Clrscr;
Writeln('Laporan Gaji Pegawai');
Writeln;
Writeln('=========================================================================
===');
Writeln('|NIP | Nama | Golongan | Jumlah Anak | Gaji |');
Writeln('=========================================================================
===');
Writeln('|',Data.NIP:10,'|',Data.Nama:25,'|',Data.Golongan:10,'|',Data.Jumlah Anak:11:0,'|',Gaji:14:2,'|');
Writeln('=========================================================================
===');
Writeln;
End.