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

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

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

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

помощь(консультация) в написании прогр.на Си-текст.редактор
Тут вот задали написать текстовой редактор на си,выдана программа-заготовка,она...

подскажите в чем моя ошибка в написании этой программы.
# include <stdio.h> int main (void) { int state=0, mx_dl_sl=0,c; ...

Помогите найти причину ошибки при компиляции программы со списком
По завершении компиляции выходит ошибка (выделено красным): Программа для...

нужна помощь в написании программки
Добрый день! задача такая: есть 2 поля memo1 и memo2 в них в столбец...

Различия в написании кода между C++ Builder и VS
Собственно говоря, решил попробовать C++ Builder, т.к. не устраивает VS, но...

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

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

вот только не понятно зачем генерить 7 вариантов? седьмой - типа "кубик завис в воздухе" или "упал на ребро"?
я тоже так подумал. но хозяин барин, да и думаю принцип нужен был, с числами совладает. так ведь 1st?
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
29.09.2009, 19:53 #12
TanT, ивзините извините,забыл
C
1
int i=rand()%7-1;
вот так правильнее
0
TanT
эволюционирую потихоньку
467 / 465 / 91
Регистрация: 30.06.2009
Сообщений: 1,399
29.09.2009, 19:58 #13
Цитата Сообщение от МедведЪ Посмотреть сообщение
TanT, ивзините извините,забыл
C
1
int i=rand()%7-1;
вот так правильнее
и всё таки нет, получите результат от -1 до 6, ибо 7%7=0, а 0-1 = -1.
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
29.09.2009, 21:31 #14
Цитата Сообщение от TanT Посмотреть сообщение
получите результат от -1 до 6
что и требовалось...на кубе от1ого до 6ти точек
0
TanT
эволюционирую потихоньку
467 / 465 / 91
Регистрация: 30.06.2009
Сообщений: 1,399
30.09.2009, 05:31 #15
Цитата Сообщение от МедведЪ Посмотреть сообщение
что и требовалось...на кубе от1ого до 6ти точек
нууу будет -1, 0, 1, 2, 3, 4, 5, я тоже ошибся будет не от -1 до 6, а от -1 до 5
если по модулю брать, то вероятность появления единицы будет два раза чаще чем всех остальных чисел. иначе выпадет какой-то случай -1, что вообще не верно.
вся загвоздка в том что rand()%7 генерит числа { 0, 1, 2, 3, 4, 5 ,6 } и отнимать единицу не к чему.
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
30.09.2009, 16:17 #16
TanT, на кубе нету нуля,а 1-7 выводит от 1о до 6,проверено
0
TanT
эволюционирую потихоньку
467 / 465 / 91
Регистрация: 30.06.2009
Сообщений: 1,399
30.09.2009, 16:49 #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 будут лишнии циклы.
0
AnonymC
1178 / 461 / 86
Регистрация: 23.06.2009
Сообщений: 6,363
Завершенные тесты: 1
30.09.2009, 17:09 #18
да,пусть кто то скажет что правильнее
0
XuTPbIu_MuHTAu
Эксперт С++
2234 / 749 / 25
Регистрация: 27.05.2008
Сообщений: 1,498
30.09.2009, 22:51 #19
Цитата Сообщение от МедведЪ Посмотреть сообщение
да,пусть кто то скажет что правильнее
rand() % 7 - 1 геренирует числа от -1(МИНУС единицы.) до 5(пяти) включая ноль.

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

P.S. Вся соль скорее всего в том, что стоит выбор или условие пропускать значения от 0..6, тогда 6ка никогда не выпадет, а при 0 и -1 будут лишнии циклы.
0
01.10.2009, 05:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.10.2009, 05:35
Привет! Вот еще темы с решениями:

Ошибки при написании консольного приложения
Всем привет! Помогите пожалуйста разобраться в чем дело, не запускается...

Компонент TIdHTTP и прочие компоненты при написании своих функций
Понимаю, что вопрос из азов, но уже измучил весь поисковик, да и затрудняюсь в...

Помогите в написании программы(массив)
Дан массив целых чисел. Вывести те из них, индексы которых являются числами...

При написании программы выходит ошибка, помогите разобраться
При написании программы выходит ошибка, помогите разобраться в ней Error...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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