Консультация № 119588
21.01.2008, 16:43
0.00 руб.
0 2 2
Уважаемые эксперты помогите пажалуста
Matrix89. Дана квадратная матрица порядка M. Обнулить элементы матрицы, лежащие выше побочной диагонали. Условный оператор не использовать.

Обсуждение

Неизвестный
21.01.2008, 17:54
общий
это ответ
Здравствуйте, Razum89!
#include<iostream>
#include<conio.h>
#include<time.h>
using namespace std;
void main () {
int m,i,j;
srand (unsigned int (time (NULL)));
cout << "Enter M: ";
cin >> m;
int **b = new int *[m];
for (i=0; i<m; i++) {
b[i] = new int [m];
for (j=0; j<m; j++)
b[i][j] = rand() % 10;
}
cout << endl;
for (i=0; i<m; i++){
for (j=0; j<m; j++)
cout << b[i][j] << " ";
cout << endl;
}
for (i=0; i<m-1; i++)
for (j=0; j<m-i-1; j++)
b[i][j] = 0;
cout << endl;
for (i=0; i<m; i++){
for (j=0; j<m; j++)
cout << b[i][j] << " ";
cout << endl;
}
getch();
}
Неизвестный
21.01.2008, 23:01
общий
это ответ
Здравствуйте, Razum89!
если без особых изысков тогда так:

Приложение:
#include<iostream>#include<conio.h>#include<time.h>using namespace std;void main () { const int m=7; int Array[m][m]; srand(time(NULL)); //Заполняем матрицу случайными числами и выводим её на экран for(int i=0; i<m; i++) { for(int j=0; j<m; j++) { Array[i][j]=rand()%30; cout<<Array[i][j]<<"\t"; } cout<<"\n"; } cout<<"\n\n"; //Заполняем нулями элементы находящиесы выше побочной диагонали for(int i=0; i<m-1; i++) { for(int j=0; j<m-1-i; j++) { Array[i][j]=0; } } //Выводим получившейся массив for(int i=0; i<m; i++) { for(int j=0; j<m; j++) { cout<<Array[i][j]<<"\t"; } cout<<"\n"; } getch();}
Форма ответа