-  Задача 1. Дана квадратная матрица порядка n (n строк, n столбцов). Найти наибольшее из значений элементов, расположенных в тёмно-синих частях матриц. Все массивы в данном задании заполняются случайным образом.  
 
-  Решение: Логика: если i - индекс строки, а j - индекс столбца то массива 
-  а. выбираем элементы у которых i⇐j 
-  б. выбираем элементы у которых i>=j 
-  в. если i⇐(высота/2) то если j⇐(ширина/2) то выбираем элементы у которых i⇐j если j>(ширина/2) то выбираем элементы у которых i⇐(ширина - j) 
/* 
 * File:   main.cpp
 * Author: darkfire
 *
 * Created on 5 Июль 2010 г., 9:58
 */
#include <stdlib.h>
#include <iostream>
/*
Решение для картинки а
 */
using std::endl;
using std::cout;
int main() {
    int max,i,j;
    const int row=5;
    const int col=5;
    int mr[row][col];
    for(int i=0; i<row; i++) // перебираем отдельные элементы каждой строки
	for(int j=0; j<col;j++) mr[i][j]=rand()%200; // инициализация элементов значениями в диапазоне от 0 до 5
//вывод матрицы на экран
 for(i=0; i<row; i++)
 {
     for(j=0; j<col;j++) cout<<mr[i][j]<<"\t";
     cout<<"\n";
 }
 //находим элемент принадлежащий закрашенной области, 
 //для инициализации переменной мах
for(i=0; i<row; i++)
    for(j=0; j<col;j++)
        if (i<j){
            max=mr[i][j];
            break;
        };
//Найти наибольшее из значений элементов, расположенных в тёмно-синих частях матриц.
 for(i=0; i<row; i++)
    for(j=0; j<col;j++)
        if (i<j&&max<mr[i][j]){
            max=mr[i][j];
            
        };
cout<<"\n";
cout<<"MAX = "<<max<<"\n";
    return (EXIT_SUCCESS);
}