22.05.2011, 15:25
|
|
Активный
|
|
Регистрация: 31.03.2009
Адрес: Украина, г.Днепропетровск
Сообщения: 324
Версия Delphi: Delphi7
Репутация: 3877
|
|
Прикольная задачка
Код:
Var
M: Integer = 0;
N: Integer = 0;
procedure TForm1.Button1Click(Sender: TObject);
const
x = 50; // координаты цели
y = 50;
r = 30; // растояние
var
x1, y1: Integer;
r1: Real;
begin
Randomize;
Form1.Canvas.Brush.Color:= clBtnFace;
Form1.Canvas.Rectangle(0,0,105,105);
Form1.Canvas.Brush.Color:= clBlue;
Form1.Canvas.Ellipse(x-r,y-r,x+r,y+r);
x1:= Random(100);
y1:= Random(100);
Form1.Canvas.Brush.Color:= clRed;
Form1.Canvas.Ellipse(x1-3,y1-3,x1+3,y1+3);
r1:= Sqrt(Sqr(x1 - x) + Sqr(y1 - x));
if r1 <= r Then
begin
ShowMessage('Попали!');
Inc(M);
end
Else ShowMessage('Промазали!');
Inc(N);
Label1.Caption:= 'Вероятность = '+FloatToStr(M/N);
end;
__________________
If end Then begin;
|