Умоляю,помогите.. Ниже ** двух языках записан алгоритм. Получив ** вход число x, этот...

0 голосов
48 просмотров

Умоляю,помогите..
Ниже на двух языках записан алгоритм. Получив на вход число x, этот алгоритм
печатает два числа: a и b. Укажите наибольшее из таких четырёхзначных чисел x, при
вводе которых алгоритм печатает сначала 7, а потом 29.

mod - озгачает остаток от деления нацело, например, 10 mod 3 равно 1 (mod(10,3) = 1), div - деление нацело, например, (10 div 3 = 3 (div(10,3) = 3)

Паскаль

var x, a, b, c: integer;
begin
readln(x);
a := 9; b := 0;
while x>0 do
begin
c := x mod 10;
b := b+c;
if c <= a then a := c;<br> x := x div 10;
end;
writeln(a); write(b);
end.


Информатика (68 баллов) | 48 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Программа получает на вход натуральное число, затем подсчитывает сумму его цифр и определяет наименьшую из всех цифр, кроме первой.
В соответствии с условием задачи требуется найти наибольшее четырехзначное число, сумма цифр которого равна 29, а наибольшая из трех последних цифр не превышает 7.
Итак, одна из цифр числа известна - это 7. Тогда сумма остальных трех цифр равна 29-7=22, причем две из этих цифр не могут быть меньше 7. Полагаем, что они равны 7 с тем, чтобы получить наибольшую допустимую первую цифру. Получаем 22-7х2=8, т.е. число должно быть равно 8777.
Ответ: 8777

(142k баллов)