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

C++

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
1st
0 / 0 / 0
Регистрация: 29.09.2009
Сообщений: 4
#1

Помогите в написании программы (C++) - C++

29.09.2009, 15:28. Просмотров 1853. Ответов 22
Метки нет (Все метки)

За каждый ход генерируется случай n-ое число от 0 до 6 (моделируется выпадание игрального кубика). На основании полученного числа пользователь может взять из общего "банка" n элементов (с ограничением не более чем выпавшее число). Побеждает игрок который берет последний элемент в "банке".
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.09.2009, 15:28     Помогите в написании программы (C++)
Посмотрите здесь:

C++ Builder подскажите в чем моя ошибка в написании этой программы.
C++ Помогите дописать часть программы.
Помогите с написанием программы Visual C++
Помогите с составлением программы C++
в каком направлении действовать при написании программы C++
Помощь в написании программы, производящей вычисления и заносящей их в табличку C++
Помочь в написании программы. (С матрицами) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
RazorQ
576 / 343 / 9
Регистрация: 06.02.2009
Сообщений: 1,386
29.09.2009, 15:30     Помогите в написании программы (C++) #2
В чем проблема? В генерировании числа или "пользователь может взять из общего "банка" n элементов"?
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
29.09.2009, 15:32     Помогите в написании программы (C++) #3
И чем Вам помочь?
1st
0 / 0 / 0
Регистрация: 29.09.2009
Сообщений: 4
29.09.2009, 15:56  [ТС]     Помогите в написании программы (C++) #4
проблема в генерировании числа
TanT
эволюционирую потихоньку
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
29.09.2009, 16:07     Помогите в написании программы (C++) #5
C++
1
2
3
4
#include <time.h>
srand (unsigned (time(0)));
 
int i=rand()%7; //рандомное число от 0 до 6
1st
0 / 0 / 0
Регистрация: 29.09.2009
Сообщений: 4
29.09.2009, 16:17  [ТС]     Помогите в написании программы (C++) #6
спасибо огромное
GAV_13
81 / 81 / 4
Регистрация: 14.09.2009
Сообщений: 252
29.09.2009, 16:33     Помогите в написании программы (C++) #7
вот только не понятно зачем генерить 7 вариантов? седьмой - типа "кубик завис в воздухе" или "упал на ребро"?
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
29.09.2009, 17:27     Помогите в написании программы (C++) #8
GAV_13,

Добавлено через 1 минуту
int i=rand()%7; //рандомное число от 0 до 6
вроде на кубиках нету "0"
лучше так
int i=rand()%6-1;
от 1ого до 6и
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
29.09.2009, 17:52     Помогите в написании программы (C++) #9
Цитата Сообщение от МедведЪ Посмотреть сообщение
лучше так
лучше так не делать, ибо остаток от деления определен от 0 до n
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
29.09.2009, 18:53     Помогите в написании программы (C++) #10
R0mm, не понял..а что такое n?
TanT
эволюционирую потихоньку
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
29.09.2009, 19:41     Помогите в написании программы (C++) #11
МедведЪ,
R0mm, не понял..а что такое n?
при
C++
1
 int i=rand()%6-1;
получишь диапазон значений от -1 до 5
это имел ввиду уважаемый R0mm

вот только не понятно зачем генерить 7 вариантов? седьмой - типа "кубик завис в воздухе" или "упал на ребро"?
я тоже так подумал. но хозяин барин, да и думаю принцип нужен был, с числами совладает. так ведь 1st?
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
29.09.2009, 19:53     Помогите в написании программы (C++) #12
TanT, ивзините извините,забыл
C
1
int i=rand()%7-1;
вот так правильнее
TanT
эволюционирую потихоньку
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
29.09.2009, 19:58     Помогите в написании программы (C++) #13
Цитата Сообщение от МедведЪ Посмотреть сообщение
TanT, ивзините извините,забыл
C
1
int i=rand()%7-1;
вот так правильнее
и всё таки нет, получите результат от -1 до 6, ибо 7%7=0, а 0-1 = -1.
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
29.09.2009, 21:31     Помогите в написании программы (C++) #14
Цитата Сообщение от TanT Посмотреть сообщение
получите результат от -1 до 6
что и требовалось...на кубе от1ого до 6ти точек
TanT
эволюционирую потихоньку
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
30.09.2009, 05:31     Помогите в написании программы (C++) #15
Цитата Сообщение от МедведЪ Посмотреть сообщение
что и требовалось...на кубе от1ого до 6ти точек
нууу будет -1, 0, 1, 2, 3, 4, 5, я тоже ошибся будет не от -1 до 6, а от -1 до 5
если по модулю брать, то вероятность появления единицы будет два раза чаще чем всех остальных чисел. иначе выпадет какой-то случай -1, что вообще не верно.
вся загвоздка в том что rand()%7 генерит числа { 0, 1, 2, 3, 4, 5 ,6 } и отнимать единицу не к чему.
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
30.09.2009, 16:17     Помогите в написании программы (C++) #16
TanT, на кубе нету нуля,а 1-7 выводит от 1о до 6,проверено
TanT
эволюционирую потихоньку
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
30.09.2009, 16:49     Помогите в написании программы (C++) #17
Цитата Сообщение от МедведЪ Посмотреть сообщение
TanT, на кубе нету нуля,а 1-7 выводит от 1о до 6,проверено
не сочти за назойливость, но
C++
1
int i=rand()%7-1;
генерит массив чисел {-1, 0, 1, 2, 3, 4, 5,}
Или я жёстко туплю. Нужно слово третьего, нейтрального человека. Модераторы рассудите нас.
P.S. Вся соль скорее всего в том, что стоит выбор или условие пропускать значения от 0..6, тогда 6ка никогда не выпадет, а при 0 и -1 будут лишнии циклы.
^Tecktonik_KiLLeR
1158 / 440 / 22
Регистрация: 23.06.2009
Сообщений: 6,227
Завершенные тесты: 1
30.09.2009, 17:09     Помогите в написании программы (C++) #18
да,пусть кто то скажет что правильнее
XuTPbIu_MuHTAu
Эксперт C++
2221 / 736 / 10
Регистрация: 27.05.2008
Сообщений: 1,508
30.09.2009, 22:51     Помогите в написании программы (C++) #19
Цитата Сообщение от МедведЪ Посмотреть сообщение
да,пусть кто то скажет что правильнее
rand() % 7 - 1 геренирует числа от -1(МИНУС единицы.) до 5(пяти) включая ноль.

Правильный ответ есть тут
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.10.2009, 05:35     Помогите в написании программы (C++)
Еще ссылки по теме:

C++ Нужна помоощь в написании программы в Си++, пожалуйста
При написании программы по нахождению минимума на экран ничего не выводится, почему? C++
C++ Помогите прокомментировать код программы
Помогите разобраться в работе программы C++

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

Или воспользуйтесь поиском по форуму:
TanT
эволюционирую потихоньку
464 / 462 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
01.10.2009, 05:35     Помогите в написании программы (C++) #20
а я чего сказал?
Цитата Сообщение от TanT Посмотреть сообщение
не сочти за назойливость, но
C++
1
int i=rand()%7-1;
генерит массив чисел {-1, 0, 1, 2, 3, 4, 5,}

P.S. Вся соль скорее всего в том, что стоит выбор или условие пропускать значения от 0..6, тогда 6ка никогда не выпадет, а при 0 и -1 будут лишнии циклы.
Yandex
Объявления
01.10.2009, 05:35     Помогите в написании программы (C++)
Ответ Создать тему
Опции темы

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