Воспользуемся расширенной записью шестнадцатиричного числа в десятичной системе счисления. Тогда 3(a*16²+b*16+c)=b*16²+c*16+a; 767a=208b+13c; 59a=16b+c → a=(16b+c)/59 (1) Здесь a,b,c - шестнадцатиричные цифры, имеющие десятичный эквивалент от 0 до 15. Наложим ограничения. a и b не могут быть нулевыми, поскольку с них начинаются числа, а с может быть и нулем. При b=15 и c=15 значение a по формуле (1) не может быть больше (16*15+15)/59, что в целых числах дает 4. Следовательно, нам надо подобрать такие b и c, чтобы a принимало значения от 1 до 4. Будем подставлять эти значения в (1). 1) При а=1 получаем (16b+c)/59=1 → 16b+c=59. b=59/16=3 (нацело), c=59-16*3=11. Искомое число 13B₁₆ 2) При а=2 получаем (16b+c)/59=2 → 16b+c=118. b=118/16=7 (нацело), с=118-16*7=6. Искомое число 276₁₆
Аналогичным образом находим два остальных числа: 3B1₁₆ и 4EC₁₆
Замечание. Фактически, мы получаем числа 59х1, 59х2, 59х3, 59х4 и переводим их в шестнадцатиричную систему счисления, поскольку в формуле (1) в скобках записано представление расширенное представление шестнадцатиричного числа.
3(a*16²+b*16+c)=b*16²+c*16+a;
767a=208b+13c; 59a=16b+c → a=(16b+c)/59 (1)
Здесь a,b,c - шестнадцатиричные цифры, имеющие десятичный эквивалент от 0 до 15.
Наложим ограничения. a и b не могут быть нулевыми, поскольку с них начинаются числа, а с может быть и нулем. При b=15 и c=15 значение a по формуле (1) не может быть больше (16*15+15)/59, что в целых числах дает 4.
Следовательно, нам надо подобрать такие b и c, чтобы a принимало значения от 1 до 4. Будем подставлять эти значения в (1).
1) При а=1 получаем (16b+c)/59=1 → 16b+c=59.
b=59/16=3 (нацело), c=59-16*3=11. Искомое число 13B₁₆
2) При а=2 получаем (16b+c)/59=2 → 16b+c=118.
b=118/16=7 (нацело), с=118-16*7=6. Искомое число 276₁₆
Аналогичным образом находим два остальных числа: 3B1₁₆ и 4EC₁₆
Замечание. Фактически, мы получаем числа 59х1, 59х2, 59х3, 59х4 и переводим их в шестнадцатиричную систему счисления, поскольку в формуле (1) в скобках записано представление расширенное представление шестнадцатиричного числа.
var
a: array [1..16] of integer; //Массив из 16 целых чисел
i: integer;
b: boolean; {Логическая переменная (найдено ли хотя бы одно число, кратное трем)}
begin
b:= false; //Ни одного числа, кратного трем еще не найдено
write('Исходный массив: ');
for i:= 1 to 16 do {Заполняем исходный массив случайными числами от - 20 до 20 и распечатываем его}
begin
a[i]:= random(40) - 20;
write(a[i], ' ');
end;
writeln;
for i:= 1 to 16 do //Определяем, есть ли в массиве хотя бы одно число, кратно трём, и если есть, то выходим из цикла
if (a[i] mod 3 = 0) and (a[i] <> 0) then
begin
writeln('В массиве есть хотя бы одно число, кратное трём');
b:= true;
break;
end;
if b = false then writeln('В массиве нет ни одного числа, кратного трём');
end.
Если все правильно, отметь решение как лучшее)