Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.12.2011, 21:37   #1
xXxFEHUKCxXx
 
Регистрация: 01.12.2011
Сообщений: 5
Печаль ЗАДАЧА С ГРАФИКОЙ

Модифицировать программу "мерцание звезд": Если точка гаснет, то звезда "взрывается" - рисуется красная окружность радиусом два пиксела с коротким звуковым импульсом и гашением этой окружности после "взрыва".

{------------------------------------------------------------------
Фрагмент N 2 программы "мерцание звезд"
( рисование массива пикселов, изменяющих цвет ).

В программе "мерцание звезд" точки неподвижны, их координаты определены в виде массивов X[1. . N], Y[1. . N]. Точки последовательно высвечиваются различными цветами. Если точка гаснет (i= 0), то она случайным образом изменяет свои координаты.
------------------------------------------------------------------}
for k:= 1 to N do begin X[k]:=random(Gx); Y[k]:=random(Gy) end;
Repeat
for k:= 1 to N do begin i:= random(16);
PutPixel(X[k], Y[k], i);
if i= 0 then begin X[k]:= random(Gx); { новые координаты звезд }
Y[k]:= random(Gy) end end
Until KeyPressed;
xXxFEHUKCxXx вне форума Ответить с цитированием
Старый 02.12.2011, 11:54   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

во-первых, не забывайте оформлять код тегами.

а во-вторых, где вопрос то?! Что не получается?!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 03.12.2011, 17:09   #3
xXxFEHUKCxXx
 
Регистрация: 01.12.2011
Сообщений: 5
По умолчанию

не получается переделать программу из АВС в Паскаль
Код:
program mercanue;
uses crt,graphabc;
const n=1000;
var x,y: array [1..N] of integer;
    i,k,Gx,Gy: integer;
begin
SetWindowSize(600,400);
clearwindow(clblack);
hidecursor;
Gx:=600;
Gy:=400;
for k:= 1 to N do
    begin
    X[k]:=random(Gx);
    Y[k]:=random(Gy)
    end;
Repeat
          begin
          i:= random(16);
          PutPixel(X[k], Y[k], i);
          sleep(10);
          if i=0 then
             begin
             setbrushcolor(clgreen);
             circle(x[k],y[k],2);
             sleep(1000);
             setbrushcolor(clred);
             circle(x[k],y[k],4);
              sleep(100);
              sound(800);
             setbrushcolor(clblack);
             circle(x[k],y[k],5);
             X[k]:= random(Gx); { новые кординаты звезд}
             Y[k]:= random(Gy)
          end
          end
Until KeyPressed;
end.
xXxFEHUKCxXx вне форума Ответить с цитированием
Старый 04.12.2011, 22:20   #4
xXxFEHUKCxXx
 
Регистрация: 01.12.2011
Сообщений: 5
По умолчанию

помогите плз
xXxFEHUKCxXx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с графикой Dark Espeon Помощь студентам 1 06.04.2011 22:40
Работа с графикой EdNovice Общие вопросы .NET 0 11.03.2009 11:09
Работа с графикой kminas Общие вопросы Delphi 5 21.11.2008 00:02
help с графикой SYL@R Помощь студентам 3 07.07.2008 08:11