Ввести двумерный массив A_N+M . Все элементы, которые кратны 4 и стоят на позициях, у которых как минимум один из индексов чётный, разделить нацело на 4. Массив вывести до и после преобразования. С++

vaxyl vaxyl    2   23.06.2020 21:26    0

Ответы
ssmir7381 ssmir7381  15.10.2020 14:46

#include <iostream>

#include <vector>

using namespace std;

void input(vector<vector<int>> &vec){

   for(int i = 0; i < vec.size(); i++)

       for(int j = 0; j < vec[i].size(); j++)

           cin >> vec[i][j];

}

void print(vector<vector<int>> &vec){

   for(int i = 0; i < vec.size(); i++){

       for(int j = 0; j < vec[i].size(); j++)

           cout << vec[i][j] << " ";

       cout << "\n";

   }

}

void modify(vector<vector<int>> &vec){

   for(int i = 0; i < vec.size(); i++)

       for(int j = 0; j < vec[i].size(); j++)

           if(vec[i][j] % 4 == 0 && (i*j) % 2 == 0)

               vec[i][j] /= 4;

}

signed main() {

   int n,m;

   cin >> n >> m;

   vector<vector<int>> a(n,vector<int>(m));

   input(a);

   cout << "BEFORE:\n";

   print(a);

   modify(a);

   cout << "AFTER:\n";

   print(a);

}

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика