1. Представить числа 752,4(8) и -0,0112(4) в нормализованном виде. 2. Записать прямой, обратный и дополнительный коды чисел -0,0130(4) и -1,205(6). выполняя п. 2, необходимо изначально нормализовать исходные числа
Если число 49 записывается как 121, значит первый остаток от деления равен 1, то есть основанием системы счисления является число, кратное 48.
121 имеет 3 разряда, значит основание однозначно меньше 10 и больше 2. Подходят 3, 4, 6, 8.
Учитывая, что в числе 121 три разряда, значит число 48 делилось всего три раза. Число 8 не подойдет, т.к. 48/8=6, значит будет всего два деления. Число 3 не подойдет, т.к. 48/3 = 16, 16/3=5 - то есть тут будет больше трёх знаков. Число 4 не подойдет, т.к. 48/4=12, а 12 делится на 4 без остатка, но, судя по числу, во втором делении остаток должен быть равен 2. Остаётся число 6. Проверим
Var mas:array[1..1000, 1..1000] of integer; N,M,i,j,k:integer;
Begin Writeln('Введите размер матрицы N*M'); Write('N = '); readln(N); Write('M = '); readln(M);
if (M>1000) or (N>1000) or (M<1) or (N<1) then Writeln('Ошибка, указанные значения выходят за пределы матрицы') else Begin Writeln('Введите элементы матрицы');
k:=0; for i:=1 to N do for j:=1 to M do Begin readln(mas[i,j]); if (mas[i,j] mod 2 = 0) then k:=k+1; end;
Writeln(); Writeln('Исходная матрица');
for i:=1 to N do Begin for j:=1 to M do Begin Write(mas[i,j], ' ') end; Writeln(); end;
Writeln(); Writeln('Количество четных элементов = ',k); end;
121 имеет 3 разряда, значит основание однозначно меньше 10 и больше 2. Подходят 3, 4, 6, 8.
Учитывая, что в числе 121 три разряда, значит число 48 делилось всего три раза.
Число 8 не подойдет, т.к. 48/8=6, значит будет всего два деления.
Число 3 не подойдет, т.к. 48/3 = 16, 16/3=5 - то есть тут будет больше трёх знаков.
Число 4 не подойдет, т.к. 48/4=12, а 12 делится на 4 без остатка, но, судя по числу, во втором делении остаток должен быть равен 2.
Остаётся число 6. Проверим
49/6=8 |1
8/6 = 1 |2
1/6=0 |1
121(6)
uses crt;
Var mas:array[1..1000, 1..1000] of integer;
N,M,i,j,k:integer;
Begin
Writeln('Введите размер матрицы N*M');
Write('N = ');
readln(N);
Write('M = ');
readln(M);
if (M>1000) or (N>1000) or (M<1) or (N<1)
then
Writeln('Ошибка, указанные значения выходят за пределы матрицы') else
Begin
Writeln('Введите элементы матрицы');
k:=0;
for i:=1 to N do
for j:=1 to M do
Begin
readln(mas[i,j]);
if (mas[i,j] mod 2 = 0) then k:=k+1;
end;
Writeln();
Writeln('Исходная матрица');
for i:=1 to N do
Begin
for j:=1 to M do
Begin
Write(mas[i,j], ' ')
end;
Writeln();
end;
Writeln();
Writeln('Количество четных элементов = ',k);
end;
readln;
end.