Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Дмитрий3105
0 / 0 / 1
Регистрация: 24.02.2014
Сообщений: 17
#1

Написать программу, которая выводит на экран шахматную доску - C++

12.06.2015, 11:14. Просмотров 1311. Ответов 6
Метки нет (Все метки)

Добрый день,
Помогите пожалуйста решить задание на с++,
"Написать программу, которая выводит на экран шахматную доску. Количество клеток шахматной доски, размер каждой клетки и символы, которыми рисовать темные клетки, вводит пользователь"
Если можно полный код
Заранее спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2015, 11:14
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Написать программу, которая выводит на экран шахматную доску (C++):

Написать программу которая выводит на экран график
Напишите программу, которая выводит на экран следующий график: * * * * * *...

Написать программу, которая выводит на экран шаблон
Ребята, прошу вашей помощи! Никак не могу разобраться с этой лабораторной...

Написать программу, которая выводит на экран изображение
Need help!!!! Помогите решить задачи на языке С++!!! 1)...

Вывод на экран консоли шахматную доску
Дело в том, что алгоритм у меня есть. Но я совсем не могу разобраться в...

Написать программу, которая выводит сообщение на экран (в окошке)
Напишите, пожалуйста, такой код, чтобы он скомпилировал .exe файл, который при...

Написать программу которая выводит на экран заполненный или
Помогите написать программу Написать программу которая выводит на экран...

6
awalio
33 / 33 / 36
Регистрация: 22.05.2015
Сообщений: 146
Завершенные тесты: 2
12.06.2015, 11:25 #2
Дмитрий3105, в консоли?
0
8Observer8
2050 / 1343 / 218
Регистрация: 05.10.2013
Сообщений: 4,236
Записей в блоге: 56
12.06.2015, 11:36 #3
Дмитрий3105, зависит от требований:
- Можно в консоли разлиновать. Сделать консольные шахматы. Фигуры обозначать буквами или символами
- Можно картинку загрузить на окно - это будет 2D на GUI
- Можно научиться рисовать на OpenGL, DirectX. Это будет 2D или 3D. Но этому научиться - много времени и энергии
- Можно на игровом движке Unity5 (C#, VS2013). Делается очень быстро. Изучается так же быстро по видео-урокам с youtube и офиц. сайта. Вам просто нужно нагуглить модели в свободном доступе: chess models и кинуть на сцену. Получится так:
0
Миниатюры
Написать программу, которая выводит на экран шахматную доску  
Дмитрий3105
0 / 0 / 1
Регистрация: 24.02.2014
Сообщений: 17
12.06.2015, 14:18  [ТС] #4
да, в консоли

Добавлено через 1 минуту
да,в консоли символами

Добавлено через 11 секунд
да,в консоли символами
0
daslex
1291 / 535 / 177
Регистрация: 02.08.2011
Сообщений: 2,756
12.06.2015, 19:17 #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#include <iostream>
#include <windows.h>
using namespace std;
 
enum ConsoleColor
{
    Black         = 0,
    Blue          = 1,
    Green         = 2,
    Cyan          = 3,
    Red           = 4,
    Magenta       = 5,
    Brown         = 6,
    LightGray     = 7,
    DarkGray      = 8,
    LightBlue     = 9,
    LightGreen    = 10,
    LightCyan     = 11,
    LightRed      = 12,
    LightMagenta  = 13,
    Yellow        = 14,
    White         = 15
};
 
// устанавливает цвет текста в консоли
void SetColor(int text)
{
        HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
        SetConsoleTextAttribute(hStdOut, (WORD) text);
}
 
int main()
{
    char SIM1;
    char SIM2;
    cout<<"input sim1: "; cin>>SIM1;
    cout<<"input sim2: "; cin>>SIM2;
    /////////////////////////////////
 
   int COL=4;
   int ROW=4;
   cout<<"input COLUMNS: "; cin>>COL;
   cout<<"input ROWS: "; cin>>ROW;
 
 
  char S1;
  char S2;
 
  bool flag=false;
 
  SetColor(14);
 
  int T1,T2;
  int T1_,T2_;
  cout<<"input Color1: "; cin>>T1_;
  cout<<"input Color2: "; cin>>T2_;
 
 
  for (int a=0;a<ROW;a++){
        if (a%2 && a) { S1=SIM1; S2=SIM2; T1=T1_; T2=T2_;}
        else {S1=SIM2; S2=SIM1;  T1=T2_; T2=T1_; }
 
   for (int i=0;i<ROW;i++){
       for (int j=0;j<COL;j++)  {SetColor(T1); cout<<S1; SetColor(T2);}
       for (int j=0;j<COL;j++)  {SetColor(T2); cout<<S2; SetColor(T1);}
   }
 
   cout<<"\n";
  }
  SetColor(15);
 
 
 
   return 0;
}
0
Миниатюры
Написать программу, которая выводит на экран шахматную доску  
daslex
1291 / 535 / 177
Регистрация: 02.08.2011
Сообщений: 2,756
12.06.2015, 19:23 #6
не доделал .... поздно увидел..
0
daslex
1291 / 535 / 177
Регистрация: 02.08.2011
Сообщений: 2,756
12.06.2015, 20:28 #7
Если указывать нечетное количество колонок, то неправильно сработает, как исправить так и не понял. В остальном вроде работает
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <iostream>
#include <windows.h>
using namespace std;
 
enum ConsoleColor
{
    Black         = 0,
    Blue          = 1,
    Green         = 2,
    Cyan          = 3,
    Red           = 4,
    Magenta       = 5,
    Brown         = 6,
    LightGray     = 7,
    DarkGray      = 8,
    LightBlue     = 9,
    LightGreen    = 10,
    LightCyan     = 11,
    LightRed      = 12,
    LightMagenta  = 13,
    Yellow        = 14,
    White         = 15
};
 
// устанавливает цвет текста в консоли
void SetColor(int text)
{
        HANDLE hStdOut = GetStdHandle(STD_OUTPUT_HANDLE);
        SetConsoleTextAttribute(hStdOut, (WORD) text);
}
 
int main()
{
 
   int ROW(3),COL(6),T1(14),T2(5),size(5);
   char SYM1('X'),SYM2('Y');
 
   cout<<"input ROW: "; cin>>ROW;
   cout<<"input COLUMNS: "; cin>>COL;
   cout<<"input size: "; cin>>size;
   cout<<"input COLOR1: "; cin>>T1;
   cout<<"input COLOR2: "; cin>>T2;
   cout<<"input SYMBOL1: "; cin>>SYM1;
   cout<<"input SYMBOL2: "; cin>>SYM2;
 
   for (int m=0;m<ROW;m++){
   for (int k=0;k<size;k++){
   for (int i=0;i<COL*size;i++){
    if (i%size==0 || i==0){
            swap(SYM1,SYM2);
            swap(T1,T2);
    }
    SetColor(T1);
    cout<<SYM1;
   }
    cout<<"\n";
   }
   swap(SYM1,SYM2);
   swap(T1,T2);
   }
 
 
   return 0;
}
так что в моем варианте колонки только четными делать.
Хотя, может найдутся энтузиасты и доведут до ума.
0
Миниатюры
Написать программу, которая выводит на экран шахматную доску  
12.06.2015, 20:28
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.06.2015, 20:28
Привет! Вот еще темы с решениями:

Написать программу, которая выводит на экран предложения из файла
Требуется написать программу, которая считывает из файла и выводит на экран ...

Написать программу, которая выводит на экран таблицу умножения
Написать программу, которая выводит на экран квадрат Пифагора - таблицу...

Написать программу, которая выводит на экран вращающуюся фигуру
Нужно написать программу, которая выводит на экран вращающуюся фигуру.

написать программу, которая считывает текст из файла и выводит на экран
написать программу, которая считывает текст из файла и выводит на экран только...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru