Вопрос № 153432: Доброе время суток, есть вопросик: как можно сделать в с++ игру кости. Два игрока (или больше) кидают по очереди 6 раз кубик, потом у каждого складываются очки и выевляется победитель. И всё это должно конечно показатся на мониторе. Заранее ...
Вопрос № 153480: Добрый день, помогите пешить следующую задачу? Написать программу С++, которая состоит из двух файлов: файла-заголовка, который содержит определения для функций
– членов и файла, содержащего тестовую программу. В файле заголовка объявить класс...Вопрос № 153488: Здравствуйте, уважаемые эксперты! У меня тут задача по СИ, я её начал делать, но закончить не могу, так как новичек пока что.. вообщем нужно в одномерном массиве чисел целого типа (16 бит) выполнить следующую двоичную обработку с обязательным примене...Вопрос № 153505: Здравствуйте,
уважаемые эксперты. Помогите пожалуйста с программой на Си, которая для любой заданной пользователем даты выводит день недели, если известно, что 1 января 1999 года пятница. Спасибо....Вопрос № 153555: Здравствуйте, уважаемые эксперты! Пожалуйста, помогите решить такую задачу Написать программу, в которой вводиться строка символов. Определить функцию, которая проверяет одинаковое ли число открывающихся и закрывающихся скобок в данной строке.Прог...
Вопрос № 153.432
Доброе время суток, есть вопросик: как можно сделать в с++ игру кости. Два игрока (или больше) кидают по очереди 6 раз кубик, потом у каждого складываются очки и выевляется победитель. И всё это должно конечно показатся на мониторе. Заранее всем спасибо.
Отвечает: Dr_Andrew
Здравствуйте, Корыгин Леонид Игнатьевич! Для создания игры нам понадобятся три класса: класс игрального кубика (кости) - TDice, класс игрока - TPlayer и класс судьи - TReferee. Для облегчения разработки члены всех классов объявим открытыми (public). Класс TDice Содежит число, выпавшее на кубике (short nDiceNumber) и функцию, имитирующую бросок кубика:
Класс TPlayer Содержит число очков игрока (short nPlayerDashes) и его кубик (TDice Dice), а также функцию-член, отвечающую за выполнение игроком броска:
Код:
void TPlayer::Moves() { short nMove = Dice.ThrowDice(); nPlayerDashes = nPlayerDashes + nMove; // Суммируем очки игрока }
Класс TReferee Самый важный класс, отвечающий, собственно, за логику игры. Судья помнит максимальное количество ходов, которое делают игроки (short nDashes); в условии задачи
оно 6, но может и меняться. Кроме того, судья отвечает за начало игры (void NewGame()), где выясняется количество игроков, которое заранее неизвестно, а также за вывод результатов (void ShowResults()) и определение победителя. Подробнее - см. код в приложении, где приведён простейший пример использования разработанных классов. Удачи!
Приложение:
Ответ отправил: Dr_Andrew (статус: Практикант)
Ответ отправлен: 08.12.2008, 16:50
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 238095 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 153.480
Добрый день, помогите пешить следующую задачу? Написать программу С++, которая состоит из двух файлов: файла-заголовка, который содержит определения для функций – членов и файла, содержащего тестовую программу. В файле заголовка объявить класс MyClass. В состав класса входят локальные поля ( в разделе private): ar1, ar2 – действительного типа. Класс содержит мето, который выводит на экран значение поля, а также метод проверки на неравенство объектов класса MyClass (чтобы сравнивались значения соответствующих
полей). Второй файл содержит тестовую программу, которая сообщает два объекта класса (один объект с помощью конструктора без параметров, один объект с помощью конструктора с параметрами). Тестовая программа использует методы: изменения значения полей, сравнение объектов класса MyClass, метод вывода на экран.
Отправлен: 08.12.2008, 16:48
Вопрос задала: Osipova (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Калеев Владимир Викторович
Здравствуйте, Osipova! Верхняя часть заголовочный файл, нижняя сама программа При желании можно доработать )
#thank 238119 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 153.488
Здравствуйте, уважаемые эксперты! У меня тут задача по СИ, я её начал делать, но закончить не могу, так как новичек пока что.. вообщем нужно в одномерном массиве чисел целого типа (16 бит) выполнить следующую двоичную обработку с обязательным применением функций и указателей: найти количество нулевых и единичных разрядов в каждом числе. Числа с максимальным количеством нулевых и единичных разрядов поменять местами. Я ввод и вывод массива сделал, а дальше незнаю даже как работать.. в приложении код оставил. Кто
чем может помочь? Буду очень благодарен!
Приложение:
Отправлен: 08.12.2008, 17:46
Вопрос задал: Denton87 (статус: 1-й класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: Verena
Здравствуйте, Denton87! Получить i-й бит числа из 16 бит можно, например, так: x>>(16-i%16))%2 Проверяем все биты числа, подсчитываем нулевые и ненулевые, ищем среди этих значений максимальные и меняем местами, ничего сложного. Пример в приложении, скомпилирован в VS 2005, кое-что в Вашем коде поменяла и добавила обработку. Работа с массивом через указатели, как Вы хотели, хоть это и не слишком удобно. Удачи!
Приложение:
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Специалист)
Ответ отправлен: 09.12.2008, 21:51
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 238170 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Оценка за ответ: 5 Комментарий оценки: Спасибо вам огромное! Денежное "спасибо" перевожу уж сколько могу.. ;)
Вопрос № 153.505
Здравствуйте, уважаемые эксперты. Помогите пожалуйста с программой на Си, которая для любой заданной пользователем даты выводит день недели, если известно, что 1 января 1999 года пятница. Спасибо.
#thank 238147 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Вопрос № 153.555
Здравствуйте, уважаемые эксперты! Пожалуйста, помогите решить такую задачу Написать программу, в которой вводиться строка символов. Определить функцию, которая проверяет одинаковое ли число открывающихся и закрывающихся скобок в данной строке.Программа должна выдавать соответствующее сообщение. Помогите пожалуйста.
Отправлен: 09.12.2008, 07:43
Вопрос задал: Татьяна Михайловна Осечкина
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Калеев Владимир Викторович
Здравствуйте, Татьяна Михайловна Осечкина! В этой программе не мешало бы добавить дополнительные проверки на соответствие закрывающей скобки открывающей. Я же написал программу которая соответствует условиям задачи.
#thank 238124 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Отвечает: Dr_Andrew
Здравствуйте, Татьяна Михайловна Осечкина! Как вариант - в приложении решение, практически идентичное таковому предыдущего эксперта, но позволяющее анализировать строки произвольной (а не фиксированной длины). Кроме того, данный вариант будет работать в случае представления русского текста в юникоде. Удачи!
Приложение:
Ответ отправил: Dr_Andrew (статус: Практикант)
Ответ отправлен: 09.12.2008, 08:53
Как сказать этому эксперту "спасибо"?
Отправить SMS
#thank 238126 на номер 1151 (Россия) | Еще номера >>
Вам помогли? Пожалуйста, поблагодарите эксперта за это!
Скажите "спасибо" эксперту, который помог Вам!
Отправьте СМС-сообщение с тестом #thank НОМЕР_ОТВЕТА
на короткий номер 1151 (Россия)
Номер ответа и конкретный текст СМС указан внизу каждого ответа.
* Стоимость одного СМС-сообщения от 7.15 руб. и зависит от оператора сотовой связи.
(полный список тарифов)
** При ошибочном вводе номера ответа или текста #thank услуга считается оказанной, денежные средства не возвращаются.
*** Сумма выплаты эксперту-автору ответа расчитывается из суммы перечислений на портал от биллинговой компании.