Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
1 / 1 / 0
Регистрация: 05.10.2013
Сообщений: 115
1

Возведение матрицы в степень

10.04.2014, 21:32. Показов 3712. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
ребятка,помогите разобраться,ыскакует куча ошибок(надо вывести в степень матрицу
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
#include <stdio.h>
/*
viod Func (int **a, int n, int **b){
for (i=0;i<n;i++)
   for (j=0;j<n;j++)
    b[i][j]=a[i][j];}
*/
int sled (int **b, int n){
int i, S=0;
for (i=0;i<n;i++)
   S=S+b[i][i];
return S;}
void umn (int **a, int **b, int **d, int n){
    int Q=0, i, j, x;
    for (i=0;i<n;i++){
    for (j=0;j<n;j++){
    for (x=0;x<n;x++)
    Q=Q+a[i][x]*b[x][j];}
        d[i][j]=Q; Q=0;}}
int main()
{int i, j, t, g, w, k, n, **a, **b, **d;
int Q=0;
int mas[w];
printf ("vvedite razmer matrici");
scanf ("%d", &n);
a=new int*[n];
for (i=0;i<n;i++)
a[i]=new int[n];
printf ("vvedite el-ti matrici");
for (i=0;i<n;i++)
   for (j=0;j<n;j++)
   scanf ("%d", &a[i][j]);
for (i=0;i<n;i++)
{   for (j=0;j<n;j++)
printf ("%d  ", a[i][j]);
printf ("\n");}
    b=new int*[n];
    for (i=0;i<n;i++)
    b[i]=new int[n];
    d=new int*[n];
    for (i=0;i<n;i++)
    d[i]=new int[n];
    printf ("sledi do kakoj stepeni vam poschitat'? kol-vo = ");
    scanf ("%d", &w);
    printf ("\n");
    b=a;
    for (k=0;k<w;k++){
    // Func (a, m, n, b);
    mas[k]=sled (b, n);
    umn (a, b, d, n);
    b=d;}
for (k=0;k<w;k++)
printf ("%d ", mas[k]);
printf ("\n");
return 0;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.04.2014, 21:32
Ответы с готовыми решениями:

Возведение матрицы в степень
Всем привет! У меня не правильно работает возведение матрицы в степень. Не могу понять, почему....

Возведение матрицы в степень
Помогите пож понять проблему #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;iostream&gt; ...

Возведение матрицы в степень
Прошу помочь, пожалуйста! Когда возвожу в 3 степень неправильно считает, я не могу увидеть, где...

Возведение матрицы в степень
Доброго времени суток! Помогите пожалуйста! Задана квадратная матрица А. Вычислить А^n. функции:...

6
60 / 48 / 13
Регистрация: 12.11.2012
Сообщений: 373
Записей в блоге: 2
10.04.2014, 22:11 2
А по точнее?
0
1 / 1 / 0
Регистрация: 05.10.2013
Сообщений: 115
10.04.2014, 22:22  [ТС] 3
.
InitializeBuildStatus:
Создание "Debug\лаб3.unsuccessfulbuild", так как было задано "AlwaysCreate".
ClCompile:
лаб3
c18): error C2057: требуется константное выражение
c:: error C2466: невозможно выделить память для массива постоянного нулевого размера
c: error C2133: mas: неизвестный размер


СБОЙ построения.
0
60 / 48 / 13
Регистрация: 12.11.2012
Сообщений: 373
Записей в блоге: 2
10.04.2014, 22:28 4
Лучший ответ Сообщение было отмечено Len4ik_pik как решение

Решение

вместо
int mas[w];
пишем
C++
1
int*mas=new int[w];
перед
a=new int*[n];
следует поставить проверку на n>0


метод main должен закрываться фигурной скобкой после
return 0;
1
1 / 1 / 0
Регистрация: 05.10.2013
Сообщений: 115
10.04.2014, 22:37  [ТС] 5
а вы можете написать код,я то подставила сделала,ещё больше ошибок(

Добавлено через 4 минуты
бо нужно срочно)((((
0
60 / 48 / 13
Регистрация: 12.11.2012
Сообщений: 373
Записей в блоге: 2
10.04.2014, 22:39 6
Лучший ответ Сообщение было отмечено Len4ik_pik как решение

Решение

Так чуть лучше, но кое-что нужно доделать (я пометил в комментарии, так как не знаю, что Вы там хотите сделать):

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
#include <stdio.h>
/*
viod Func (int **a, int n, int **b){
for (i=0;i<n;i++)
   for (j=0;j<n;j++)
    b[i][j]=a[i][j];}
*/
int sled (int **b, int n)
{
    int i, S=0;
    for (i=0;i<n;i++)
   S=S+b[i][i];
    return S;
}
 
void umn (int **a, int **b, int **d, int n)
{
    int Q=0, i, j, x;
    for (i=0;i<n;i++)
    {
        for (j=0;j<n;j++)
        {
            for (x=0;x<n;x++)
                Q=Q+a[i][x]*b[x][j];
        }
        d[i][j]=Q; Q=0;
    }
}
        
int main()
{
    int i, j, t, g, w, k, n, **a, **b, **d;
    int Q=0;
    
    // Тут откуда-то ещё надо взять значение w
    
    int mas = new int[w];
    do {
        printf ("vvedite razmer matrici");
        scanf ("%d", &n);
    } while (n<=0);
    
    a=new int*[n];
    
    for (i=0;i<n;i++)
        a[i]=new int[n];
    printf ("vvedite el-ti matrici");
    
    for (i=0;i<n;i++)
       for (j=0;j<n;j++)
            scanf ("%d", &a[i][j]);
    
    for (i=0;i<n;i++)
    {
        for (j=0;j<n;j++)
            printf ("%d  ", a[i][j]);
        printf ("\n");
    }
    b=new int*[n];
    for (i=0;i<n;i++)
        b[i]=new int[n];
    d=new int*[n];
    
    for (i=0;i<n;i++)
        d[i]=new int[n];
        
    printf ("sledi do kakoj stepeni vam poschitat'? kol-vo = ");
    scanf ("%d", &w);
    printf ("\n");
    b=a;
    
    for (k=0;k<w;k++)
    {
        // Func (a, m, n, b);
        mas[k]=sled (b, n);
        umn (a, b, d, n);
        b=d;
    }
    for (k=0;k<w;k++)
        printf ("%d ", mas[k]);
    printf ("\n");
    return 0;
}
1
1 / 1 / 0
Регистрация: 05.10.2013
Сообщений: 115
10.04.2014, 22:55  [ТС] 7
вот именно,я первокурсница,код настрочила по примеру а куда и что не пойму((((((
0
10.04.2014, 22:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.04.2014, 22:55
Помогаю со студенческими работами здесь

Возведение матрицы в степень
Можете исправить? using namespace std; void main () { setlocale( LC_ALL,&quot;Russian&quot; ); int...

Возведение матрицы в степень
Ребята помогите пожалуйста.. Вообще разобраться не могу, а препод сама ничерта не знает.. Надо на...

Возведение матрицы в степень
Здравствуйте! Есть программа, которая возводит матрицу в степень, но через потоки. #include...

Возведение матрицы в степень и нахождение следа полученной матрицы
Здравствуйте , задача заключается в том , что мы вводим квадратную матрицу любой мощности , вводим...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru