Определить количество цифр в числе а, которые больше или равны числу 5 - C (СИ)
Формулировка задачи:
Здравствуйте,скоро вот сессия и я подумал надо бы подготовиться к экзамену,даже вопросы есть. Ну собственно ближе к сути,задание на тему обработка чисел без использования массивов. Само задание :Дано целое десятичное число a. Определить количество цифр в числе а, которые больше или равны числу 5.
Я подумал сначала легкотня,но потом споткнулся(Си изучаю довольно недавно). Собственно я не пойму как заставить программу проверять цифры всего числа поочередно. Я думал это сделать циклом for,но не совсем пойму как это правильно сделать. Буду благодарен если поможете разобраться,в моем коде как я понял он завершает проверку как только находит цифру равную или больше 5. Переменную n думал использовать в цикле,но загвоздка в том,я не понимаю как в обычном числе программе показать адрес цифры. Т.е. допустим число 556987(5 - 0 элемент,5 - 1 элемент,6 - 2 элемент и так далее). Буду признателен за помощь.
#include "stdafx.h" #include "conio.h" #include "windows.h" #include "math.h" int main () {int a,i,n,k; SetConsoleOutputCP (1251); SetConsoleCP (1251); printf ("Введите число a="); scanf ("%d",&a); k=0; if (a%10>=5) {k++; } printf ("k=%d",k); getch (); return 0; }
Решение задачи: «Определить количество цифр в числе а, которые больше или равны числу 5»
textual
Листинг программы
/* вместо строк 13 - 15 */ for ( ; a; a /= 10 ) k += ( a % 10 > 4 );
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д