Работа 3.4 Упр.14 Задание 3 ГДЗ Семакин 10 класс (Информатика)
Пример: N = 1808. Количество цифр с наибольшим значением равно двум (две цифры 8).
Нужно найти наибольшую цифру в записи числа и посчитать, сколько раз она встречается.
Сначала будем просматривать число по цифрам справа налево. Для этого используем операции:
- $$c = n \bmod 10$$ — последняя цифра числа;
- $$n = n \div 10$$ — удаление последней цифры.
Храним:
- $$mx$$ — максимальную найденную цифру;
- $$k$$ — количество её вхождений.
Если очередная цифра больше $$mx$$, то обновляем максимум и начинаем счёт заново: $$k=1$$. Если цифра равна $$mx$$, увеличиваем счётчик на 1.
uses crt;
var n:longint;
c,k,mx:byte;
begin
clrscr;
write(‘Введите натуральное число n=’);
readln(n);
mx:=0;
k:=1;
while n>0 do
begin
c:=n mod 10;
if c>mx then
begin
mx:=c;
k:=1;
end
else if c=mx then k:=k+1;
n:=n div 10;
end;
write(‘Максимальная цифра ‘,mx,’, количество=’,k);
readln;
end.
Для примера $$N=1808$$ максимальная цифра — $$8$$, она встречается два раза.
Ответ: количество цифр, имеющих наибольшее значение, равно $$k$$; для примера $$1808$$ это $$2$$.