<em>// PascalABC.NET 3.2</em>
begin
var a:array[1..9] of integer;
var i:=1;
while i<=7 do begin
a[i]:=i*i+5;
a[i+1]:=Trunc(sqrt(a[i]));
a[i+2]:=a[i] div a[i+1];
i:=i+3
end;
for var j:=1 to 9 do Write(a[j],' ');
Writeln
end.
<u>Результат</u>
6 2 3 21 4 5 54 7 7
В C++:
#include <iostream>
#include <ctime>
#include <iomanip>
int main()
{
using namespace std;
//размерность матрицы
const int N = 5;
int matrix[N][N];
srand(time(0));
int i, j;
//как-нибудь заполняем матрицу
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
matrix[i][j] = rand() % (N * N + 1) - (N * N / 2);
//вывод исходной матрицы на экран
for (i = 0; i < N; i++)
{
for (j = 0; j < N; j++)
cout << setw(4) << matrix[i][j];
cout << endl;
}
//проверка, есть ли вообще числа, чтобы умножать
int p = 0;
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
if (i > j && i > N - j - 1 && matrix[i][j] < 0)
{
p = 1;
break;
}
//подсчёт требуемого произведения
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
if (i > j && i > N - j - 1 && matrix[i][j] < 0)
p = p * matrix[i][j];
//нахождение модуля произведения
if (p < 0)
p = -p;
//вывод этого значения на экран
cout << "Multiplication: " << p << endl;
return 0;
}
156/2=78 (0)
78/2=39 (0)
39/2=19 (1)
19/2=9 (1)
9/2=4 (1)
4/2=2 (0)
2/2=1 (0)
1/2=0 (1)
Остатки от деления записываем в обратном порядке.Получаем: 10011100
156=10011100 (2)
Ответ: 4.
Развёрнутый ответ (решение) на всякий случай :)
11100110=2^7+2^6+2^5+2^2+2^1=128+64+32+4+2=230
значок ^ означает степень(т.е 2^7, это 2 в седьмой степени)
<span> 0,0625 Мб =</span><span>65 536 байт
</span>