Matrix13. Дана квадратная матрица A порядка M. Начиная с элемента A1,1, вывести ее элементы следующим образом («уголками»): все элементы первой строки; элементы последнего столбца, кроме первого (уже выведенного) элемента; оставшиеся элементы второй строки; оставшиеся элементы предпоследнего столбца и т. д.; последним выводится элемент AM,1.
>Решение Pascal
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 | program Matrix13; var a:array [1..10,1..10] of integer; M, i, j, i2:Integer; begin Write('M: '); Readln(M); for i:=1 to M do begin writeln(i,': '); for j:=1 to M do begin Write(j,' : '); Read(a[i,j]); end; end; for i2:=1 to M do begin for i:=1 to M-i2+1 do write (' ',a[i2,i]); for j:=i2+1 to M do write (' ',a[j,M-i2+1]); writeln(''); end; end. |
#include
using namespace std;
int main() {
int arr[100][100];
int m,b=1,h=1,g,o=0;
cin >> m;
g = m;
for (int i = 1; i <= m; i++)
{
for (int j = 1; j > arr[i][j];
}
}
while (true) {
if (b == 1) {
for (int i = 1; i <=g; i++)
{
cout << arr[h][i] << " ";
}
cout << endl;
h++;
b++;
o++;
}
else if (b == 2) {
if (o == m*m — 1) {
break;
}
else {
for (int i = h; i <= m; i++)
{
cout << arr[i][g] << endl;
}
b—;
g—;
o++;
}
}
}
system("pause");
return 0;
}
#include
using namespace std;
int main()
{
int m,i,j,a[100][100];
cin>>m;
for(i=0;i<m;i++){
for(j=0;j>a[i][j];
}
}
for(i=0;i<m;i++){
for(j=0;j<m;j++){
if(i+j<m)cout<<a[i][j]<<" ";
}
cout<<endl;
}
}
C#???
C++
#include
#include
#include
using namespace std;
int main()
{
setlocale(LC_ALL, «»);
int matrix[10][10], M{};
cout << "M" <> M;
srand(time(0));
for (int i = 0; i < M; i++) {
for (int j = 0; j < M; j++) {
matrix[i][j] = rand() % 101;
cout << matrix[i][j] << "\t";
}
cout << "\n";
}
for (int i = 0; i < M; i++){
for (int j = 0; j < M-i-1; j++) {
cout << matrix[j][i] << "\t";
}
for (int j = i; j < M; j++) {
cout << matrix[M-i-1][j] << "\t";
}
}
}