Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
C9 самост.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
125.95 Кб
Скачать

Void main()

{

int k, i, j, N, a[20][20];

cout<<”N= “;

cin>>N;

cout<<”M= “;

cin>>M;

cout<<”Input Matrix A”<<endl;

for(i=0; i<N; i++)

for(j=0; j<N; j++)

cin>>a[i][j];

for(i=k=0; i<N; i++)

{

//елемент розташований на головній діагоналі

if (a[i][j]>0) k++;

//елемент розташований на побічній діагоналі

if (a[i][N-i-1]>0) k++;

}

for(i=1; i<N-1; i++)

{

//елемент знаходиться в нульовому рядку

if (a[0][i]>0) k++;

//елемент знаходиться в останньому рядку

if (a[N-1][i]>0) k++;

//елемент знаходиться в нульовому стовпці

if (a[i][0]>0) k++;

//елемент знаходиться в останньому стовпці

if (a[i][N-1]>0) k++;

}

//якщо елемент,розташований на перетині діагоналей, підраховано двічі,

//то зменшити обчислене значення на один.

if ((N%2!=0)&&(a[N/2][N/2]>0))k--;

cout<<”k=”<<k<<endl;

}

Приклад.

Перевірити, чи є задана квадратна матриця одиничною. Одиничною називають матрицю, у якої елементи головної діагоналі – одиниці, а решта елементів – нулі.

# include<iostream.h>

Void main()

{

int pr, i, j, N, a[20][20];

cout<<”N= “;

cin>>N;

cout<<”M= “;

cin>>M;

cout<<”Input Matrix A”<<endl;

for(i=0; i<N; i++)

for(j=0; j<N; j++)

cin>>a[i][j];

//Припустимо, що матриця одинична, і привласнимо змінній pr значення 1

//(істина). Якщо значення цієї змінноїпри виході з циклу не

//зміниться, це буде означати, що матриця дійсно одинична.

for(pr=1, i=0; i<N; i++)

for(j=0; j<N; j++)

if (((i==j)&& (a[i][j]!=1)) || ((i!=j)&&(a[i][j]!=0)))

//якщо елемент розташований на головній діагоналі і не дорівнює //одиниці чи елемент розташований не на головній діагоналі і не //дорівнює нулю, то

{

//змінній pr привласнити значення 0 (помилково), це буде означати,що

//матриця не є одиничною, та вийти з циклу

pr=0;

break;

}

//Перевірка значення змінної pr та вивід відповідного повідомлення.

if (pr) cout<<”Single Matrix \n”;

else cout<<”No Single Matrix \n”;

}

Завдання для самостійного вирішення:

Дана квадратная матрица порядка n (n рядків, n стовпців). Знайти найбільше значення з елементів, розташованих у замальованих частинах матриць.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]