Форум программистов, компьютерный форум CyberForum.ru

Необходимо организовать движение шашки по шахматной доске - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить значение выражения при различных вещественных типах данных http://www.cyberforum.ru/cpp-beginners/thread1098120.html
Вычислить значение выражения при различных вещественных типах данных (float и double). Вычисления следует выполнять с использованием промежуточных переменных. Сравнить и объяснить полученные результаты.. #include <iostream> #include <math.h> using namespace std; int main() { float a = 1000, b = 0.0001f, c;
C++ Вычислить значение выражения Вычислить значение выражения. Объяснить полученные результаты. 1. Для ввода и вывода данных использовать операции >> и << и стандартные потоки cin и cout. 2. Для вычисления степени можно использовать функцию pow(x,y) из библиотечного файла math.h. #include "stdafx.h" #include <iostream> #include <iomanip> #include <math.h> http://www.cyberforum.ru/cpp-beginners/thread1098116.html
C++ В последовательности из n произвольных чисел подсчитать количество нулей
Помоги пожалуйста написать программу в С++ очень нужно! В последовательности из n произвольных чисел подсчитать количество нулей.
C++ Ввод пустой строки и ее запись в переменную
Нужно вводить в консоли несколько строк подряд, среди которых может быть пустая. Ввожу первую, нажимаю enter, ввожу следующую и т.д. Это считывается в переменные типа string. Но когда ввожу пустую строку(т.е сразу нажимаю enter), то она не вводится в переменную, а переходит на строку ниже и просит ввести еще раз. Как занести пустую строку в переменную string? #include <iostream> #include...
C++ Добавление введенных данных к существующей БД и возвращение содержимого базы, отсортированного по датам рождения http://www.cyberforum.ru/cpp-beginners/thread1098101.html
Данные о студентах в виде «Фамилия, имя, группа, да-та рождения, средний рей-тинг» Добавление введенных данных к существующей БД и возвращение содержимого базы, отсортированно-го по датам рождения ПОМОГИТЕ пожалййста
C++ Рекурсивная функция нахождения наибол. элемента в массиве Нужно найти с помощью рекурсии наибольший элемент в массиве. Но код выдает ошибку Первый этап обработки исключения по адресу 0x002A5056 в 1 laba.exe: 0xC0000005: нарушение прав доступа при чтении по адресу 0x00470000. Сам код: #include <iostream> using namespace std; int maximum(int *j, int num, int *max); //*j-указатель на начало массива //num - количество элементов в массиве... подробнее

Показать сообщение отдельно
NMIX_595
0 / 0 / 0
Регистрация: 01.06.2014
Сообщений: 8
08.06.2014, 12:51     Необходимо организовать движение шашки по шахматной доске
Люди спасайте. Как описывается
Цитата Сообщение от ВлаDDD Посмотреть сообщение
Код C++

* * * * TPoint pt;
* * GetCursorPos(&pt);
* * pt=ScreenToClient(pt);
* * int x;
if(pt.y<390&&pt.x<390&&pt.y>30&&pt.x>30)
* * {
* * * * int i = ((pt.y-30)/45);
* * * * int j = ((pt.x-30)/45);
* * * * const int x = j * 45 + 30;
* * * * const int y = i * 45 + 30;
* * * * *.........................................
в разделе функций, структур...

Добавлено через 19 минут
Спасибо, нашел

Добавлено через 16 минут
Возникла проблема с объявлением: " error: cannot convert 'TPoint*' to 'LPPOINT {aka tagPoint*}' for argument '1' to 'BOOL GetCursorPos(LPPOINT)' "

Добавлено через 1 минуту
код :
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#include <cstdlib>
#include <iostream>
#include "graphics.h"
using namespace std;
const int N=8;
void display()//Процедура рисования доски
{
    int x=0, y=0;
    setcolor(WHITE); // установка цвета рисования доски
    for (int i=0;i<N;i++) // Цикл рисования доски (клетки для фигур)
    {
        x=0;
        for (int j=0;j<N;j++)
        {
            rectangle(x,y,x+60,y+60);
            if ((i+j)%2 == 0) // если нечетная ячейка
            floodfill(x+30,y+30,WHITE); // то закрасить в белый
            x+=60;
        }
        y+=60;
    }
}
void zapolnchern()//Процедура выставления черных шашек
{
    int x=0, y=0;
    setcolor(15);
    for (int i=0;i<3;i++)
    {
        x=0;
        for (int j=0;j<N;j++)
        {
            if (!((i+j)%2 == 0)) // если нечетная ячейка
            circle( x+30,y+30,27);
            floodfill(x+30,y+30,BLACK);// то закрасить в черный
            x+=60;
        }
        y+=60;
    }
}
void zapolnbel()//Процедура выставления белых шашек
{
    int x=0, y=300;
    setcolor(15);
    for (int i=5;i<N;i++)
    {
        x=0;
        for (int j=0;j<N;j++)
        {
            if (!((i+j)%2 == 0)) // если нечетная ячейка
            circle( x+30,y+30,27);
            floodfill(x+30,y+30,WHITE);// то закрасить в белый
            x+=60;
        }
        y+=60;
    }
}
struct TPoint
{
    int x;
    int y;
};
int main(int argc, char *argv[])
{
int board[N][N];// Зануление массива
for (int i=0;i<N;i++)
    for (int j=0;j<N;j++)
{
    board[i][j]=0;
}
for (int i=5;i<N;i++)// Заполнение массива белыми
    for (int j=0;j<N;j++)
{
    if (!((i+j)%2 == 0)) board[i][j]=1;
}
for (int i=0;i<3;i++) //Заполнение массива черными
    for (int j=0;j<N;j++)
{
    if (!((i+j)%2 == 0)) board[i][j]=2;
}
 
initwindow(480,480);
setbkcolor(4);
display();
zapolnchern();
zapolnbel();
TPoint pt;
GetCursorPos(&pt);
int x;
if(pt.y<480 && pt.x<480 && pt.y>30 && pt.x>30)
{
    int i = ((pt.y-30)/45);
    int j = ((pt.x-30)/45);
    const int x = j * 45 + 30;
    const int y = i * 45 + 30;
    cout<<" Х : "<<x<<" Y : "<<y;
}
getch();
closegraph();
return 0;
}
 
Текущее время: 01:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru