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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
rkiller
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 18
#1

Заполнить матрицу случайными числами не используя библиотечную функцию rand - C++

15.11.2009, 19:17. Просмотров 1265. Ответов 2
Метки нет (Все метки)

Здравствуйте!!! У меня есть такое задание не могу решать может поможете??

Случайные целые числа в диапазоне от - 32768 до 32678 можно получить с помощью функции

C++
1
2
3
4
5
6
int casual ()
{
 static int randx = 1;
 randx = (randx * 25173 + 13849) % 65536;
 return randx;
}
Используя функцию casual (), заполните случайными числами двухмерный массив (квадратную матрицу) размером N * N, где N определите как целую положительную константу. Получите два массива (вектора): вектор, элементы которого равны средним арифметическим значениям строк матрицы, и вектор, элементы которого равны средним арифметическим значениям столбцов матрицы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2009, 19:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Заполнить матрицу случайными числами не используя библиотечную функцию rand (C++):

Заполнить матрицу случайными числами. Вернуть матрицу на 90o по часовой стрелке - C++
Заполнить матрицу случайными числами. Вернуть матрицу на 90o по часовой стрелке.

Заполнить матрицу случайными числами. Развернуть матрицу на 90(градусов) против часовой стрелки - C++
Заполнить матрицу случайными числами. Развернуть матрицу на 90o против часовой стрелки

Заполнить матрицу 9x9 случайными числами. Отобразить матрицу симметрично относительно главной диагонали - C++
Заполнить матрицу случайными числами. Отобразить матрицу симметрично относительно главной диагонали

Заполнить матрицу случайными числами. Разбить матрицу на квадраты размером 3х3. В центре каждого квадрата поме - C++
Помогите пожалуйста есть некоторые мысли, ну успешного ответа нет :((( #include <iostream> #include <conio.h> #include <ctime> ...

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

Заполнить матрицу случайными числами - C++
Подскажите, пожалуйста, как заполнить матрицу случайными числами от 50 до -50. МАТРИЦА cout << "\nEnter rows size: "; cin...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Monte-Cristo
2788 / 1374 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
15.11.2009, 19:42 #2
Как-то так
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
#include <iostream>
using namespace std;
 
int casual();
 
int main()
{
    const int N = 5;
    int A[N][N];
    double B[N], C[N];
    
    for (int i=0; i<N; i++)
    {
        for (int j=0; j<N; j++)
        {
            A[i][j] = casual();
            cout.width(10);
            cout << A[i][j];
        }
        cout << endl;
    }
    
    for (int i=0; i<N; i++)
    {
        double SumI = 0;
        double SumJ = 0;
        for (int j=0; j<N; j++)
        {
            SumI += A[i][j];
            SumJ += A[j][i];
        }
        B[i] = SumI/N;
        C[i] = SumJ/N;
    }  
    
    cout << "\nB: " << endl;
    for (int i=0; i<N; i++)
        cout << B[i] << endl;
        
    cout << "\nC: " << endl;
    for (int i=0; i<N; i++)
        cout << C[i] << endl;
        
    system("pause");
    return 0;
}
 
int casual()
{
    static int randx = 1;
    randx = (randx * 25173 + 13849) % 65536;
    return randx;
}
rkiller
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 18
15.11.2009, 22:19  [ТС] #3
Огромное спасибо за информацию я тут немного подогнал код чтобы было похоже что на мой уровень
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
#include <iostream>
#include <conio.h>
using namespace std;
 
int casual();                   //прототип функции  casual
 
int main()
{
    setlocale(LC_ALL, "");
    const int N = 5;            //задаем константу N=5
    int A[N][N];                //создаем массив матрицу N*N
    double B[N], C[N];          //массив со среднеарифмитическими значениями строк и столбцов матрицы N*N
    cout << "Случайная матрица значений:\n" << '\n';
    for (int i=0; i<N; i++)     //цикл заполнения матрицы
    {
        for (int j=0; j<N; j++)
        {
            A[i][j] = casual();     //заполнения матрицы с помощью функции casual
            cout << "  " << A[i][j];
        }
        cout << '\n';               //переход на новую строчку
    }
    
    for (int i=0; i<N; i++)         //цикл вычисления среднеарифмитических значений строк и столбцов матрицы N*N
    {
        double SumI = 0;            //переменная с суммой значений строки
        double SumJ = 0;            //переменная с суммой значений столбца
        for (int j=0; j<N; j++)     
        {
            SumI += A[i][j];        //заполнение суммы строки
            SumJ += A[j][i];        //заполнение суммы столбца
        }
        B[i] = SumI/N;              //заполнение массива среднеарифмитического значения строки
        C[i] = SumJ/N;              //заполнение массива среднеарифмитического значения столбца
    }  
    
    cout << "\nСреднеарифмитическое значение строк:\n" << '\n';
    for (int i=0; i<N; i++)         //цикл вывод массива со среднеарифмитическим значением строк
        cout << B[i] << '\n';
        
    cout << "\nСреднеарифмитическое значение столбцов:\n" << '\n';
    for (int i=0; i<N; i++)         //цикл вывод массива со среднеарифмитическим значением столбцов
        cout << C[i] << '\n';
        
    getch ();
    return 0;
}
 
int casual()                        //определение функции casual
{
    static int randx = 1;
    randx = (randx * 25173 + 13849) % 65536;
    return randx;
}
Еще раз спасибо всем
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2009, 22:19
Привет! Вот еще темы с ответами:

Заполнить матрицу случайными числами - C++
отобразить матрицу симметрично относительно главной диагонали

Заполнить матрицу случайными числами - C++
Заполнить матрицу случайными числами. Развернуть матрицу на 90o против часовой стрелки.

Заполнить матрицу случайными числами. На побочной - C++
Заполнить матрицу случайными числами. На побочной диагонали разместить суммы элементов которые лежат на той той же строке и столбце.

Как заполнить матрицу случайными числами? - C++
Здравствуйте! как можно заполнить матрицу 4*4 числами от 0..15 случайно?


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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