|
18 / 18 / 4
Регистрация: 05.05.2013
Сообщений: 88
|
|||||||||||
rand() cpp12.10.2013, 16:55. Показов 1403. Ответов 6
Метки нет (Все метки)
1. Тут недавно мне пришлось вспомнить как работать с rand() в С++. Ну сложности не было, конечно, нужно было случайное число на неком промежутке [min-max]. Я сразу написал вот такую формулу:
max - rand()%(max-min) А потом погуглил, думал может будет чето по меньше, и заметил, точнее совсем не заметил такой формулы, и подумал что она "неправильная", хоть я ее и потестил: выдавала она корректные числа. Вы думаете, можно такую формулу юзать, или она дольше работает или неправильно (что врядли, но возможно(= ). 2. И еще момент. Мне нужно было получать этот рандом в цикле, соответственно простой
Спасибо.
0
|
|||||||||||
| 12.10.2013, 16:55 | |
|
Ответы с готовыми решениями:
6
Ошибка: [C++ Error] mk.cpp(20): E2268 Call to undefined function 'rand' Есть три файла. файл main.cpp и Source.cpp знают только Header.h, так как он подключен. как же подключается Source.cpp
|
|
БНТУ ФИТР
215 / 155 / 42
Регистрация: 26.12.2012
Сообщений: 382
|
|||||||||||
| 12.10.2013, 16:58 | |||||||||||
|
gund, по логике вещей 0 можно и так
0
|
|||||||||||
|
18 / 18 / 4
Регистрация: 05.05.2013
Сообщений: 88
|
|||
| 12.10.2013, 18:36 [ТС] | |||
|
kventin_zhuk, srand(i) можно, но тогда получаются одни и те же числа при каждом запуске программы (ведь i всегда от n до m), а srand(time(NULL) * time(NULL)) лишено смысла так как в один момент они одинаковы соответственно это тоже что и srand(time(NULL)) - то есть не подходит.
castaway, эту формулу я видел, но она длинней чем моя. =)
0
|
|||
|
18 / 18 / 4
Регистрация: 05.05.2013
Сообщений: 88
|
|
| 12.10.2013, 18:59 [ТС] | |
|
castaway, действительно, работает =)
Но почему так происходит, ведь тогда смысла в использовании srand() вообще нет =) Но спасибо, теперь будет удобней)
0
|
|
|
|
|||||||||||
| 12.10.2013, 20:26 | |||||||||||
|
Смысл использования srand в том, что если его не использовать вообще, то каждый раз будут одни и те же последовательности псевдослучайных чисел. Если вызвать его один раз перед генерацией в виде srand(time(0)), то начальное значение последовательности всегда будет разным (т.к. время не будет одинаковым в двух разных вызовах программы) и сами последовательности, соответственно, тоже.
Если вызывать его каждый раз в цикле, то в тех итерациях, когда время будет "одинаковым" (система еще не обновила текущее время), вас будет каждый раз отбрасывать к первому генерируемому значению в последовательности, а поскольку результат srand(time(0)) в этих итерациях будет одинаков, и последовательности одинаковые, то вы будете получать одинаковые результаты. К примеру, предположим, что srand устанавливает "затравочное" число на свой аргумент, а rand работает очень просто:
2
|
|||||||||||
| 12.10.2013, 20:26 | |
|
Помогаю со студенческими работами здесь
7
Включение библиотек в main.cpp и my_func.cpp Библиотеки в CPP. Ошибка компиляции | CPP Подключение файлов main.cpp some.cpp some.h C:\tsserver\Projects\cpp\codeblocks\MyComp\compiler\mmz\mmz. cpp|29|error: no match for 'operator=' in '* Item = * Source'| Вот: source_file.cpp: In function 'int main()': source_file.cpp:10:12: error: 'strlen' was not declared in this scope Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|