Нет смысла писать 2 раза X. Достаточно написать всего 1.
Ответ: X&1
Вообщем все просто.
Берешь исходное число 8310.
и делаешь следующее.
8310 / 2 = 4155, остаток 0
4155 / 2 = 2077, остаток 1
2077 / 2 = 1038, остаток 1
1038 / 2 = 519, остаток 0
519 / 2 = 259, остаток 1
259 / 2 = 129, остаток 1
129 / 2 = 64, остаток 1
64 / 2 = 32, остаток 0
32 / 2 = 16, остаток 0
16 / 2 = 8, остаток 0
8 / 2 = 4, остаток 0
4 / 2 = 2, остаток 0
2 / 2 = 1, остаток 0
1 / 2 = 0, остаток 1
И твое число в двоичной система будет снизу вверх из чисел остатка, а то есть 10000001110110
Const
N = 3;
Var
A:array[1..N,1..N] of integer;
i,j:integer;
P:real;
Begin
Randomize;
WriteLn('Исходная матрица A(',N,',',N,'):');
For i:= 1 to N do
Begin
For j:= 1 to N do
Begin
A[i,j]:=random(21)-10;
Write(A[i,j]:3,' ')
End;
WriteLn
End;
P:=1;
For i:= 1 to N do
P:=P*A[i,N-i+1];
WriteLn('Произведение элементов побочной диагонали: ',P);
End.
Примеры работы программы:
Исходная матрица A(3,3):
-6 5 0
-1 -3 -1
-2 -4 -3
Произведение элементов побочной диагонали: 0
Исходная матрица A(3,3):
-7 -6 -10
-3 8 10
4 0 -10
Произведение элементов побочной диагонали: -320
Program task;
var x,i,sum:integer;
begin
readln(x);
sum := 0;
for i := 1 to 4 do
begin
sum := x mod 10 + sum;
x := x div 10;
end;
writeln(sum);
readln;
<span>end. </span>