crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Валидность URL
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
maint Дата 23.1.2011, 8:06
 
Цитата(Dimix @ 23.1.2011, 10:03) *
int pine;
srand(qrand());
pine=rand();
if(pine<999){
   pine+=pine*5739;
}
Вот таким образом тоже работает maint с использованием srand(getpid()); //pine=31;

Не понял мысли, но функция srand используется ТОЛЬКО ОДИН раз в программе. Это инициализация генератора псевдослучайных чисел. Это если все время выдается одно и то же число
Dimix Дата 23.1.2011, 5:03
 
int pine;
srand(qrand());
pine=rand();
if(pine<999){
   pine+=pine*5739;
}
Вот таким образом тоже работает maint с использованием srand(getpid()); //pine=31;
maint Дата 22.1.2011, 7:45
 
Цитата(Dimix @ 21.1.2011, 15:50) *
Цитата
Вот по такому принципу?

Если честно сам непойму что случилось до нового года делал так и все работало
int pine;
pine=rand();
QLineEdit* edit = new QLineEdit;
if(pine<999){
pine+=pine*5846;
}
QString pin;
pin.setNum(pine);

Сейчас реализовал так
qint64 pine;
QLineEdit* edit = new QLineEdit;
if(pine<999){
pine+=pine*5846;
}
QString pin;
pin.setNum(pine);
Может быть реализация и очень даже смехотворная но оно работает без багов.

чудовищная реализация. Все же повторю, ПЕРЕД ИСПОЛЬЗОВАНИЕМ ФУНКЦИИ rand, нужно сделать
srand(time(NULL));

или
srand(getpid());

Лучше это сделать один раз в головной программе. Тогда будет действительно псевдо-случайная последовательность.Тогда rand будет выдавать действительно псевдослучайное число. А мусор может привести к редкостной и длинной последовательности нулей, скажем. Это наиболее частый случай
Dimix Дата 21.1.2011, 10:50
 
Цитата
Вот по такому принципу?

Если честно сам непойму что случилось до нового года делал так и все работало
int pine;
pine=rand();
QLineEdit* edit = new QLineEdit;
if(pine<999){
pine+=pine*5846;
}
QString pin;
pin.setNum(pine);

Сейчас реализовал так
qint64 pine;
QLineEdit* edit = new QLineEdit;
if(pine<999){
pine+=pine*5846;
}
QString pin;
pin.setNum(pine);
Может быть реализация и очень даже смехотворная но оно работает без багов.
Rocky Дата 21.1.2011, 9:42
 
Цитата(Dimix @ 21.1.2011, 8:59) *
описываю переменную типа int x; после присвоения кому либо "x" получаю случайное число.

Это как? Мусор чтоли рэндом? :shok:
int x;

int y = x; // random number???

Вот по такому принципу?
Dimix Дата 21.1.2011, 8:59
 
public:
    QNetworkAccessManager qnam;
    QNetworkReply *reply;
void MainWindow::newVersion()
{
    QUrl url("http://ваша ссылка/version.txt");//version.txt => 2.1
    reply = qnam.get(QNetworkRequest(url));
    connect(reply, SIGNAL(readyRead()),this, SLOT(httpReadyRead()));
}
void MainWindow::httpReadyRead()
{
    QByteArray data = reply->readAll();//все данные из файла записываем в масив
}
Вот таким образом сделал проверку новой версии!
По поводу rand(); убрал его совсем просто описываю переменную типа int x; и после присвоения кому либо "x" получаю случайное число.
Всем спасибо!
Dimix Дата 17.1.2011, 14:56
 
Цитата(Litkevich Yuriy @ 17.1.2011, 10:58) *
а какое это имеет отношение к "Проблемма с rand();"?

И теоритически и физически некакого. Просто после использования этих двух команд число перестало случайно выбиратся.
Litkevich Yuriy Дата 17.1.2011, 10:58
 
Цитата(Dimix @ 17.1.2011, 2:26) *
Убедится, что Qt собрано статически.
Вернуть в динамическую сборку.
Соберет Qt статически, библиотеки будут без номера версии.
а какое это имеет отношение к "Проблемма с rand();"?
Dimix Дата 17.1.2011, 0:26
  Убедится, что Qt собрано статически.
Вернуть в динамическую сборку.
Соберет Qt статически, библиотеки будут без номера версии.
Litkevich Yuriy Дата 16.1.2011, 22:51
  мне не интересно знать где ты это увидел. Ответь на два моих вопроса, неужели это так сложно?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 29.3.2024, 2:59