Jawaban UTS Pemrograman Berorientasi Obyek

Soal 1
Buatlah program penghitungan gaji dengan input berupa: Golongan (1/2/3/4), Ada Istri/Suami (Y/T), Jumlah Anak, Jumlah Jam Lembur. Sedangkan Outputnya: Gaji Pokok, Tunjangan fungsional, Tunjangan Suami/Istri, Tunjangan Anak, Tunjangan Beras, Insentif Lembur, Total Gaji. Beberapa ketentua sebagai berikut:
  • Gaji Pokok, Tunjangan Fungsional berdasarkan Golongan
Golongan Gaji Pokok Tunjangan Fungsional
1 1000000 200000
2 1500000 350000
3 2500000 500000
4 4500000 800000
  • Jika ada Istri/Suami maka Tunjangan Suami/Istri : 500000
  • Tunjangan Anak berdasarkan Jumlah anak
Jumlah Anak Gaji Pokok
1 200000
2 500000
>= 3 800000
  • Tunjangan Beras : 200000
  • Insentif lembur dihitung berdasarkan Jumlah Jam Lembur * 20000
  • Total Gaji dihitung berdasarkan jumlahan Gaji Pokok, Tunjangan fungsional, Tunjangan Suami/Istri, Tunjangan Anak, dan Insentif Lembur. Contoh Tampilan Sebagai berikut:

Jawaban

01procedure TForm1.Button1Click(Sender: TObject);
02Var  G, JA, JJL : integer;
03     AIS        : String;
04     GP, TF, TSI, TA, TB, IL, TG : real;
05begin
06    G:= strtoint(edit1.text);
07    AIS:= edit2.Text;
08    JA:= strtoint(edit3.text);
09    JJL:=strtoint(edit4.text);
10    if G=1 then
11       begin
12          GP:= 1000000;
13          TF:= 200000;
14       end
15    else if G=2 then
16       begin
17          GP:= 1500000;
18          TF:= 350000;
19       end
20     else if G=3 then
21       begin
22          GP:= 2500000;
23          TF:= 500000;
24       end
25     else
26        Begin
27          GP:= 4500000;
28          TF:= 800000;
29        End ;
30 
31     If AIS = 'Y' then
32        TSI := 500000
33     else
34         TSI := 0;
35 
36    If JA = 1 then
37        TA := 200000
38    else If JA = 2 then
39         TA := 500000
40    else
41         TA := 800000;
42    TB := 200000;
43    IL := JJL * 20000;
44    TG := GP+TF+TSI+TA+TB +IL;
45 
46    Edit5.Text := FloatToStr(GP);
47    Edit6.Text := FloatToStr(TF);
48    Edit7.Text := FloatToStr(TSI);
49    Edit8.Text := FloatToStr(TA);
50    Edit9.Text := FloatToStr(TB);
51    Edit10.Text := FloatToStr(IL);
52    Edit11.Text := FloatToStr(TG);
53end;
54procedure TForm1.Button2Click(Sender: TObject);
55begin
56    Edit1.Text := '';
57    Edit2.Text := '';
58    Edit3.Text := '';
59    Edit4.Text := '';
60    Edit5.Text := '';
61    Edit6.Text := '';
62    Edit7.Text := '';
63    Edit8.Text := '';
64    Edit9.Text := '';
65    Edit10.Text := '';
66    Edit11.Text := '';
67    Edit1.setfocus;
68end;
69 
70procedure TForm1.Button3Click(Sender: TObject);
71begin
72  Close
73end;

Soal 2

Buatlah program yang menampilkan deret pada suatu Listbox sebagai berikut:
a.      1        2        3        4        5        6        7          8          9         10
b.      5        6        7        8        9      10      11        12        13         14
c.     -5       -6       -7       -8       -9     -10     -11       -12       -13        -14
d.      1        2        3        4        1        2        3          4          1          2
e..     3        6        9      12      15      18      21        24        27         30
f.     30      27      24      21      18      15      12          9          6          3
g.     -8       -6       -4       -2        0        2        4          6          8         10
h.      1        3        6      10      15      21      28        36        45         55
Jawab:
01procedure TForm1.Button1Click(Sender: TObject);
02var i:integer;
03begin
04  Listbox1.clear;
05  For i:=1 to 10 do
06     Listbox1.Items.Add(inttostr(i))
07end;
08 
09procedure TForm1.Button2Click(Sender: TObject);
10var i:integer;
11begin
12  Listbox1.clear;
13  For i:=5 to 14 do
14     Listbox1.Items.Add(inttostr(i))
15end;
16 
17procedure TForm1.Button3Click(Sender: TObject);
18var i:integer;
19begin
20  Listbox1.clear;
21  For i:=1 to 10 do
22     Listbox1.Items.Add(inttostr(-4-i))
23end;
24 
25procedure TForm1.Button4Click(Sender: TObject);
26var i:integer;
27begin
28  Listbox1.clear;
29  For i:=1 to 10 do
30    begin
31      if  i mod 4 <> 0 then
32        Listbox1.Items.Add(inttostr(i mod 4))
33      else
34        Listbox1.Items.Add(inttostr(4))
35     end;
36end;
37 
38procedure TForm1.Button5Click(Sender: TObject);
39var i:integer;
40begin
41    Listbox1.clear;
42  For i:=1 to 10 do
43     Listbox1.Items.Add(inttostr(i*3))
44end;
45 
46procedure TForm1.Button6Click(Sender: TObject);
47var i:integer;
48begin
49    Listbox1.clear;
50  For i:=1 to 10 do
51     Listbox1.Items.Add(inttostr(33-i*3))
52end;
53 
54procedure TForm1.Button7Click(Sender: TObject);
55var i:integer;
56begin
57    Listbox1.clear;
58  For i:=1 to 10 do
59     Listbox1.Items.Add(inttostr(-10+i*2))
60end;
61 
62procedure TForm1.Button8Click(Sender: TObject);
63var h,i:integer;
64begin
65    Listbox1.clear;
66  h:=0;
67  For i:=1 to 10 do
68     begin
69       h := h+i;
70       Listbox1.Items.Add(inttostr(h))
71     end
72end;

Komentar

Postingan populer dari blog ini

BAHASA INDONESIA 1 (Kalimat Efektif)

Mesin Turing

Algoritma Dijkstra