Определить количество цифр в числе а, которые больше или равны числу 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 );

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.909 из 5
Похожие ответы