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

Рандом число от -3 до 5 - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.93
TBIKC
web dev
 Аватар для TBIKC
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
04.10.2011, 22:26     Рандом число от -3 до 5 #1
Чото допереть до меня не может)
От положительных чисел понятно как
А вот как от -3 например до 5 сделать, попробовал и так и сяк, последний код такой:
C++
1
cout << (rand() % (-1)) +  3   << endl;
И всё равно не получается, как сделать ? Подскажите
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.10.2011, 22:26     Рандом число от -3 до 5
Посмотрите здесь:

рандом C++
Рандом C++
рандом C++
Рандом C++
C++ Рандом
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Daemon025
 Аватар для Daemon025
380 / 329 / 67
Регистрация: 06.12.2010
Сообщений: 900
04.10.2011, 22:27     Рандом число от -3 до 5 #2
C++
1
rand() % 9 -3;
TBIKC
web dev
 Аватар для TBIKC
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
04.10.2011, 22:30  [ТС]     Рандом число от -3 до 5 #3
Почему так ? причём тут 9 ? Поподробнее если можно ( голова к концу вечера не варит уже )
Chelioss
179 / 179 / 4
Регистрация: 08.01.2011
Сообщений: 1,131
04.10.2011, 22:39     Рандом число от -3 до 5 #4
потому что [0,8] - 3 = [-3, 5]
BoBaH26
30 / 30 / 0
Регистрация: 02.12.2010
Сообщений: 255
04.10.2011, 22:41     Рандом число от -3 до 5 #5
Не забудь про процедуру обновления базы генерации:
srand(time(0));
castaway
Эксперт С++
4842 / 2981 / 367
Регистрация: 10.11.2010
Сообщений: 11,013
Записей в блоге: 10
Завершенные тесты: 1
04.10.2011, 22:53     Рандом число от -3 до 5 #6
Да! И обязательно не забудь про процедуру обновления базы генерации!! Ведь суть вопроса кроется именно в этом!!!
BoBaH26
30 / 30 / 0
Регистрация: 02.12.2010
Сообщений: 255
04.10.2011, 22:57     Рандом число от -3 до 5 #7
lazybiz, она обязательна, иначе будут генерироваться одни и те же числа.
castaway
Эксперт С++
4842 / 2981 / 367
Регистрация: 10.11.2010
Сообщений: 11,013
Записей в блоге: 10
Завершенные тесты: 1
04.10.2011, 23:01     Рандом число от -3 до 5 #8
BoBaH26, я знаю) но зачем советовать человеку то, о чем он не спрашивал?!)
Все очень просто. Вопрос - ответ
BoBaH26
30 / 30 / 0
Регистрация: 02.12.2010
Сообщений: 255
04.10.2011, 23:04     Рандом число от -3 до 5 #9
lazybiz, просто нужно быть хоть чуточку дальновиднее. Его же на уроке (или на паре) спросят: "Почему у Вас числа одни и те же?"
Так что это обязательно.
TBIKC
web dev
 Аватар для TBIKC
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
04.10.2011, 23:07  [ТС]     Рандом число от -3 до 5 #10
lazybiz, + 1
На паре не спросят ) + я конечно же про этот момент уже знаю )
А как например написать от -10 до - 1 и от 2 до 6 ?
castaway
Эксперт С++
4842 / 2981 / 367
Регистрация: 10.11.2010
Сообщений: 11,013
Записей в блоге: 10
Завершенные тесты: 1
04.10.2011, 23:08     Рандом число от -3 до 5 #11
BoBaH26, я уверен что он тебе потом огромное спасибо за это скажет!)..... хотя.. нет. скорее он просто положит большой болт на то что ты ему посоветовал.

* извини что открыл тебе глаза на суровые реалии.
BoBaH26
30 / 30 / 0
Регистрация: 02.12.2010
Сообщений: 255
04.10.2011, 23:12     Рандом число от -3 до 5 #12
x = rand()%9-10 - от -10 до -1

Добавлено через 35 секунд
*10-10
castaway
Эксперт С++
4842 / 2981 / 367
Регистрация: 10.11.2010
Сообщений: 11,013
Записей в блоге: 10
Завершенные тесты: 1
04.10.2011, 23:15     Рандом число от -3 до 5 #13
TBIKC, помысли логически, rand() выдает числа от 0 до 65535 включительно. Если ты применишь операцию "остаток от деления", скажем, на 10, то получишь числа от 0 до 9 включительно. Отняв 10, ты получишь числа от -10 до -1.

Конечная формула: x = rand() % 10 - 10
TBIKC
web dev
 Аватар для TBIKC
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
04.10.2011, 23:24  [ТС]     Рандом число от -3 до 5 #14
Подумал -> лес какой то
castaway
Эксперт С++
4842 / 2981 / 367
Регистрация: 10.11.2010
Сообщений: 11,013
Записей в блоге: 10
Завершенные тесты: 1
04.10.2011, 23:26     Рандом число от -3 до 5 #15
BoBaH26, кстати на счет дальновидности. Мне кажется что люди с таким мировоззрением как Вы, должны преподавать в институтах (в хорошем смысле слова)

Добавлено через 54 секунды
TBIKC, со временем поймешь, если не забросишь программирование
TBIKC
web dev
 Аватар для TBIKC
104 / 91 / 1
Регистрация: 23.09.2010
Сообщений: 738
04.10.2011, 23:28  [ТС]     Рандом число от -3 до 5 #16
Не заброшу ... моя профессия ... ( ну правдо пока учусь в колледже на 3 курсе изучая функции строк в паскале )
А ведь скоро университет )
BoBaH26
30 / 30 / 0
Регистрация: 02.12.2010
Сообщений: 255
04.10.2011, 23:28     Рандом число от -3 до 5 #17
lazybiz, просто у меня было именно это. Сам попался на вопросе о том, почему одни и те же числа, поэтому я и дополнил ответ.
grizlik78
Эксперт C++
 Аватар для grizlik78
1882 / 1414 / 101
Регистрация: 29.05.2011
Сообщений: 2,958
04.10.2011, 23:32     Рандом число от -3 до 5 #18
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Общая форма для генерации чисел из диапазона [a, b], где a < b
C
1
2
N = b - a + 1; // количество чисел в диапазоне
r = rand() % N + a; // случайное число из диапазона [a, b]
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.10.2011, 02:26     Рандом число от -3 до 5
Еще ссылки по теме:

C++ Рандом
Рандом выводит всегда одно и тоже число C++
Продвинутый рандом (возможность задать рандомное число в нескольких диапазонах) C++

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

Или воспользуйтесь поиском по форуму:
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9372 / 5422 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
05.10.2011, 02:26     Рандом число от -3 до 5 #19
C
1
#define random(lo, hi) ( rand() % ((hi) - (lo) + 1) + (lo) )
Yandex
Объявления
05.10.2011, 02:26     Рандом число от -3 до 5
Ответ Создать тему
Опции темы

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