Senin, 09 Desember 2013

Soal Latihan

Tampilan untuk jawaban yang benar


Tampilan untuk jawaban yang salah

Sebelum mengerjakan soal ini, buat terlebih dahulu Algoritmanya
 

Sabtu, 02 Juni 2012

Pengulangan





Pengulangan adalah suatu cara untuk mengulang satu atau sekumpulan perintah sampai mencapai kondisi tertentu.

Dalam Struktur Pengulangan kita harus memperhatikan bagian-bagian berikut ini :
KONDISI : yaitu Ekspresi boolean yang harus dipenuhi untuk melaksanakan pengulangan
BADAN : yaitu satu atau lebih aksi yang akan diulang

Pada dasarnya ada 3 jenis pengulangan, yaitu :
1. WHILE … DO
2. REPEAT ... UNTIL
3. FOR … DO


1. WHILE … DO

- Perulangan Tidak Tentu

- Digunakan untuk mengulang statemen selama kondisi masih bernilai Benar

- Bentuknya :
WHILE kondisi DO
AKSI
ENDWHILE

- Diagram alirnya :



- Contoh :

Procedure TForm1.BtUlangClick(Sender: TObject);
Var
i : real;
BEGIN
MmUlang.Clear;
i:=0;
while i<10 do
begin
i:=i+0.5;
MmUlang.Lines.Add(FloatToStr(i));
end;
end;


2. REPEAT ... UNTIL

- Perulangan Tidak Tentu

- Digunakan untuk mengulang statemen selama kondisi masih bernilai Salah

- Bentuknya :
REPEAT AKSI UNTIL
AKSI
kondisi

- Diagram alirnya :



- Contoh :

Procedure TForm1.BtUlangClick(Sender: TObject);
Var
i : real;
BEGIN
MmUlang.Clear;
i:=0;
repeat
i:=i+0.5;
MmUlang.Lines.Add(FloatToStr(i));
until i=10;
end;


3. FOR … DO

- Perulangan Tertentu

- Digunakan untuk mengulang statemen sebanyak yang ditentukan

- Bentuknya :
Untuk FOR ... TO .. DO FOR nilai_awal TO
nilai_akhir DO
AKSI
ENDFOR

Contoh :
procedure TForm1.BitBtn1Click(Sender: TObject);
var
i:integer;
c:char;
Begin
MmUlang.Clear;
for i:=1 to 10 do
MmUlang.Lines.Add(IntToStr(i));
for c:='A' to 'Z' do
MmUlang.Lines.Add(c);
end;

Untuk FOR ... DOWNTO .. DO FOR nilai_awal TO
nilai_akhir DO
AKSI
ENDFOR

Contoh :
Procedure TForm1.BtUlangClick(Sender: TObject);
var
i:integer;
c:char;
Begin
MmUlang.Clear;
for i:=10 downto 1 do
MmUlang.Lines.Add(IntToStr(i));
for c:='Z' downto 'A' do
MmUlang.Lines.Add(c);
end;


LATIHAN PENGULANGAN



Listing Programnya :

procedure TForm1.Button1Click(Sender: TObject);
Var
C,F : Real;
begin
C:= StrToFloat(edC.Text);
F:= 9*C/5+32;
edF.Text:=FloatToStr(F);
MeC.Lines.Add(FloatToStr(C));
MeF.Lines.Add(FloatToStr(F));
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
Var
F : Real;
i : Integer;
begin
i:=0;
While i<= 100 Do
Begin
F:= 9*i/5+32;
edFu.Text:=FloatToStr(F);
edCu.Text:=FloatToStr(i);
MeCu.Lines.Add(FloatToStr(i));
MeFu.Lines.Add(FloatToStr(F));
i:=i+10;
End;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
Var
F : Real;
i : Integer;
begin
i:=0;
Repeat
Begin
F:= 9*i/5+32;
Edit2.Text:=FloatToStr(F);
Edit1.Text:=FloatToStr(i);
Memo1.Lines.Add(FloatToStr(i));
Memo2.Lines.Add(FloatToStr(F));
i:=i+10;
End;
Until i> 100;
end;

procedure TForm1.BitBtn3Click(Sender: TObject);
Var
F : Real;
i : Integer;
begin
For i:=0 To 10 Do
Begin
F:= 9*10*i/5+32;
Edit3.Text:=FloatToStr(i*10);
Edit4.Text:=FloatToStr(F);
Memo3.Lines.Add(FloatToStr(i*10));
Memo4.Lines.Add(FloatToStr(F));
End
end;




Listing Programnya :

procedure TForm1.Button1Click(Sender: TObject);
Var
t,Vt : Real;
begin
t:= StrToFloat(edC.Text);
Vt:= 10+10*t;
edF.Text:=FloatToStr(Vt);
MeC.Lines.Add(FloatToStr(t));
MeF.Lines.Add(FloatToStr(Vt));
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
Var
Vt : Real;
i : Integer;
begin
i:=0;
While i<= 100 Do
Begin
Vt:= 10+10*i;
edFu.Text:=FloatToStr(Vt);
edCu.Text:=FloatToStr(i);
MeCu.Lines.Add(FloatToStr(i));
MeFu.Lines.Add(FloatToStr(Vt));
i:=i+10;
End;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
Var
Vt : Real;
i : Integer;
begin
i:=0;
Repeat
Begin
Vt:= 10+10*i;
Edit2.Text:=FloatToStr(Vt);
Edit1.Text:=FloatToStr(i);
Memo1.Lines.Add(FloatToStr(i));
Memo2.Lines.Add(FloatToStr(Vt));
i:=i+10;
End;
Until i> 100;
end;

procedure TForm1.BitBtn3Click(Sender: TObject);
Var
Vt : Real;
i : Integer;
begin
For i:=0 To 10 Do
Begin
Vt:= 10+10*i;
Edit3.Text:=FloatToStr(i*10);
Edit4.Text:=FloatToStr(Vt);
Memo3.Lines.Add(FloatToStr(i*10));
Memo4.Lines.Add(FloatToStr(Vt));
End
end;

procedure TForm1.BitBtn4Click(Sender: TObject);
Var
Vt : Real;
i : Integer;
begin
For i:=10 downTo 0 Do
Begin
Vt:= 10+10*i;
Edit5.Text:=FloatToStr(i*10);
Edit6.Text:=FloatToStr(Vt);
Memo5.Lines.Add(FloatToStr(i*10));
Memo6.Lines.Add(FloatToStr(Vt));
End
End;