Merhaba, bugün sizlerle Delphi diliyle yazılmış bir sayı tahmin oyununu paylaşıyorum. Delphi pascal dilinin nesne tabanlı programlama diline dönüşmüş hali denebilir. Günümüzde en büyük rakibi olarak görülen c# dili kadar popüler olmasa da Sykpe, Navicat, Xampp gibi popüler uygulamalar  Delphi dile ile yazılmıştır. C# ile kıyaslandığında öne çıkan en büyük özelliği derleme hızının çok yüksek olmasıdır.  Delphi ile ilgili Türkçe kaynağın diğer dillere kıyasla düşük olduğu aşikar. Bu nedenle bu yazının ilgilenen kişilere faydalı olacağını düşünmekteyim. 
Uygulama Yapısı
Uygulamanın arka planında belirlenen sayılar arasından rastgele bir sayı tutuluyor. Kullanıcının hedefi verilen haklar içerisinde bu sayıyı tahmin etmek. Yapılan tahminlerden sonra kullanıcıya sayının tahmin edilen sayıdan küçük veya büyük olduğunu bildiren mesaj kutuları ekrana geliyor. Sizler çeşitli modifikasyonlarla bu yapıyı dilediğiniz gibi değiştirebilirsiniz. 
|  | 
| Örnek Tasarım | 
|  | 
| Yapılan Tahmin Sonrası Bilgilendirme | 
Kodlar
   
unit Sayitahmin;
interface
uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Math, Vcl.Menus;
type
  TForm2 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    Label1: TLabel;
    Label2: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form2: TForm2;
  tut: Integer;
  hak:Integer;
implementation
{$R *.dfm}
procedure TForm2.Button1Click(Sender: TObject);
begin
  tut := Random(1024)+1;
  hak:=10;
  Label1.Caption:='Kalan Hak: '+IntToStr(hak);
  ShowMessage('1 ile 1024 arasında sayı giriniz.');
end;
procedure TForm2.Button2Click(Sender: TObject);
var
tahmin: Integer;
begin
  tahmin:=StrToInt(Edit1.Text);
  if tahmin=tut then
  begin
  ShowMessage('Tebrikler ' + IntToStr(hak)+'. hakkınız varken bildiniz.');
  Label1.Caption:='Kalan hak: 10';
  end
   else if tahmintut then begin
  Dec(hak);
  ShowMessage ('Küçük Sayı Giriniz');
  Label1.Caption:='Kalan Hak: '+IntToStr(hak);
  end;
    if hak=0 then
    begin
      ShowMessage('Tüm Haklarınız Bitti, Kaybettiniz. 
      Doğru sayi: '+ IntToStr(tut)) ;
    end;
    if hak=1 then
    begin
      ShowMessage('Son Hakkın İyi Tahmin et!');
    end;
    edit1.Text:='';
    edit1.SetFocus;
end;
procedure TForm2.FormCreate(Sender: TObject);
begin
Label1.Caption:='Kalan Hak: ' + IntToStr(hak);
end;
end.
   
harika bir oyun sistemi :) teşekkürler
YanıtlaSilCan sıkıntısına iyi geldi valla.
YanıtlaSil+1
SilKeşke ben de bilseydim şu yazılım dillerinden birini. :(
YanıtlaSilBu yorum bir blog yöneticisi tarafından silindi.
Sil