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

Шашки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Путанница http://www.cyberforum.ru/cpp-beginners/thread844040.html
Доброго времени суток. Некая проблема возникла, решение которой мне неизвестно. Вот всё хорошо: выводится ошибка, если вместо предполагаемых двух чисел ввожу одно, или два, но неверного формата(символы, буквы)...но когда ввожу два числа - они тоже распознаются как ошибка. Что же исправить здесь? #include <iostream> #include <cstdlib> #include <stdlib.h> int main(int argc, char* argv)...
C++ почему где подчеркнуто выдает ошибку,понять не могу(программа не дописана) #include <iostream> #include <math.h> using namespace std; int main() { setlocale( LC_ALL,"Russian" ); int a,i,j; cout<<"Введите элементы массива: \n"; for (i=0;i<4;i++) for (j=0;j<6;j++) http://www.cyberforum.ru/cpp-beginners/thread844033.html
C++ Работа со списками
Немножко понял принцип создания списков , но прога не работает... Что это могут быть за ошибки ? я не пойму...и как юзать геттеры и сееттеры ? #include "stdafx.h" #include <iostream> using namespace std; struct Element{ char data; Element* Next; }; class AutoList{
Вычислительная математика C++
Здраствуйте,добрые,люди.Тут такое задание по вычислительной математике,кому не тяжело,будьте добры помогите.Спасибо большое заранее. 1.Отделить корень уравнения e^-x-x^2+1=0 2.Найти корень уравнения методом хорд e^-x-x^2+1=0
C++ Нужно с текстового файла удалить слово (слова), которые имеют наибольшее количество разных букв http://www.cyberforum.ru/cpp-beginners/thread844014.html
Нужно с текстового файла удалить слово (слова), которые имеют наибольшее количество разных букв.
C++ Кто читал Г.Шилдта и С.Прата отозвитесь Всем привет! Я изучаю С++ и прочитав одну книгу понял что она просто описывает язык, получив базовые знания я купил для изучения (по дурости) "Полный справочник по С++ " Шилтда, когда после половины оказалось что изучать не получиться (по справочнику) хочу купить другую книгу, но хочу уточнить выбрал 2 книги: 1)Язык программирования C++. Лекции и упражнения - Стивен Прата 2)C++: базовый курс -... подробнее

Показать сообщение отдельно
Nick Alte
Эксперт С++
1590 / 982 / 115
Регистрация: 27.09.2009
Сообщений: 1,897
Завершенные тесты: 1
21.04.2013, 15:59     Шашки
Проектировать интерфейсы без опыта разработки - это всё равно, что заниматься китайской каллиграфией, зная о языке только "конфу" и "джекичан". Тем не менее, планировать определённо нужно, начиная от общего уровня и затем углубляясь в детали. В случае с шашками получается, что от программы требуется следующее:
а) уметь рисовать шашечное поле с шашками в минималистичном виде;
б) взаимодействовать с пользователем, позволяя ему в том или ином виде указывать необходимые действия
в) собственно играть с пользователем, выбирая наилучший ход в сложившейся на доске ситуации.
Вот с этим списочком уже можно начинать работать глубже. С пунктом а) составляем проект того, как будет выглядеть то самое поле - клетки, подписи к клеткам, сами шашки. Можно для упрощения выбрать текстовый режим, или обратиться всё же к графике: рисовать кружочки-квадратики вполне посильное дело даже для начинающего.
По пункту б) надо выбрать способы взаимодействия (клавиатура с буквенным вводом ходов, мышь или какое-то сочетание), определиться с доступными пользователю действиями (сама игра, выход, настройки, отмена хода и мало ли что ещё) и способом их выбора.
По пункту в) сформулировать идеи для алгоритма выбора наилучшего хода. Самое простое - полный перебор, как вариант - с ограничением по глубине. Сформулировать критерии, по которым оценивается ситуация на доске (так, например, надо исходить из того, что игрок не будет совершать заведомо дурацкие, проигрышные ходы).

Добавлено через 6 минут
Таким образом, пункты раскрываются на независимые подпункты, каждый из которых можно воспринимать как отдельную задачу и точно также углубляться и раскрывать далее, пока всё не сведётся к элементарным действиям.
А для практики хорошо будет попробовать свои силы сначала на гораздо более простых задачах близкой тематики, решение которых кажется вполне очевидным. Или идти по лесенке постепенного усложнения. Сначала написать просто программу, которая поддерживает состояние шашечной доски и изменяет его согласно введённым командам, в текстовом режиме. Добавить туда проверку простейших правил, потом - более сложных, с дамками и прочим. Добавить простейшего игрока, который ходит по правилам, но наугад, не думая. И так идти по шажку от простого к сложному, улучшать и усовершенствовать.
 
Текущее время: 08:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru