Watcher
Программа
На форумах с марта 2010
Местонахождение:
Сообщений: 224
|
Вот вам всем подарок от любителя Паскаля(иже меня):
program matx;
uses graph, crt;
const
drpcnt = 40;
type
drop = record
x: Integer;
y: Integer;
t: integer;
end;
var gd,gm,i,j,r,col,ch:Integer;
code: string;
Drops :array[0..drpcnt-1] of drop;
begin
gd:= detect;
InitGraph(gd,gm,'');
if GraphResult<>grOK then
begin
WriteLn('Error: ', GraphErrorMsg(GraphResult));
ReadLn;
end;
cleardevice;
randomize;
for i := 0 to drpcnt-1 do
begin
Drops[i].x := 10*Random(GetMaxX div 10)+10;
Drops[i].y := 10*Random(GetMaxY div 10)+10;
Drops[i].t:=10+random(10);
end;
repeat
for i := 0 to drpcnt-1 do
begin
Setcolor(3);
setfillstyle(1,0);
bar(Drops[i].x-3,Drops[i].y-3,Drops[i].x+7,Drops[i].y+7);
code:=chr(random(255)+1);
Moveto(Drops[i].x,Drops[i].y);
Outtext(code);
for j:=1 to Drops[i].t do
begin
bar(Drops[i].x-3,Drops[i].y-3-j*10,Drops[i].x+7,Drops[i].y+7-j*10);
Setcolor(2);
Moveto(Drops[i].x,Drops[i].y-j*10);
code:=chr(random(255)+1);
Outtext(code);
end;
bar(Drops[i].x-3,Drops[i].y-13-Drops[i].t*10,Drops[i].x+7,Drops[i].y-3-Drops[i].t*10);
Drops[i].Y:=Drops[i].Y+10;
if Drops[i].Y-(Drops[i].t*10+10)>= GetMaxY then
begin
Drops[i].y:= 0;
Drops[i].x:= 10*Random(GetMaxX div 10)+10;
Drops[i].t:=10+random(10);
end;
end;
for i:=1 to 1 do delay(1000);
until keypressed;
closegraph;
end.
Адрес поста | Один пост | Сообщить модератору | IP: Logged
|