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

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

Войти
Регистрация
Восстановить пароль
 
Алексей5
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 5
#1

Сформировать вектор из диагональных элементов матрицы - C++

15.03.2009, 18:18. Просмотров 590. Ответов 2
Метки нет (Все метки)

"Для заданной матрицы(N на M) сформировать вектор из её диагональных элементов. Добавить элементы вектора к элементам K-ой строки."

Размер матрицы вводится пользователем с клавиатуры, то есть m и n не константы. Вот что у меня получилось:
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
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
void main ()
{clrscr;
randomize ();
int i,j, m,n,d;
float **matr,**mas;
matr=new float *[n];
matr=new float *[m];
cout << "\n Vvedite chislo strok n="; cin>>n;
cout << "\n Vvedite chislo stolbcov m="; cin>>m;
for (i=0;i<n;i++)
for (j=0; j<m; j++)
matr[i][j]=random (100);
for (i=0;i<n;i++)
{
for (j=0; j<m; j++)
cout<<matr[i][j]<<"\t";
cout<<"\n";
}
 delete matr[i];
delete matr[j] ;
delete [] matr;
}
Осталась вторая часть программы. Подскажите как это организовать.
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.03.2009, 18:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сформировать вектор из диагональных элементов матрицы (C++):

Сформировать одномерный массив из диагональных элементов матрицы. Найти след матрицы - C++
Для заданной квадратной матрицы сформировать одномерный массив из ее диагональных элементов. Найти след матрицы, суммируя элементы...

Для заданной квадратной матрицы сформировать одномерный массив из ее диагональных элементов - C++
Для заданной квадратной матрицы сформировать одномерный массив из ее диагональных элементов.с++

Для заданной квадратной матрицы сформировать одномерный массив из ее диагональных элементов - C++
Для заданной квадратной матрицы сформировать одномерный массив из ее диагональных элементов. Найти след матрицы, суммируя элементы...

Даны три квадратные матрицы. Сформировать вектор, состоящий из минимальных элементов каждой матрицы, отличных от нуля - C++
Даны три квадратные матрицы. Сформировать вектор, состоящий из минимальных элементов каждой матрицы, отличных от нуля. Поиск минимального...

Из элементов матрицы сформировать вектор средних арифметических парных элементов - C++
Это что вообще сделать надо. Не надо писать код, просто объясните суть..

Сформировать вектор из четных элементов матрицы - C++
1. 2.Сформировать Вектор Т из четных элементов матрицы P(k,l). Найти в нем максимальный элемент. 3.с оператором цикла while

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
ISergey
Maniac
Эксперт С++
1374 / 885 / 52
Регистрация: 02.01.2009
Сообщений: 2,658
Записей в блоге: 1
15.03.2009, 19:00 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
это не правильно
C++
1
2
3
4
int i,j, m,n,d;
float **matr,**mas;
matr=new float *[n];//чему равно n?
matr=new float *[m];//чему равно m?
вот код для примера
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
#include <iostream>
 
using namespace std;
 
int **arrCreate(const int row,const int col)
{
    if((row > 0))
    {
        int **arr = new int*[row];
        for(int i = 0; i < row; ++i)
        {
            arr[i] = new int[col];
        }
        return arr;
    }
    else
        return 0;
}
void arrFree(int **arr /*const int lenrow*/)
{
    if(arr != 0)
    {
        int lenrow = static_cast<int>(_msize(arr)/sizeof(int));
        for(int i = 0; i < lenrow; ++i)
            delete[] arr[i];
        delete[] arr;
    }
}
void arrInput(int **arr,const int row, const int col)
{
    if(arr != 0)
    {
        for(int i = 0; i < row; ++i)
        {
            for(int j = 0; j < col; ++j)
            {
                cout<<"arr["<<i<<"]"<<"["<<j<<"] = ";
                cin>>arr[i][j];
            }
 
        }
    }
}
void arrOut(int **arr, const int row, const int col)
{
    if(arr != 0)
    {
        for(int i = 0; i < row; ++i)
        {
            cout<<"[ ";
            for(int j = 0; j < col; ++j)
                cout<<arr[i][j]<<" ";
            cout<<"]"<<endl;
        }
    }
}
 
int main()
{
    int row;
    int col;
    cin>>row;
    cin>>col;
    int **arr = arrCreate(row,col);
 
    arrInput(arr,row,col);
 
    arrOut(arr,row,col);
 
    arrFree(arr);
    return 0;
}
0
Алексей5
0 / 0 / 0
Регистрация: 15.03.2009
Сообщений: 5
15.03.2009, 20:32  [ТС] #3
Так с этим мы разобрались а как со второй частью задачи быть? Подскажите

Добавлено через 4 минуты 5 секунд
А можно вот так?(ввод матрицы)
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
#include <iostream.h>
void main()
{
int n, m, k;
cout<<"\n Vvedute koluchestvo strok: ";
cin>>n;
cout<<"\n Vvedute koluchestvo stolbLLov: ";
cin>>m;
cout<<"\n Znachenue NULL stolbLLov ne zapalnuaet";
cout<<"\n wedute nomer stolbra:";
//cout<<"\n Znachenue NULL stolbLLov ne zapalnuaet";
cin>>k;
k--;
float**matr;
matr=new float*[n];
if (matr==NULL)
{
cout<<"He cozdan dunamucheskuu massuv!";
return;
}
for (int i=0;i<n;i++)
{
matr[i]=new float[n];
if (matr[i]==NULL)
{
cout<<"HE sozdan dunamucheskuu massuv!";
return;
}
for (int j=0;j<m;j++)
if (i!=j&&j!=k) matr[i][j]=0;
 
else
matr[i][j]=1;
}
for (i=0;i<n;i++)
{
cout<<"\n Stroka"<<(i+1)<<":";
for (int j=0;j<m;j++)
cout<<"\t"<<matr[i][j];
}
for (i=0;i<n;i++)
delete matr[i];
delete[]matr;
}
Добавлено через 30 минут 5 секунд
сформировать вектор из её диагональных элементов. Добавить элементы вектора к элементам K-ой строки. Как это сделать?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.03.2009, 20:32
Привет! Вот еще темы с ответами:

Сформировать вектор из элементов диагонали матрицы - C++
Помогите, пожалуйста, Определить произведение элементов матрицы A(MxN), лежащих на главной диагонали и сформировать из них вектор С. ...

Сформировать вектор d из крупнейших отрицательных элементов соответствующих столбцов матрицы - C++
Сформировать вектор d из крупнейших отрицательных элементов соответствующих столбцов матрицы s .

Сложить модули элементов строк матрицы и сформировать из них вектор V - C++
Помогите, пожалуйста: дана матрица А размера n на n. Нужно сформировать вектор V, элементами которого являются суммы модулей элементов...

Сформировать вектор из наименьших значений элементов строк данной матрицы - C++
Сформировать вектор из наименьших значений элементов строк данной матрицы и найти их среднее арифметическое


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

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

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