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

Генерация случайных чисел типа double во всем диапазоне - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Последовательность Хэмминга http://www.cyberforum.ru/cpp-beginners/thread263858.html
1)Даны натуральные числа a,b (a<=b). Получить все простые числа p, удовлетворяющие неравенству a<=p<=b. 2)Дано натуральное число n. Выяснить, можно ли представить n! в виде произведения 3 последных целых чисел. 3)Последовательность Хэмминга образует натуральные числа, не имеющие других простых делителей, кроме 2,3,5. Найти первый элемент, больший данного числа N, а так же номер этого элемента в...
C++ последовательность Фибоначии #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv) { // определяем когда нужно прекратить перебор, так как последовательность // фибонначи бесконечна int max; http://www.cyberforum.ru/cpp-beginners/thread263852.html
C++ Ввод специального символа.
Всем привет. У меня вопрос про символ -  Decimal 26 HEX 1A Подскажите как мне его записать в файл.
(CИ)Заполнить матрицу ЛП, от центра по спирали: влево - вниз - вправо - вверх. C++
(СИ)Заполнить матрицу ЛП, от центра по спирали: влево - вниз - вправо - вверх.
C++ С Использованием рекурсии! http://www.cyberforum.ru/cpp-beginners/thread263770.html
Привет! Есть задачка (она уже сделанная, ее у меня приняли): Во входном файле задана последовательность положительных вещественных чисел, за которой следует отрицательное число. Описать рекурсивную функцию без параметров, которая находит сумму положительных чисел. #include <iostream> #include <fstream> #include <cstdlib> #include <cstdio> #include <conio>
C++ error C2668 ошибка 1>c:\documents and settings\er\мои документы\visual studio 2008\projects\project13\project13\project13.cpp(11) : error C2668: stack::stack: неоднозначный вызов перегруженной функции 1> c:\documents and settings\er\мои документы\visual studio 2008\projects\project13\project13\incl.h(17): может быть 'stack::stack(int,char)' 1> c:\documents and settings\er\мои... подробнее

Показать сообщение отдельно
kazak
3034 / 2355 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
25.03.2011, 16:29     Генерация случайных чисел типа double во всем диапазоне
Цитата Сообщение от Peek-a-boo Посмотреть сообщение
А int в строчке pa=(int*)&a; тоже менять на long long ?
да, не доглядел просто
Цитата Сообщение от Peek-a-boo Посмотреть сообщение
Смущает то, что у большинства после семнадцатой цифры идут сплошные нули
если память не изменяет, в double может храниться около 16 значащих цифр (под мантиссу отводится 52(один в уме) бита, т.е. максимальное число которое может поместиться в мантиссе будет 2^53, минимальное 2^-53)
Вариант с интом
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
int main(int argc, char* argv[])
{
   double num;
   int *pNum = (int*)&num;
   int i, j;
 
   srand(time(NULL));
 
   *pNum = 0;
   for (i = sizeof(double)/sizeof(int); i > 0; i--)
   {
      for (j = sizeof(int)*8; j > 0; j--)
      {
         *pNum <<= 1;
         *pNum |= rand() % 2;
      }
      pNum++;
   }
   if ((i = sizeof(double)% sizeof(int)) != 0)
   {
      for (i *= 8; i > 0; i--)
      {
         *pNum <<= 1;
         *pNum |= rand() % 2;
      }
   }
   printf("%e\n", num);
   system("pause");
   return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru