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

генерация очень больших случайных чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Использование указателей http://www.cyberforum.ru/cpp-beginners/thread45859.html
Всем привет, вот изучаю помалу С++. И уже третий час немогу впарится в Указатели недаётся мне это, вот вроде более менее разобрался, скажите правильно нет: #include <iostream> int main() { int xxx; unsigned short int myAge = 5; unsigned short int * pAge = NULL; // a pointer pAge=&myAge; std::cout << "pAge " << pAge<<"\n"; //Хранится адрес myAge std::cout << "*pAge...
C++ Наследование, возврат по ссылке.. Есть такое В некоторых компьютерных языках, таких как Visual Basic, есть операции, с помощью которых можно выделить часть строки и присвоить ее другой строке. (В стандартном классе string предложены различные подходы.) Используя наследование, добавьте такую возможность в класс Pstring из упражнения 2. В новом производном классе Pstring2 разместите три новых функции: left(), mid(),... http://www.cyberforum.ru/cpp-beginners/thread45847.html
Посоветуйте IDE для начинающего C++
Доброго времени суток! Я только начинаю работать с С++, посоветуйте, пожалуйста, какие программы лучше использовать, включая все последние версии (то есть не в духе "новичку и это сойдет":)), чтобы я был так сказать, "вооружен до зубов":) Также посоветуйте с какой книги лучше начать. Всем буду благодарен за советы! :)
C++ Чтение длинных целых
Помогите, пожалуйста, правильно организовать ввод длинных целых как строк. При коде #include "stdafx.h" #include <iostream> #define I(x) char*x=new char; //#define L(s,r) for(r=0;s!='\0';++r); int main() { I(x); I(y); I(z); //char a,b,c,*u,d;
C++ Программная среда для программирования на C# http://www.cyberforum.ru/cpp-beginners/thread45807.html
Сегодня решил начать изучать С#, только не пойму, откуда можно скачать программную среду для программирования на C#. Есть на сайте www.microsoft.com, но там неполная версия, а для ознакомления. Скажите, пожалуйста, где можно скачать эту программную среду для C#?
C++ Сортировка двумерного массива по столбцам Всем привет! Начала изучать С++ совсем недавно, и вот столкнулась с трудностями(( задачка-то вроде несложная... но вот три дня бьюсь, не могу найти где тут косяк, прямо отчаялась уже... собстно условие: назовем характеристикой столбца сумму его нечетных отрицательных элементов. переставить столбцы в соответствии с характеристиками. вот что у меня вышло: #include <stdlib.h> #include... подробнее

Показать сообщение отдельно
novi4ok
550 / 503 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
03.08.2009, 15:30     генерация очень больших случайных чисел
STDLIB.H от microsoft определяет:
#define RAND_MAX 0x7fff

значит максимальное число от rand() будет "два неполных байта". те. мы можем взять оттуда 15 бит только, и нам досаточно 4 раза по 15 бит (может и три раза хватит? если охота знать точно или производительность ОЧЕНЬ критична - просчитайте). тогда запишем такую ф-ю:
C++
1
2
3
4
5
6
7
8
9
10
11
__int64 rand64(){
  __int64 r64 = 0;
  r64=rand();
  r64=r64 << 15;
  r64+=rand();
  r64=r64 << 15;
  r64+=rand();
  r64=r64 << 15;
  r64+=rand();
  return r64;
}
и будем использовать ее вместо rand() в коде Monte-Cristo.
можете цикл организовать:

C++
1
2
3
4
5
6
7
8
9
__int64 rand64(){
  __int64 r64 = 0;
  r64=rand();
    for (int i = 0; i < 3; i++){
    r64=r64 << 15;
    r64+=rand();
  }
  return r64;
}
, но намного понятней код это не сделает.
 
Текущее время: 20:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru