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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Vitor php
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 3
#1

Не могу разобраться в коде - C++

17.01.2016, 15:42. Просмотров 162. Ответов 5
Метки нет (Все метки)

Всем дня доброго.В плюсах я ровным счетом 0.Расшифровать по нормальному не могу.Отрывок из кода описывающего программы шахматы.

C++
1
2
3
4
5
6
7
8
9
10
11
bool proverka_hoda(string name_figure, int start_posX, int start_posY, int novayaPosX, int novayaPosY)
    {
        bool t = false;
        if (name_figure == "пешка")
        {
            if (start_posX == novayaPosX && start_posY + 1 == novayaPosY)
                t = true;
            else if (start_posX == novayaPosX && start_posY == 2 && novayaPosY == 4)
                t = true;
            else
                t = false;
В первый иф, стартовая позиция = новой позиции или старт у+1= новая позиция
не понимаю почему иксы не трогаются +1 так понимаю потому что пешка на одину клетку только может.
во втором ифе, не понимаю стартовая позиция=2 или новая позиция =4 как это расшифровать?Почему стартовая по у 2, а новая 4?

C++
1
2
3
4
5
6
7
8
else if (name_figure == "ладья")
        {
            if (start_posX == novayaPosX && abs(start_posY - novayaPosY) >= 1)
                t = true;
            else if (start_posY == novayaPosY && abs(start_posX - novayaPosX) >= 1)
                t = true;
            else
                t = false;
Тут вообще ничего не понимаю, зачем тут abs нужен, корень вроде и опять же t = false, почему так.

Прошу помощи люди добрые!)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2016, 15:42     Не могу разобраться в коде
Посмотрите здесь:

пмг разобраться в коде C++
C++ нужно разобраться в коде
C++ ошибка в коде,не могу разобраться
C++ Нужно разобраться в коде
Нужно разобраться в коде C++
Разобраться в коде C++
Не могу разобраться в коде C++
Не могу разобраться в коде. Некорректный результат работы программы C++
C++ Разобраться с ошибками в коде
C++ Не могу разобраться в коде программы для заполнения массива
Не могу разобраться в коде C++
Не могу разобраться с функциями в коде. Что это за функции Intreader , Bitwriter C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
_Valera_
486 / 368 / 94
Регистрация: 27.01.2015
Сообщений: 1,588
17.01.2016, 16:40     Не могу разобраться в коде #2
Цитата Сообщение от Vitor php Посмотреть сообщение
ут вообще ничего не понимаю,
потому что код рак писал. Посмотри все транслитом написано. А тип фигуры он передает строкой.... условия 100500 раз проверяют одно и тоже, при этом упуская другие важные моменты.

Цитата Сообщение от Vitor php Посмотреть сообщение
не понимаю стартовая позиция=2 или новая позиция =4 как это расшифровать?Почему стартовая по у 2, а новая 4?
это потому что если с позиции 2 или 7 пешка может пойти на два хода (если она не двигалась до).

Цитата Сообщение от Vitor php Посмотреть сообщение
зачем тут abs нужен, корень вроде
где корень?


Сомневаюсь что код рабочий. Не читай его, плохому научишься.
Vitor php
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 3
17.01.2016, 16:44  [ТС]     Не могу разобраться в коде #3
Код не рабочий, ибо этот код компилироваться не должен, это описание программы, а не сама программа)
Функция ABS это не корень?Что-то другое означает?
GbaLog-
Любитель чаепитий
2541 / 1080 / 272
Регистрация: 24.08.2014
Сообщений: 3,968
Записей в блоге: 1
Завершенные тесты: 2
17.01.2016, 16:47     Не могу разобраться в коде #4
Vitor php, abs(int) - функция, которая возвращает абсолютную величину из числа, переданного, как аргумент.
_Valera_
486 / 368 / 94
Регистрация: 27.01.2015
Сообщений: 1,588
17.01.2016, 16:48     Не могу разобраться в коде #5
Цитата Сообщение от Vitor php Посмотреть сообщение
ABS это не корень?
http://www.cplusplus.com/reference/cmath/
Vitor php
0 / 0 / 0
Регистрация: 17.01.2016
Сообщений: 3
17.01.2016, 18:25  [ТС]     Не могу разобраться в коде #6
Это код описания программы, а не самой проги, забыл добавить!

Добавлено через 27 минут
Ребяят, обьясните пожалуйста как понять, ну почему так конь то ходит?)Я понимаю что тут по идее буква Г должна описываться, но не понимаю как она тут описывается!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
else if (name_figure == "конь")
        {
            if (start_posX + 1 == novayaPosX && start_posY + 2 == novayaPosY)
                t = true;
            else if (start_posX - 1 == novayaPosX && start_posY + 2 == novayaPosY)
                t = true;
            else if (start_posX - 2 == novayaPosX && start_posY + 1 == novayaPosY)
                t = true;
            else if (start_posX + 2 == novayaPosX && start_posY + 1 == novayaPosY)
                t = true;
            else if (start_posX - 2 == novayaPosX && start_posY - 1 == novayaPosY)
                t = true;
            else if (start_posX + 2 == novayaPosX && start_posY - 1 == novayaPosY)
                t = true;
            else if (start_posX - 1 == novayaPosX && start_posY - 2 == novayaPosY)
                t = true;
            else if (start_posX + 1 == novayaPosX && start_posY - 2 == novayaPosY)
                t = true;
            else
                t = false;
Yandex
Объявления
17.01.2016, 18:25     Не могу разобраться в коде
Ответ Создать тему
Опции темы

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