Если число 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. Проверим
//Pascal //Для натуральных чисел var a, s, p:integer;
begin write('Введите число = '); readln(a); s := 0; p := 1; while (a<>0) do begin p := p * (a mod 10); s := s + (a mod 10); a := a div 10; end; writeln( 'Сумма цифр числа = ', s); writeln( 'Произведение цифр числа = ', p); end.
//Если число отрицательное var s, p, a, b, c: integer; f: boolean; begin write('Введите число = '); readln(a); if a < 0 then f := true; a := abs(a); b := a mod 10; a := a div 10; c := a mod 10; a := a div 10; if f = true then begin p := (-a) * b * c; s := -a + b + c; end else begin s := a + b + c; p := a * b * c; end; writeln('Сумма цифр числа = ', s); writeln('Произведение цифр числа = ', p); 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)