21222
Объяснение:
Как обычно, идём с конца.
58 - не квадрат, поэтому последняя операция могла быть только вычитание 2. Значит, до этого было 60.
60 - не квадрат, поэтому следующая операция могла быть только вычитание 2. Значит, до этого было 62.
62 - не квадрат, поэтому следующая операция могла быть только вычитание 2. Значит, до этого было 64.
64 - квадрат. Учитывая, что нам нужно получить 10, если бы тут тоже было вычитание 2, то и на следующем шаге была бы такая же операция, и к пятому шагу у нас было бы 68, а не 10. Поэтому тут было возведение в квадрат, до этого было 8
8 - не квадрат, поэтому следующая операция могла быть только вычитание 2. Значит, до этого было 10 (ура!).
Теперь в обычном порядке:
Меняем все операции "-2" на 2, а "" на 1 и получаем 21222
Python 3:
from random import randint
C = [randint(-100, 100) for _ in range(20)]
print(*C)
print(sum(filter(lambda el: el < 0, C)))
Аналог в PascalABC.NET:
begin
var C := ArrRandomInteger(20, -100, 100);
C.Println;
C.Where(x -> x < 0).Sum.Print;
end.
Паскаль, в "старом" стиле:
var
C: array[1..20] of integer;
i, s: integer;
begin
randomize();
s := 0;
for i := 1 to 20 do
begin
C[i] := random(201) - 100;
write(C[i], ' ');
if C[i] < 0 then
s := s + C[i];
end;
writeln();
write(s)
end.
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
srand(time(0));
int quantity = 0;
const int size = 4;
int arr[size][size] = {};
for (int i = 0; i < size; i++)
{
for (int j = 0; j < size; j++)
{
arr[i][j] = rand() % 31;
cout << arr[i][j] << " ";
}
cout << endl;
}
for (int i = 0; i < size; i++)
{
if (arr[i][i] == 0)
{
quantity++;
}
}
cout << quantity;
}
Объяснение:
Если пишете в codeblocks, то добавьте библиотеку stdlib.h
#include <iostream> // Библиотека ввода - вывода
#include <ctime> // Библиотека для работы со временем
using namespace std; // Пространство имён
int main()
{
srand(time(0)); // Обнуляем время (каждый раз новые числа в массиве)
int quantity = 0; // Создание целочисленной переменной, хранящей количество нулевых элементов, расположенных на главной диагонали
const int size = 4; // Константная целочисленная переменная, хранящая в себе размер квадратной матрицы
int arr[size][size] = {}; // Создание целочисленной квадратной матрицы, заполненной нулями
for (int i = 0; i < size; i++) // Идём по массиву
{
for (int j = 0; j < size; j++) // Идём по массиву
{
arr[i][j] = rand() % 31; // Заполнения массива числами диапазона [0, 30]
cout << arr[i][j] << " "; // Вывод значений
}
cout << endl; // Перевод на следующую строку
}
for (int i = 0; i < size; i++) // Так как нам нужна только главная диагональ, а индексы этих элементов равны, то используем только один цикл
{
if (arr[i][i] == 0) // Если элемент главной диагонали = 0
{
quantity++; // Количество + 1
}
}
cout << quantity; // Вывод ответа
}