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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.03.2010, 11:59   #1
Евгений19
Новичок
Джуниор
 
Регистрация: 07.03.2010
Сообщений: 2
По умолчанию Шахматная доска!!!

Уважаемые, помогите мне пожалуйста. Имеется шахматная доска.... нужно случайным образом ее заполнить шашками....
Язык Pascal
Евгений19 вне форума Ответить с цитированием
Старый 08.03.2010, 12:33   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

наработки давай...
доска рисуется уже? отображение шашек есть?

а вообще алгоритм простой заводите матрицу 8x8
если там, например, нолик - то клетка пустая, если 1-белая шашка, если 2 - чёрная шашка
дальше в цикле
Код:
  randomize;
  for i:=1 to КоличествоБелыхШашек do
    repeat
      получить случайное ЧёрноеПоле
    until Доска[ПолученноеПоле] = 0;
    Доска[ПолученноеПоле] := 1; // белая шашка в это поле

  for i:=1 to КоличествоЧерныхШашек do
    repeat
      получить случайное ЧёрноеПоле
    until Доска[ПолученноеПоле] = 0;
    Доска[ПолученноеПоле] := 2; //чёрная шашка в это поле
Serge_Bliznykov вне форума Ответить с цитированием
Старый 08.03.2010, 18:37   #3
Евгений19
Новичок
Джуниор
 
Регистрация: 07.03.2010
Сообщений: 2
По умолчанию

Вот код, который рисует шахматную доску..... А как сюда интергрировать заполнение шашками я пока не понимаю...
Код:
program shashki;
uses crt,graph;
var
    dr,md,x,y,i,j,c,n:integer;
begin
    dr:=detect;
    initgraph(dr,md,'c:\bp\bgi');
    c:=14;
for i:=1 to 8 do begin
   for j:=1 to 8 do begin
      for y:=1 to 50 do
         for x:=1 to 50 do
         putpixel(120+x+50*(i-1),40+y+50*(j-1),c);
         line(121,240,520,240);
         SetLineStyle(0,0,3);
         SetColor(0);
         if c=6 then c:=14 else c:=6;
                    end;
   if c=6 then c:=14 else c:=6;
                 end;
readkey;
closegraph;
end.

Последний раз редактировалось Stilet; 09.03.2010 в 09:11.
Евгений19 вне форума Ответить с цитированием
Старый 08.03.2010, 20:02   #4
Stepler
Форумчанин
 
Аватар для Stepler
 
Регистрация: 03.02.2008
Сообщений: 213
По умолчанию

Цитата:
Вот код, который рисует шахматную доску..... А как сюда интергрировать заполнение шашками я пока не понимаю...
Сгенерировать расстановку в массиве а потом уже перенести на "доску".
Пишу программы на заказ, контакты под аватаром!
Отзывы тут
Stepler вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Шахматная задача Alex@ndra Помощь студентам 1 02.06.2009 08:02
Шахматная доска Настенька..Блонди Паскаль, Turbo Pascal, PascalABC.NET 2 15.05.2009 23:26
Шахматная доска Shevali Помощь студентам 4 03.04.2009 20:22
шахматная доска Irisha_17_85 Паскаль, Turbo Pascal, PascalABC.NET 4 04.11.2008 10:50