Bu ödevi kendiniz yapsanız sizin için çok daha öğretici olacaktır. Ancak size yol göstermesi açısından neler yapmanız gerektiğini sırasıyla söyleyeyim.
1-Delphi'yi başlatın
2-Yeni bir proje oluşturup bunu bir klasör altına kaydedin.
3-Form1 üzerine bir adet TEdit ve bir adet te TButton yerleştirin.
4-Dynamic array : Delphi'deki Dinamik dizi konusunu öğrenin.
Burada biraz bahsedeyim: Dinamik diziler eleman sayısı sonradan değiştirilebilen dizilerdir. Dizileri şu şekilde tanımlayabiliriz.
var
statikdizi: array[0..8] of Integer;
dinamikdizi: array of Integer;
dinamikdizi adlı dizinin eleman adedi 0'dır, bunu belirlemek için SetLength'i kullanırız.
begin
...
SetLength(dinamikdizi, 99);
...
end;
5-Form1'in Private ya da Public kısımlarından birisine dinamikdizi adlı ve bir de indeks adlı tamsayı değişkeni tanımlayın.
Public
dinamikdizi : array of Integer;
indeks: Integer;
6- Edit1'e girilmiş dizi boyutunu dinamikdizi'nin boyutu yapmak için, Button1'in OnClick olayında (OnClick event)
begin
SetLength(dinamikdizi, StrToInt(Edit1.Text);
indeks := 0;
end;
7-Yeni bir TEdit (Edit2) ve TButton (Button2) bileşeni daha ekleyin. Bunları da dizinin elemanlarını oluşturmak için kullanacağız.
Button2'nin OnClick olayında
begin
if indeks>Length(dinamikdizi) then
ShowMessage('Dizi boyutunu aştınız!');
dinamikdizi[indeks] := StrToInt(Edit2.Text);
indeks := indeks + 1;
end;
8-En son olarak 3 adet yeni TEdit (Edit3, Edit4, Edit5) ve 3 adet te yeni TButton (Button3, Button4, Button5) ekleyeceğiz.
Button3'e basılınca ortalamayı hesaplayıp Edit3'e yazacak, Button3'ün OnClick olayına
procedure TForm1.Button3Click(Sender: TObject);
begin
{
burada dizi elemanlarının toplamını bulup ortalamayı hesaplatacaksınız ve
bunu Edit3.Text'e aktaracaksınız
}
end;
procedure TForm1.Button4Click(Sender: TObject);
var
i: Integer;
enbuyuk: Integer;
begin
enbuyuk := -999999999999;
for i:=0 to indeks-1
if dinamikdizi[i]>enbuyuk then
enbuyuk := dinamikdizi[i];
//Edit4.Text := IntToStr(Toplam/indeks); Bunu yanlışlıkla yazmışım.
Edit4.Text := IntToStr(enbuyuk);
end;
procedure TForm1.Button5Click();
begin
{
Burada dizinin en küçük değerini bulup onu Edit5.Text'e atayacaksınız.
}
end;