Опубликовано 4 апреля, 200719 г. comment_3795504 Не могу найти как на С++ получить любое случайное число от 0 до 1. Кто-нибудь может помочь это сделать? Жалоба
Опубликовано 4 апреля, 200719 г. comment_3795572 #include <cstdlib> #include <iostream> using namespace std; int main() { int random_integer = rand(); cout << random_integer << endl; } Жалоба
Опубликовано 4 апреля, 200719 г. Автор comment_3795627 Интересуют не целые числа, а множество случайных чисел от 0 до 1 (0,000123, 0,971620 и т.д.). Необходимо построить случайное направление вектора в пространстве. PS: то что указали Вы, у меня лично постоянно выдает 42. Обращаюсь за помощью тк я не программист. Изменено 4 апреля, 200719 г. пользователем Гость Жалоба
Опубликовано 4 апреля, 200719 г. Автор comment_3795755 Может я совсем запутался в жизни, но у меня rand() выдает 42, а это немного больше чем 1. Смотрю книжку: rand() - случайное целое число от 0 до RAND_MAX (~32000) Самое обидное, что уже встречал это и не сохранил по запарке. Там что-то делить на что-то надо, а потом на что-то умножать. Изменено 4 апреля, 200719 г. пользователем Гость Жалоба
Опубликовано 4 апреля, 200719 г. comment_3795828 Ну так и делите: double rnd = (double)(rand())/RAND_MAX; Жалоба
Опубликовано 4 апреля, 200719 г. Автор comment_3795887 Спасибо, все работает. Правда еще малюсенькая проблемка. srand (time(0)); или srand((unsigned)time(0)); все равно выдается поток чисел очень близких по значению. Как сделать чтобы разброс был разнообразным? Жалоба
Опубликовано 4 апреля, 200719 г. comment_3795891 Рандомите в пределах 100 000 и делите каждый результат на 100 000. Жалоба
Опубликовано 4 апреля, 200719 г. comment_3796191 есть свой резон в том что реально хорошие генераторы псевдослучайных чисел - платные, знаете ли.. а встроенные вот такие - как правило барахло.. Жалоба
Опубликовано 5 апреля, 200719 г. comment_3796224 QUOTE (4you @ Apr 5 2007, 00:22) PS: то что указали Вы, у меня лично постоянно выдает 42. Это же ответ на основной вопрос! О жизни, Вселенной, и вообще...https://academ.club/html/emoticons/smile.gif Жалоба
Опубликовано 5 апреля, 200719 г. comment_3796422 Хочешь хороший генератор псевдослучайных чисел - читай Д. Кнут "Искусство программирования на ЭВМ" том 2. =) Жалоба
Опубликовано 5 апреля, 200719 г. Автор comment_3796547 Полистал книжку. Неужели все так безнадежно и никакими простыми методами нельзя сделать чтобы каждое последующее число было действительно случайным (так чтобы хотя бы глаз не сомневался). Помогите биологу, подскажите способ, должно же быть простое решение. Жалоба
Опубликовано 5 апреля, 200719 г. comment_3796573 Как вариант псевдослучаных чисел double RangedRand( int range_min, int range_max) { return (double)rand() / (RAND_MAX + 1) * (range_max - range_min)+ range_min; } только перед вызовом желательно: srand( (unsigned)time( NULL ) ); QUOTE Полистал книжку. Неужели все так безнадежно и никакими простыми методами нельзя сделать чтобы каждое последующее число было действительно случайным (так чтобы хотя бы глаз не сомневался). Помогите биологу, подскажите способ, должно же быть простое решение. Я как то видел в инете, USB платку для этих целей. Я точно не знаю как в Винде, но в Linux есть файл куда складываются числа полученные в результате случайных действий (как, то интервал нажатия между клавиш, шелконье мышкой и т.д). А уже из него выбирается число, но правда если лимит исчерпан, то работает генератор псевдослучайных чисел. Изменено 5 апреля, 200719 г. пользователем Гость Жалоба
Опубликовано 5 апреля, 200719 г. comment_3797167 QUOTE (SergeiR @ Apr 5 2007, 06:06) есть свой резон в том что реально хорошие генераторы псевдослучайных чисел - платные, знаете ли.. а встроенные вот такие - как правило барахло.. не все так плохо ;) ведь есть Boost Random Number Library Жалоба
Опубликовано 6 апреля, 200719 г. Автор comment_3802226 Обращаюсь с очередным вопросом за помощью к программистам. Программа со всеми вычислениями написана под dos в prog.cpp. Создано диалоговое окно с огромным количеством полей edit для введения параметров и buttons для вывода результатов вычислений, все привязано к своим переменным. Вопрос: как правильно связать переменные в программе prog.cpp с теми что созданы для диалога (Visual C++ 6). Жалоба
Опубликовано 6 апреля, 200719 г. comment_3802625 QUOTE (4you @ Apr 6 2007, 11:22) Обращаюсь с очередным вопросом за помощью к программистам. Программа со всеми вычислениями написана под dos в prog.cpp. Создано диалоговое окно с огромным количеством полей edit для введения параметров и buttons для вывода результатов вычислений, все привязано к своим переменным. Вопрос: как правильно связать переменные в программе prog.cpp с теми что созданы для диалога (Visual C++ 6). Ну так и перекомпиляйте как консольное приложение. А так считай заново проект переписывать. Жалоба