![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 23.06.2011
Сообщений: 6
|
![]()
Почему у генератора вещественных чисел диапазон от -99,99 до 99,99?
rand()%100*(rand()%2==1?-1:1) Очень надо, помогите пожалуйста Последний раз редактировалось Студент_ка; 23.06.2011 в 09:14. |
![]() |
![]() |
![]() |
#2 |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
![]()
Потому что формула такая. У функции rand() диапазон от нуля до RAND_MAX.
Ищете информацию по C++?
cplusplus.com |
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 23.06.2011
Сообщений: 6
|
![]()
а напишите пожалуйста что означает в этой формуле каждая переменная и каждый знак
(rand()%2==1?-1:1) |
![]() |
![]() |
![]() |
#4 |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
![]()
rand() - функция, возвращающая псевдослучайное число в диапазоне от нуля до RAND_MAX;
% - операция нахождения остатка от целочисленного деления. x%2 означает остаток деления x на 2 (может быть равен либо 1, либо 0); ?: - условная операция. Запись z?x:y означает, что если z - истина, то результат операции - x, в противном случае результат операции - y; Таким образом указанная вами формула означает, что вычисляется остаток от деления на два у случайного числа, и если этот остаток равен единице, то результатом будет -1, в противном случае результатом будет 1. Того же результата можно добиться более простой формулой: (rand()%2?1:-1) Ищете информацию по C++?
cplusplus.com |
![]() |
![]() |
![]() |
#5 |
Новичок
Джуниор
Регистрация: 23.06.2011
Сообщений: 6
|
![]()
Спасибо большое!!!
|
![]() |
![]() |
![]() |
#6 |
Новичок
Джуниор
Регистрация: 23.06.2011
Сообщений: 6
|
![]()
А что значит (rаnd()%100)/100?
|
![]() |
![]() |
![]() |
#7 |
C++,DirectX/OpenGL
Форумчанин
Регистрация: 09.01.2011
Сообщений: 422
|
![]() |
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]() Цитата:
50 / 100 у Вас получается ноль? Проверьте на калькуляторе, Вы будете удивлены, помимо целых чисел бывают ещё и дробные (вещественные) числа! ![]() А вот кто мне объяснит, где в заданном в первом посте примере задаются пределы (ну тот самый вышеупомянутый RAND_MAX) ? |
|
![]() |
![]() |
![]() |
#9 |
Новичок
Джуниор
Регистрация: 23.06.2011
Сообщений: 6
|
![]() |
![]() |
![]() |
![]() |
#10 | |
C++,DirectX/OpenGL
Форумчанин
Регистрация: 09.01.2011
Сообщений: 422
|
![]() Цитата:
![]() Правильный ответ всегда 0 ! rand() возвращает целые числа и здесь операции над целыми числами. |
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
диапазон чисел | Che Guevara | Microsoft Office Excel | 2 | 07.01.2011 15:32 |
Определение параметров генератора случайных чисел (ЛКГ) | ak87 | Общие вопросы Delphi | 3 | 07.02.2010 14:50 |
С++ Создать класс содержащий 3х-мерный массив int'ов, заполнять с помощью генератора случайных чисел | vipER | Помощь студентам | 1 | 22.09.2007 22:08 |
Как указать диапазон чисел? | Inbox | Общие вопросы Delphi | 2 | 29.06.2007 01:21 |