#include <iostream> // подключаем библиотеку потокового ввода/вывода (cout/cin/...);
#include <ctime> // подключем библиотеку для возможности изменения стандартного генератора чисел (srand(...));
int main()
{
using namespace std; // используем пространство имен std;
setlocale(LC_ALL, "ru"); // возможность использования русского текста в консоли;
srand(time(NULL)); // генератор случайных числе;
const int N = 10; // константный размер массива;
int A[N][N]; // обьявление двумерного массива;
cout << "Исходный двумерный массив: " << endl;
for (int i = 0; i < N; i++) // проходим по двумерному массиву используя 2 цикла;
{
for (int j = 0; j < N; j++)
{
A[i][j] = rand() % 50; // заполняем двумерный массива случайными числами от 0 до 50;
cout << A[i][j] << '\t'; // и сразу выводим его на экран;
}
cout << endl;
}
// ищем минимальное значение в массиве:
int min = A[0][0]; // предположим, что первый элемент массива это минимальный элемент;
for (int i = 0; i < N; i++) // проходим по двумерному массиву используя 2 цикла;
{
for (int j = 0; j < N; j++)
{
// если текущий элемент массива меньше min, тогда присваиваем переменной min это значение. Таким образом мы найдем минимальный элемент;
if (min > A[i][j]) // если в теле условия/цикла ожидается 1 инструкция, то { } можно не ставить;
min = A[i][j];
}
}
// обнуляем все элементы массива, кроме элементов, расположеных на главной диагонали:
for (int i = 0; i < N; i++) // проходим по двумерному массиву используя 2 цикла;
{
for (int j = 0; j < N; j++)
{
// если i будет равен j, то получится что мы идем по глвной диагонали: i=1:j=1, i=2:j=2, i=3:j=3 ...
// поэтому, если i не равен j обнуляем элемент;
if (i != j)
A[i][j] = 0;
}
}
cout << "\nРезультат: " << endl;
for (int i = 0; i < N; i++) // проходим по двумерному массиву используя 2 цикла;
{
for (int j = 0; j < N; j++)
{
cout << A[i][j] << '\t'; // выводим то что получилось в консоль;
}
cout << endl;
}
cout << "\nМинимальный элемент в двумерном массиве = " << min << endl;
return 0;
}
Номер 1
использовать Робот
алг
нач
нц пока сверху свободно
вверх
кц
нц пока сверху стена
закрасить
влево
кц
нц пока сверху не стена
влево
кц
нц пока сверху стена
закрасить
влево
кц
вверх
вправо
нц пока снизу стена
закрасить
вправо
кц
нц пока снизу не стена
вправо
кц
нц пока снизу стена
закрасить
вправо
кц
кон
Номер 2
использовать Робот
алг
нач
нц пока сверху стена
закрасить
влево
кц
вправо
нц пока сверху стена
если справа не свободно то
вправо
все
если справа свободно то
вправо
если сверху стена то
закрасить
все
все
кц
влево
нц пока снизу не стена
вниз
кц
нц пока слева не стена и снизу стена
закрасить
влево
кц
кон
x-20,51 [тут вроде бы и ничего менять не надо]
Exp(sqrt(1/sqr(x)))