PascalABC.NET 3.3.5, сборка 1659 от 09.04.2018 Внимание! Если программа не работает, обновите версию!
function Sed(n:integer):integer; // Возвращает сумму четных цифр в числе begin (n,Result):=(Abs(n),0); while n>0 do begin var d:=n mod 10; if d.IsEven then Result+=d; n:=n div 10 end end;
begin var (a,b):=ReadInteger2('Введите два целых числа через пробел:'); var (s1,s2):=(Sed(a),Sed(b)); if s1>s2 then Writeln(a) else Writeln(b) end.
Пример Введите два целых числа через пробел: 6213 5841 5841
begin var r:=Abs(ReadReal('Введите действительное число:')); if Trunc(r).IsEven then Writeln('YES') else Writeln('NO') end.
Если запись числа оканчивается на 8, то система счисления (далее - с/с) не может иметь основание меньше чем 8+1=9. В этой системе счисления представление числа 30 будет двухзначным (с одного разряда может быть представлено число, не превышающее 8, а двух разрядов достаточно для записи числа 9²-1=80, что превышает 30).
Двухзначное число может быть записано в с/с по основанию n следующим образом: na+b. По условию число оканчивается цифрой 8 и его значение равно 30. Получаем уравнение: na+8=30 ⇒ na=22. Раскладываем 22 на простые множители: 22=1х2х11 Решение уравнения в целых числах при условии n>8 дает два варианта ответов: (n=11, a=2), (n=22, a=1). Это порождает два числа: Существует ли с/с по основанию n, в которой запись числа 30 будет одноразрядной? Уравнение 8n=30 не имеет решений в целых числах, поэтому такой с/с не существует. ответ: 30(10)=18(22)=28(11).
Внимание! Если программа не работает, обновите версию!
function Sed(n:integer):integer;
// Возвращает сумму четных цифр в числе
begin
(n,Result):=(Abs(n),0);
while n>0 do begin
var d:=n mod 10;
if d.IsEven then Result+=d;
n:=n div 10
end
end;
begin
var (a,b):=ReadInteger2('Введите два целых числа через пробел:');
var (s1,s2):=(Sed(a),Sed(b));
if s1>s2 then Writeln(a) else Writeln(b)
end.
Пример
Введите два целых числа через пробел: 6213 5841
5841
begin
var r:=Abs(ReadReal('Введите действительное число:'));
if Trunc(r).IsEven then Writeln('YES') else Writeln('NO')
end.
Примеры
Введите действительное число: -435.234
NO
Введите действительное число: 20608.6536
YES
Двухзначное число может быть записано в с/с по основанию n следующим образом: na+b. По условию число оканчивается цифрой 8 и его значение равно 30. Получаем уравнение:
na+8=30 ⇒ na=22.
Раскладываем 22 на простые множители: 22=1х2х11
Решение уравнения в целых числах при условии n>8 дает два варианта ответов:
(n=11, a=2), (n=22, a=1).
Это порождает два числа:
Существует ли с/с по основанию n, в которой запись числа 30 будет одноразрядной?
Уравнение 8n=30 не имеет решений в целых числах, поэтому такой с/с не существует.
ответ: 30(10)=18(22)=28(11).