setlength etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
setlength etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

6 Haziran 2014 Cuma

Randg fonksiyonu (randg function example) ile rastgele veri üretmek.

procedure TForm1.Button1Click(Sender: TObject);
var
 mu,sigma:Extended;
 i,n:integer;
 x:double;
begin
 randomize;
 mu:=strtoint(edit1.text);
 sigma:=strtoint(edit2.Text);
 n:=strtoint(edit3.text);
  for i:=0 to n-1 do
  begin
   x:=randg(mu,sigma);
   memo1.lines.add(formatfloat('0.###',x));
  end;
end;

end.



3 Haziran 2014 Salı

Stringgrid,button example. Colcount,Row Count

procedure TForm1.Button1Click(Sender: TObject);
var
r,c,j,i:integer;
begin
r:=strtoint(edit1.text);
c:=strtoint(edit2.text);
StringGrid1.ColCount:=c+1;
StringGrid1.RowCount:=r+1;
for i:=1 to c do
 begin
  for j:=1 to r  do
  begin
  if (i+j)>r+2  StringGrid1.Cells[i,j]:=inttostr((i+j)-1);
  end;
 end;
end;
end.



9 Mayıs 2014 Cuma

Rastgele veri üretmek,Normalizasyon yöntemi(min-max,z score)

ihtiyacımız olanlar ; button,2 tane memo, combobox

ilk olarak button1 ın onclick event'ına aşagıdaki kodları giriyoruz.

procedure TForm1.Button1Click(Sender: TObject);
var
 i:integer;
 x:real;
begin
 Memo1.Clear;
 Randomize;   // bu işlem sayesınde button'a her tıkladıgımızda farklı sayılar geliyo
 for i:=1 to 100 do          //örneklem geniligini kendimiz 100 olrak belirledik
 begin
  x:=Random*(10-0)+0;  //U(0,10);
  memo1.Lines.Add(Floattostr(x));
 end;
end;


Not: Randomrange tamsayılarda çalıştığı için burada Random kullanarak real sayılar elde etmeye çalıştık.
Örneklem büyüklüğü 100 olarak almamaza ragmen bir editbox koyarak kullanıcının girmesini sağlayabiliriz.

combobox1 in onchange event'ına aşagıdaki kodları giriyoruz ;

procedure TForm1.ComboBox1Change(Sender: TObject);
var
data,x:array of double;
n,i:integer;
min,max,xbar,std:real;
begin
 n:=memo1.Lines.Count;
 SetLength(data,n);
 SetLength(x,n);
 for i:=0 to n-1 do
  data[i]:=strtofloat(memo1.lines[i]);
 memo2.clear;
 if ComboBox1.ItemIndex=0 then
 begin
  min:=MinValue(data);
  max:=MaxValue(data);
   for i:=0 to n-1 do
    begin
    x[i]:=(data[i]-min)/(max-min);
    memo2.Lines.add(formatfloat('0.##0',x[i]));
    end;

 end
 else if ComboBox1.ItemIndex=1 then
 begin
   xbar:=Mean(data);
   std:=stddev(data);
    for i:=0 to n-1 do
     begin
      x[i]:=((data[i]-xbar)/std);
      memo2.Lines.add(formatfloat('0.##0',x[i]));

     end;
 end;
end;

end.





Bu kod da kullandığımız önemli sayılan kodlar aşağıda listelenmiştir.

 min:=MinValue();    //  minimum değeri bulur.
 max:=MaxValue();   //  maximum değeri bulur.
 xbar:=Mean();          //  ortalama bulur.
 std:=stddev();           //  Standart Sapmayı bulur.