Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 24.09.2019
Сообщений: 134
1

Вывод матрицы

15.03.2020, 20:03. Просмотров 204. Ответов 3
Метки нет (Все метки)

в файле матрица 3*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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <conio.h>
#include <fstream>
 
using namespace std;
float **readf(FILE*, int &n);
void output(int, float**);
float **E(int);
void deviding(int, int, int, float**, float**);
void multiply(int, float**, float**, float**);
void invM(int, int, float**, float**, float**);
void reset(int, float**, float**, float **, float **);
void printpolynom(int, float*);
int main()
{
    FILE *f;
    int n = 0;
    f = fopen("hello.txt", "r");
    if (f != NULL)
    {
        float **A = readf(f, n);
        fclose(f);
        float **M = E(n);
        float **e = E(n);
        float **C = new float*[n];
        float **Mo = new float*[n];
        float **D = new float*[n];
        float *P = new float[n];
        for (int i = 0; i < n; i++)
        {
            C[i] = new float[n];
            Mo[i] = new float[n];
            D[i] = new float[n];
        }
        output(n, A);
        printf(" Creating a Frobenius form (P = M^(-1) * A * M):\n\n");
        int iterations = 1;
        for (int i = n - 1, j = n - 2; i >= 0, j >= 0; i--, j--)
        {
            printf("\n %i Iteration,   key elem : %5.3f\n", iterations, A[i][j]);
            deviding(n, i, j, M, A);
            printf("\n M:");
            output(n, M);
            multiply(n, C, A, M);
            printf("\n C = A * M\n");
            output(n, C);
            invM(n, i, Mo, A, e);
            printf("\n M^(-1):\n");
            output(n, Mo);
            multiply(n, D, Mo, C);
            printf("\n D = M^(-1) * A * M:\n");
            output(n, D);
            reset(n, A, D, M, e);
            iterations++;
        }
        printf("\n Matrix P in Frobenius form: \n");
        output(n, D);
        for (int i = 0; i < n; i++) 
            P[i] = D[0][i];
        printf("\n Charachteristic Polynom: \n");
        printpolynom(n, P);
    }
    else printf("The file is not found");
    _getch();
    return 0;
}
float **readf(FILE *f, int &n)
{
    fscanf(f, "%i", &n);
    float **A = new float*[n];
    for (int i = 0; i < n; i++) 
        A[i] = new float[n];
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++) 
            fscanf(f, "%f", &A[i][j]);
    }
    return A;
}
void output(int n, float **A)
{
    printf("\n");
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++) 
        {
            printf("%10.3f", A[i][j]);
        }
        printf("\n");
    }
    printf("\n");
}
0
Миниатюры
Вывод матрицы  
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.03.2020, 20:03
Ответы с готовыми решениями:

Реализовать задание с использованием функций (ввод матрицы, вывод матрицы, вычисление суммы)
Реализовать задание с использованием функций (ввод матрицы, вывод матрицы, вычисление суммы) и...

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

Даны матрицы А(4,3) и В(3,5). Для каждой матрицы вычислить сумму элементов над главной диагональю. Ввод,вывод,сумму в виде отдельных процедур
Завтра дедлайн, а у меня 2 лабы и начало первого. Прошу помощи.

вывод матрицы
почему выводит вместо одной матрицы пять штук? #include&lt;stdio.h&gt; #include&lt;stdlib.h&gt;...

3
1425 / 703 / 291
Регистрация: 11.10.2018
Сообщений: 3,633
15.03.2020, 20:12 2
А как они в файле записаны?
0
0 / 0 / 0
Регистрация: 24.09.2019
Сообщений: 134
15.03.2020, 21:02  [ТС] 3
7.03 6.0 5.0
0.92 5.6 7.3
1.15 3.2 3.5
0
1425 / 703 / 291
Регистрация: 11.10.2018
Сообщений: 3,633
16.03.2020, 16:40 4
Косяк в том, что в файле они должны быть так записаны
Кликните здесь для просмотра всего текста

3
7.03 6.0 5.0
0.92 5.6 7.3
1.15 3.2 3.5
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.03.2020, 16:40

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Вывод матрицы
Подскажите что и где прописать чтобы мне вывело новую матрицу где есть одинаковые строки ...

Вывод матрицы
Подскажите, пожалуйста, как сделать вывод,чтобы цифры располагались друг под другом, а не так: 1...

Вывод матрицы
Как реализовать вывод матриц в виде 1 1 1 1 1 1 1 1 1 , а не 111111111? #include...

Вывод матрицы
как сделать переход на новую строку, чтоб матрица выводилась в виде: 1 2 3 4 5 6 int**...


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

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

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