Дано натуральное число определить сколько раз в нем встречается минимальная цифра - C (СИ)
Формулировка задачи:
Помогите пожалуйста
Решение задачи: «Дано натуральное число определить сколько раз в нем встречается минимальная цифра»
textual
Листинг программы
void main() { int nk=102200,nkt; int ndj,ndmin; int qtndmin;//this variable will contain the result ndmin=0; for(nkt=nk;nkt>0;nkt/=10) { ndj=nkt-(nkt/10)*10; if(nkt==nk) ndmin=ndj; else { if(ndj<ndmin) ndmin=ndj; } } for(nkt=nk,qtndmin=0;nkt>0;nkt/=10) { ndj=nkt-(nkt/10)*10; if(ndj==ndmin) qtndmin++; } }
Объяснение кода листинга программы
Код выполняет следующие действия:
- Входные данные: натуральное число nk = 102200.
- Инициализация переменных:
- nkt = nk,
- ndj = 0,
- ndmin = 0,
- qtndmin = 0.
- Цикл for для обработки каждой цифры числа nk:
- nkt = nk,
- ndj = nkt-(nkt/10)*10,
- если nkt == nk, то ndmin = ndj,
- иначе, если ndj < ndmin, то ndmin = ndj.
- Цикл for для подсчета количества вхождений минимальной цифры:
- nkt = nk,
- ndj = nkt-(nkt/10)*10,
- если ndj == ndmin, то qtndmin++,
- nkt /= 10.
- Вывод результата: количество вхождений минимальной цифры равно qtndmin.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д