Pemrograman Berorientasi Obyek – Soal dan Jawaban UAS 2011

Soal

Buatlah program untuk menginputkan data X sebanyak 10 data, pada saat pengguna menginputkan data X maka program mengihitung nilai X2 dan memasukkannya kedalam Grid.
•    Ketika pengguna mengklik tombol Rekap, maka program menampilkan Jumlah dan rata-rata dari data-data X dan data X2 .
•    Ketika pengguna mengklik tombol Grafik X, maka program menampilkan Grafik untuk Data X
•    Ketika pengguna mengklik tombol Grafik X^2, maka program menampilkan Grafik untuk Data X2
•    Ketika pengguna mengklik tombol Reset, maka seluruh isi data pada grid, hasil rekapitulasi  dan chart dikosongkan kemabali.
Ketika pengguna mengklik tombol Tutup, maka program ditutup

Desain Form - String Grid dan Chart

Desain Form - String Grid dan Chart

1.    Tuliskan pengaturan properti masing-masing object/control (30 point)
2.    Tuliskan pengkodeaanya (70 point)

Jawaban

1. Pengaturan Properti

Pengaturan Form StringGrid dan Chart

Pengaturan Form StringGrid dan Chart

untuk pengaturan properti pada Chart, ikuti langkah berikut:

  • klik kanan control chart.
  • Klik tab Series
  • Klik tombol Add
  • Klik tipe Bar chart
  • Klik Ok

Chart Delphi - Pengaturan properti pada control chart

2. Pengkodean

procedure TForm1.FormCreate(Sender: TObject);
var i:integer;
begin
   stringgrid1.Cells[0,0]:='Data ke';
   stringgrid1.Cells[1,0]:='X';
   stringgrid1.Cells[2,0]:='X^2';

   for i:=1 to 10 do
      begin
         combobox1.Items.Add(inttostr(i));
         stringgrid1.Cells[0,i]:=inttostr(i);
         stringgrid1.Cells[1,i]:='0';
         stringgrid1.Cells[2,i]:='0';
      end;
end;

procedure TForm1.Button1Click(Sender: TObject);
 var x,xpangkat2:real;
begin
  x   := strtoint(edit1.Text);
  xpangkat2 := x*x;
  Stringgrid1.Cells[1,combobox1.ItemIndex+1]:=floattostr(x);
  Stringgrid1.Cells[2,combobox1.ItemIndex+1]:=floattostr(xpangkat2);
end;

procedure TForm1.Button2Click(Sender: TObject);
var i:integer;
begin
  for i:=1 to 10 do
  begin
     stringgrid1.Cells[1,i]:='0';
     stringgrid1.Cells[2,i]:='0';
  end;
  edit1.Text:='';
  edit2.Text:='';
  edit3.Text:='';
  edit4.Text:='';
  edit5.Text:='';

end;

procedure TForm1.Button3Click(Sender: TObject);
var jumX, jumXpangkat2, rataX, rataXpangkat2 :real;
    i: integer;
begin
    JumX:=0;
    JumXpangkat2:=0;

    for i:=1 to 10 do
    begin
       jumX:=jumX+strtofloat(stringgrid1.Cells[1,i]);
       jumXpangkat2:=jumXpangkat2 + +strtofloat(stringgrid1.Cells[2,i]);
    end;
    rataX:=jumX/10;
    rataXpangkat2:=jumXpangkat2/10;
    edit2.Text := floattostr(jumX);
    edit3.Text := floattostr(jumXpangkat2);
    edit4.Text := floattostr(rataX);
    edit5.Text := floattostr(rataXpangkat2);
end;

procedure TForm1.Button5Click(Sender: TObject);
var i:byte;
begin
  Chart1.Series[0].clear;
  Chart1.Title.Text.Clear;
  Chart1.Title.Text.Add('Grafik X');
  for i:=1 to 10 do
    Chart1.Series[0].Add(strtofloat(stringgrid1.Cells[1,i]),inttostr(i),clred);

end;

procedure TForm1.Button6Click(Sender: TObject);
 var i:byte;
begin
  Chart1.Series[0].clear;
  Chart1.Title.Text.Clear;
  Chart1.Title.Text.Add('Grafik X*2');
  for i:=1 to 10 do
    Chart1.Series[0].Add(strtofloat(stringgrid1.Cells[2,i]),inttostr(i),clred);
end;

Related Link:

Latihan penggunaan Control Grid dan Chart

Latihan

Buatlah Program menyajikan jumlah mahasiswa aktif masing-masing fakultas disajikan dalam bentuk tabulasi (grid) dan grafik (chart).

Desain Form

Grid dan Chart Delphi - Desain Form

Grid dan Chart Delphi - Desain Form

Pengkodean

procedure TForm1.FormCreate(Sender: TObject);
begin
   StringGrid1.Cells[0,0]:='Fakultas';
   StringGrid1.Cells[0,1]:='Teknik';
   StringGrid1.Cells[0,2]:='Ekonomi';
   StringGrid1.Cells[0,3]:='Pertanian';
   StringGrid1.Cells[0,4]:='KIP';
   StringGrid1.Cells[1,0]:='Jumlah';

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
   stringgrid1.Cells[1,combobox1.ItemIndex+1]:=Edit1.Text;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
   var i: integer;
begin
   for i:=1 to stringgrid1.rowcount-1 do
   chart1.Series[0].Add(strtofloat(stringgrid1.cells[1,i]),stringgrid1.cells[0,i]);
end;

Hasil Eksekusi

Grid dan Chart Delphi - Hasil Eksekusi

Grid dan Chart Delphi - Hasil Eksekusi

 Related Link

Membuat Chart Pada Delphi

Sesi kali ini akan membahas bagaimana membuat char pada Delphi. Control Chart terletak pada tab Additional, seperti tersaji pada gambar berikut ini

letak control chart

letak control chart

Latihan

Untuk memudahkan pemahaman akan diberikan Latihan  pemaanfaatan chart. Akan dibuat program yang menyajikan grafik penerimaan mahasiswa baru berdasarkan data inputan yang terdiri dari empat tahun: 2008, 2009, 2010 dan 2011. Contoh keluaran dapat dilihat pada gambar dibawah ini.

Contoh Latihan Penggunaan Chart dalam Delphi

Contoh Latihan Penggunaan Chart dalam Delphi

Desain Form

Desainlah form dengan meletakkan control-control sebagai berikut:

Letakkan 4 Control label, 4 control EditBox, 3 Control Bitbutton (terletak pada tab Additional), control  Chart

Chart Delphi - Desain Form

Chart Delphi - Desain Form

Pengaturan Properti

Obyek/Control Properti Nilai
Form Caption Grafik Penerimaan Mahasiswa Baru
Label1 Caption 2008
Caption 2009
Caption 2010
Caption 2011
BitBtn1 Kind bkOK
BitBtn2 Kind bkCancel
BitBtn2 Kind bkClose

untuk pengaturan properti pada Chart, ikuti langkah berikut:

  • klik kanan control chart.
  • Klik tab Series
  • Klik tombol Add
  • Klik tipe Bar chart
  • Klik Ok
Chart Delphi - Pengaturan properti pada control chart

Chart Delphi - Pengaturan properti pada control chart

Pengkodean

procedure TForm1.FormCreate(Sender: TObject);
begin
  Chart1.Title.Text.Clear;
  chart1.Title.Text.Add('Grafik Penerimaan Mahasiswa Baru')
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  Chart1.Series[0].clear;
  Chart1.Series[0].Add(strtofloat(Edit1.Text),'2008',clred);
  Chart1.Series[0].Add(strtofloat(Edit2.Text),'2009',clyellow);
  Chart1.Series[0].Add(strtofloat(Edit3.Text),'2010',clmaroon);
  Chart1.Series[0].Add(strtofloat(Edit4.Text),'2011',cllime);
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
     Chart1.Series[0].clear;
     Edit1.Text :='';
     Edit2.Text :='';
     Edit3.Text :='';
     Edit4.Text :='';
end;

procedure TForm1.BitBtn3Click(Sender: TObject);
begin
   Close;
end;