4816₁₀ = 1001011010000₂ -в этом числе ровно 8 нулей
2) Переводим из десятичной системы в двоичную:
2548₁₀ = 100111110100₂ -в этом числе ровно 5 нулей
3) Каждая восьмеричная цифра даёт три двоичных. Нам нужно 4 восьмеричных цифры, значит получим 4 группы по три двоичных цифры. Нам нужно наименьшее число, значит в старшем восьмеричном разряде берём наименьшую значащую цифру (1). Получим в двоичном виде в начале числа группу из трёх цифр (001). Из них два незначащих нуля, и только единица будет записана в числе.
В остальных двоичных разрядах будут единицы (кроме трёх, в которых должны быть нули). Эти нули мы ставим в три разряда, идущие за старшим (чтобы как можно больше отнять от числа, ведь нам нужно наименьшее число).
Мы получили наши 4 группы по три двоичных цифры:
001 000 111 111₂
Убираем незначащие нули, и получаем стандартный вид числа:
1000111111₂
Переводим в восьмеричную систему счисления (группами по 3 цифры):
001₂ = 1₈
000₂ = 0₈
111₂ = 7₈
111₂ = 7₈
Составляем из этих цифр восьмеричное число:
1000111111₂ = 1077₈
Это и есть наименьшее четырёхзначное восьмеричное число (и в его двоичной записи ровно три нуля).
1) 8 нулей
2) 5 нулей
3) 1077
Объяснение:
1) Переводим из десятичной системы в двоичную:
4816₁₀ = 1001011010000₂ -в этом числе ровно 8 нулей
2) Переводим из десятичной системы в двоичную:
2548₁₀ = 100111110100₂ -в этом числе ровно 5 нулей
3) Каждая восьмеричная цифра даёт три двоичных. Нам нужно 4 восьмеричных цифры, значит получим 4 группы по три двоичных цифры. Нам нужно наименьшее число, значит в старшем восьмеричном разряде берём наименьшую значащую цифру (1). Получим в двоичном виде в начале числа группу из трёх цифр (001). Из них два незначащих нуля, и только единица будет записана в числе.
В остальных двоичных разрядах будут единицы (кроме трёх, в которых должны быть нули). Эти нули мы ставим в три разряда, идущие за старшим (чтобы как можно больше отнять от числа, ведь нам нужно наименьшее число).
Мы получили наши 4 группы по три двоичных цифры:
001 000 111 111₂
Убираем незначащие нули, и получаем стандартный вид числа:
1000111111₂
Переводим в восьмеричную систему счисления (группами по 3 цифры):
001₂ = 1₈
000₂ = 0₈
111₂ = 7₈
111₂ = 7₈
Составляем из этих цифр восьмеричное число:
1000111111₂ = 1077₈
Это и есть наименьшее четырёхзначное восьмеричное число (и в его двоичной записи ровно три нуля).
1.
program n1;
var
k, s: integer;
a: array [1..8] of integer;
begin
for k := 1 to 8 do readln(a[k]); // с клавиатуры вводится массив из 8
s := 0; элементов
for k := 1 to 8 do
if a[k] < 0 then s := s + a[1]; // в цикле 4 раза к s прибавляют 1-ый элемент
writeln(s); // выводится s
end.
ответ: 4(т.к 1-ый элемент массива 1 и в нём 4 отрицательных элемента)
2.
Надо строку if a[k] < 0 then s := s + a[1];
Заменить на строку if a[k] < 0 then s := s + a[k];
Объяснение: