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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2011, 09:17   #1
zzz6
Пользователь
 
Регистрация: 10.06.2011
Сообщений: 60
По умолчанию Вывести на экран квадратные окна 8х8 в виде шахматной доски. Каждое нажатие клавиши клавиатуры вызывает смену цвета окон

Вывести на экран квадратные окна 8х8 в виде шахматной доски. Каждое нажатие клавиши клавиатуры вызывает смену цвета окон.
C графикой всегда туго.. помогите..
zzz6 вне форума Ответить с цитированием
Старый 05.07.2011, 10:22   #2
l1pton17
Пользователь
 
Аватар для l1pton17
 
Регистрация: 01.11.2010
Сообщений: 75
По умолчанию

какой язык программирования и какая среда?
l1pton17 вне форума Ответить с цитированием
Старый 05.07.2011, 10:24   #3
zzz6
Пользователь
 
Регистрация: 10.06.2011
Сообщений: 60
По умолчанию

Цитата:
Сообщение от l1pton17 Посмотреть сообщение
какой язык программирования и какая среда?
Паскаль АBC
zzz6 вне форума Ответить с цитированием
Старый 05.07.2011, 15:56   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
квадратные окна 8х8 в виде шахматной доски.
А что такое "квадратные окна"?! как могут быть окна в виде шахматной доски?!
и в чём размер 8x8 - в пикселях? не маловато будет?

p.s. либо растолкуйте, что Вам надо, либо, хотя бы, эскиз сделайте...


_____________________
рискну интуитивно угадать, Вам что-то такое нужно?
Код:
uses CRT, GraphABC;
const n = 22;
var i, j : integer;
  Delta : integer;
  ColorEmpty, ColorFill : integer;
  Colors: array [1..n] of integer;
  key : char;
begin
  SetPenStyle(psClear);
  Colors[1]:=clWhite;
  Colors[2]:=clLightGray;
  Colors[3]:=clGray;
  Colors[4]:=clDarkGray;
  Colors[5]:=clBlack;
  Colors[6]:=clRed;
  Colors[7]:=clGreen;
  Colors[8]:=clBlue;
  Colors[9]:=clYellow;
  Colors[10]:=clAqua;
  Colors[11]:=clFuchsia;
  Colors[12]:=clPurple;
  Colors[13]:=clBrown;
  Colors[14]:=clMaroon;
  Colors[15]:=clMoneyGreen;
  Colors[16]:=clSkyBlue;
  Colors[17]:=clCream;
  Colors[18]:=clOlive;
  Colors[19]:=clTeal;
  Colors[20]:=clLime;
  Colors[21]:=clSilver;
  Colors[22]:=clNavy;

  Delta :=  WindowHeight div 8;
  SetWindowSize(Delta * 8, Delta * 8);

  ColorEmpty := clWhite;
  ColorFill := clBlack;
  SetBrushStyle( bsSolid);
  Randomize;

  repeat
    ClearWindow;
    for i := 0 to 7 do
      for j:=0 to 7 do begin
        if odd(i+j)
          then SetBrushColor( ColorFill )
          else SetBrushColor( ColorEmpty );
       Rectangle(j*Delta,i*Delta,(j+1)*Delta,(i+1)*Delta);
    end;
    key := Readkey;
    if key<>#27 then begin
      ColorFill := Colors[Random(22)+1];
      repeat
         ColorEmpty := Colors[Random(22)+1];
      until ColorEmpty <> ColorFill;
    end;
  until key = #27;

end.

Последний раз редактировалось Serge_Bliznykov; 05.07.2011 в 16:36.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.07.2011, 19:34   #5
zzz6
Пользователь
 
Регистрация: 10.06.2011
Сообщений: 60
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
А что такое "квадратные окна"?! как могут быть окна в виде шахматной доски?!
и в чём размер 8x8 - в пикселях? не маловато будет?

p.s. либо растолкуйте, что Вам надо, либо, хотя бы, эскиз сделайте...


_____________________
рискну интуитивно угадать, Вам что-то такое нужно?
Код:
uses CRT, GraphABC;
.....
  until key = #27;
end.
то что надо было...
вот еще один вариант

Код:
program fff;
uses crt,graphABC;
const n=7;
procedure Kletka(x,y,a,c:integer);
begin
setpencolor(c);
rectangle(x,y,x+a,y+a);
floodfill(x+5,y+5,c);
end;
var h,i,j,c,r,g,b:integer;
    s:char;
begin
hidecursor;
h:=50;
setwindowsize(8*h,9*h);
textout(3*h,20,'Выход Esc');
r:=80; g:=160; c:=240;
repeat
for i:=0 to n do
for j:=0 to n do
 begin
  c:=RGB(random(r)-r div 2,random(g)-g div 2,random(b)-b div 2);
  Kletka(i*h,j*h+h,h,c);
 end;
 s:=readkey;
 if s=#27 then exit
 else
  begin
   r:=r+20;
   g:=g+20;
   b:=b+20;
  end;
until s=#27;
end.


________
1) Код нужно ОБЯЗАТЕЛЬНО оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)

2) старайтесь избегать излишнего цитирования! Просьба удалять лишний (не влиящий на ваш ответ) текст из цитируемого вами сообщения!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 05.07.2011 в 20:00.
zzz6 вне форума Ответить с цитированием
Старый 05.07.2011, 20:03   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну, не знаю, что-то доска, покрытая квадратами разного цвета не ассоциируется у меня именно с шахматной доской (как в моём примере). Впрочем, хозяин - барин, лишь бы Вам (и вашему преподавателю) это нравилось
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.07.2011, 21:33   #7
An1ka
C++,DirectX/OpenGL
Форумчанин
 
Регистрация: 09.01.2011
Сообщений: 422
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
А что такое "квадратные окна"?!
Наверное, в виде квадрата, когда ширина окна равна высоте
An1ka вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обход шахматной доски конем wazaaaup Помощь студентам 1 04.07.2011 20:54
Пролог. Обход конем шахматной доски Gambler Помощь студентам 9 08.12.2010 22:19
C++ вывести на экран в виде таблицы значения функции F на интервале от Xнач. до Xкон. с шагом dX Sanya_744 Помощь студентам 2 13.04.2010 12:37
Отследить нажатие клавиши для отдельного окна Черничный Win Api 12 13.09.2008 20:47
Нужно вывести на экран каждое слово на новой строке. Юлёк PHP 5 28.01.2008 14:57