Ответы
Відповідь:
Ось код на C++, який виконує ці завдання:
```cpp
#include <iostream>
#include <algorithm>
#define N 15
#define M 15
using namespace std;
int main() {
int n, m, k;
int A[N][M];
// Введення розмірності матриці та номера стовпця
cout << "Введіть кількість рядків: ";
cin >> n;
cout << "Введіть кількість стовпців: ";
cin >> m;
cout << "Введіть номер стовпця для впорядкування: ";
cin >> k;
k--; // Зменшуємо на 1, оскільки індексація починається з 0
// Введення елементів матриці
for(int i = 0; i < n; i++)
for(int j = 0; j < m; j++)
cin >> A[i][j];
// Впорядкування стовпця за спаданням
for(int i = 0; i < n; i++)
for(int j = i+1; j < n; j++)
if(A[i][k] < A[j][k])
swap(A[i][k], A[j][k]);
// Заміна елементів на "0"
for(int i = 0; i < n; i++)
if(A[i][0] % 3 == 0)
for(int j = 1; j < m; j++)
if(j != k)
A[i][j] = 0;
// Виведення модифікованої матриці
for(int i = 0; i < n; i++) {
for(int j = 0; j < m; j++)
cout << A[i][j] << " ";
cout << endl;
}
return 0;
}
```
Цей код спочатку вводить розмірність матриці та номер стовпця для впорядкування. Потім вводяться елементи матриці. Потім виконується впорядкування стовпця за спаданням. Нарешті, у рядках, що починаються з елемента, кратного 3, замінюються на «0» всі елементи, окрім першого елемента в цьому рядку і елемента, який належить впорядкованому стовпчику. Модифікована матриця потім виводиться на екран. Зверніть увагу, що цей код не має обробки помилок і припускає, що вхідні дані завжди коректні.
Пояснення: