Сравнить количество полодительных и отрицательных элементов масива относительно столбика с максимальным элементом C++
Не могу разобраться с заданием. Вот моя попытка сделать это соотношение, но я не могу немного понять, правильно ли я вообще понял как делать первое задание, и не могу понять как делать второе задание. Вот задание: 1)Сравнить количество положительных и отрицательных элементов, находящихся в правой и левой прямоугольной части массива, относительно столбика с максимальным элементом. 2)сместить вправо каждую строку массива элементы массива на 5(типа сместить командой rotate? и как это можно применить в моём коде?)
int main() {
const int row = 10;
const int col = 10;
int sq1 = 0, sq2 = 0;
int arr[row][col];
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
arr[i][j] =( -20 + rand() % 100);
}
}
int maxvalue = arr[0][0];
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
if (arr[i][j] > maxvalue) {
maxvalue = arr[i][j];
}
}
}
for (int i = 0; i < row; i++) {
for (int j = 0; j < col; j++) {
cout << arr[i][j] << "\t";
}
cout << endl;
}
int counter = 0;
cout << "maxvalue: " << maxvalue << endl;
for (int i = 0; i < row; i++){
for (int j = 0; j < col; j++) {
if (arr[i][j] == maxvalue) {
counter = j;
cout << endl << j + 1 << endl;
break;
}
}
}
for (int i = 0; i < row; i++) {
for (int j = 0; j < counter; j++) {
if(arr[i][j] > 0){
sq1++;
}
}
}
for (int i = 0; i < row; i++) {
for (int j = counter+1; j < col; j++) {
if(arr[i][j] < 0){
sq2++;
}
}
}
cout << "left part" << " " << sq1 << endl;
cout << "right part" << " " << sq2 << endl;
cout << (sq1 / sq2) << endl;
}