Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.11.2020, 13:54   #1
spas1bo
Новичок
Джуниор
 
Регистрация: 18.11.2020
Сообщений: 1
По умолчанию Определение характеристики степенной матрицы на С++

Здравствуйте. Помогите решить задачу, пожалуйста.
Условия задачи прикрепляю ниже.
За элементы матрицы брать произвольные вещественные числа; n=4, m=8, c=8; функционал F(A) на матрице: F(A)= max ф[i], где ф[i]- количество положительных чисел в i-той строке( пункт г) на второй картинке)

Ниже пытался написать код для вычисления степени матрицы, правилен ли он?

11.jpg
12.jpg
Код:
#include <iostream>
using namespace std;
 
void f(int** x, int n, int** y, int** z)
{
    for (int i = 0; i < n; i++)
        for (int j = 0; j < n; j++)
        {
            z[i][j] = 0;
            for (int k = 0; k < n; k++)
                z[i][j] += x[i][k] * y[k][j];
        }
}
 
int main()
{
    setlocale(LC_ALL, "ru");
    int n = 4;
    int i, j, k;
    int** a = new int* [n];
    for (i = 0; i < n; i++)
    {
        a[i] = new int[n];
    }
    cout << "Введите матрицу:" << endl;
    for (i = 0; i < n; i++)
        for (j = 0; j < n; j++)
            cin >> a[i][j];
    int** b = new int* [n];
    for (i = 0; i < n; i++)
    {
        b[i] = new int[n];
    }
    for (i = 0; i < n; i++)
        for (j = 0; j < n; j++)
            b[i][j] = a[i][j];
    int** c = new int* [n];
    for (i = 0; i < n; i++)
    {
        c[i] = new int[n];
    }
    int l = 2;
    cout << "Введите степень :" << endl;
    int m;
    cin >> m;
    while (m > 1)
    {
        f(a, n, b, c);
        for (i = 0; i < n; i++)
            for (j = 0; j < n; j++)
                b[i][j] = c[i][j];
        --m;
    }
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < n; j++)
            cout << c[i][j] << " ";
        cout << endl;
    }
 
 
    system("pause");
    return 0;
}

Последний раз редактировалось spas1bo; 18.11.2020 в 13:59.
spas1bo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определение слабой рефлексивности и треугольности матрицы - Delphi Saccn Помощь студентам 0 29.11.2016 21:04
определение адреса трехмерной матрицы mego4el Помощь студентам 6 15.11.2010 21:53
Определение собственных значений для матрицы 2-го порядка Игорь777 Помощь студентам 0 26.04.2009 18:33
Определение симметричной матрицы dancergirl Помощь студентам 2 25.03.2009 02:14
Pascal. Степенной ряд.. Тончость - e??? neon2k Помощь студентам 1 07.03.2009 01:41