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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
vyachesmine
7 / 7 / 1
Регистрация: 19.02.2013
Сообщений: 22
#1

Не срабатывает повторно генерация случайных чисел - C++

19.02.2013, 23:19. Просмотров 280. Ответов 4
Метки нет (Все метки)

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <iostream.h>
#include <conio.h>
#include <math.h>
#include <time.h>
#include <locale.h>
#include <iomanip.h>
#define n 5
#define SS 1.12
double method()
{
double param [5][5];
    double a[5],b[5],s[5];
    double sum_a_i,lmax,IS,OS;
    int i,j,k;
    k = 0;
    while(OS>=SS)
    {
    srand(time(NULL));
    for (i=0; i<5; i++)
        for (j=i; j<5; j++)
        {
            param[i][j] = rand()%9+1;
            param[j][i] = 1.0/param[i][j];
            if (i==j) param[i][j] = 1;  
        }
        sum_a_i = 0;
        for (i=0; i<5; i++)
        {
            a[i] = 1;
        for (j=0; j<5; j++) a[i] = a[i]*pow(param[i][j],1.0/5);
        sum_a_i = sum_a_i + a[i];
        }
        for (i=0; i<5; i++) s[i] = a[i]/sum_a_i;
        for (j=0; j<5; j++)
        {
            b[j]=0;
            for (i=0; i<5; i++) b[j] = b[j] + param[i][j];
        }
        lmax = 0;
        for (i=0; i<5; i++) lmax = lmax + b[i]*s[i];
        IS = (lmax-n)/(n-1);
        OS = IS/SS;
        }
        if (OS < SS)
        {
        for (i=0; i<5; i++)
        {
            cout << "\n\n\n";
            for (j=0; j<5; j++) cout << "\t" << param[i][j];
        }
        cout << "\nÍîðìèðîâГ*Г*Г*ûé âåêòîð:\n\n\n";
        for (i=0; i<5; i++) cout << "\t" << s[i];
        cout << "\nb[i]\n";
        for (j=0; j<5; j++) cout << "\t" << b[j];
        cout << "\n" << lmax;
        cout << "\nIS\t" << IS << "\tOS\t" << OS;
        }
        return 0;        
}
int main()
{
    setlocale(LC_ALL,".1251");
    method();
    getch();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.02.2013, 23:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не срабатывает повторно генерация случайных чисел (C++):

Генерация случайных чисел - C++
Мне нужно заполнить множество матриц числами 0 или 1. Для этого использую функцию rand. Но мне необходима совсем случайная...

генерация случайных чисел - C++
полазил по форумам, понял что лучшей конструкцией для ввода случайных чисел является: srand(time(NULL)); ... int r =...

Генерация случайных чисел - C++
Как в С сгенирировать последовательность случайных чисел от x до y.Например от 1 до 100.

генерация случайных чисел - C++
Написать программу, которая должна обеспечить исчисление количества повторений заданного числа по модулю 100. Характеристика должна быть...

Генерация случайных чисел - C++
Помогите пожалуйста с этой программой, я ни как не могу понять как ее зделать. Написать программу, которая генерирует три...

Генерация случайных чисел - C++
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;clocale&gt; #include &lt;time.h&gt; #include &lt;stdlib.h&gt; using namespace std; int main ()...

4
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,926
Записей в блоге: 1
19.02.2013, 23:27 #2
в чём выражается несрабатывание?
srand лучше вынести за пределы цикла в начало.
0
vyachesmine
7 / 7 / 1
Регистрация: 19.02.2013
Сообщений: 22
19.02.2013, 23:39  [ТС] #3
В общем, это реализация метода парных сравнений. Задумка в том, что param будет рандомно заполняться до тех пор, пока OS не будет выступать за пределы. Однако генерация проходит один раз и все на этом кончается

Добавлено через 8 минут
Kuzia domovenok, В общем, это реализация метода парных сравнений. Задумка в том, что param будет рандомно заполняться до тех пор, пока OS не будет выступать за пределы. Однако генерация проходит один раз и все на этом кончается
0
Kuzia domovenok
1891 / 1746 / 118
Регистрация: 25.03.2012
Сообщений: 5,926
Записей в блоге: 1
20.02.2013, 00:17 #4
так ты перенёс srand(time(NULL)); и поставил ДО while(OS>=SS)
и ничего не изменилось?
0
vyachesmine
7 / 7 / 1
Регистрация: 19.02.2013
Сообщений: 22
20.02.2013, 00:32  [ТС] #5
Да, пробовал. Бесполезно.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2013, 00:32
Привет! Вот еще темы с ответами:

Генерация случайных чисел - C++
Здравствуйте! Мне нужно сгенерировать случайные числа, много и за секунду или быстрей. Можно ли использовать время компьютера с...

Генерация случайных чисел - C++
Здравствуйте, появилась такая проблема: при генерации случайного числа функцией rand(); мне нужно сгенерировать 5 случайных чисел, но...

Генерация случайных чисел - C++
Для генерации случайных чисел использую выражение: x = rand() % 4; Библиотеку &lt;cstdlib&gt; компилятор подключать не требует (VS12). ...

Генерация случайных чисел С++ - C++
сгенерировать вещественные числа от 0 до 1(например,0,1;0,2;1,0; и т.д.) в этом случае выводит только 0 и 1: #include&lt;stdio.h&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Yandex
Объявления
20.02.2013, 00:32
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru