Найти сумму цифр числа на нечетных позициях - C (СИ)
Формулировка задачи:
почему то 0 выводит все время..
Дано натуральное число N. Подсчитать сумму цифр этого числа, находящихся на нечетных позициях (нумерация позиций идет слева направо).
#include <stdio.h>
int main()
{
int summa=0, count=1, n, n1;
printf("Enter number\n");
scanf("%d",&n);
n1=n;
while(n1 /= 10)
count++;
count %=2;
while(n)
{
if(count % 2 != 0)
summa *=n % 10;
n /= 10; count++;
}
printf("%d\n",summa);
getchar();
}
Хелп плз!
Решение задачи: «Найти сумму цифр числа на нечетных позициях»
textual
Листинг программы
#include <stdio.h>
int main(void)
{
int i = 1,sum = 0, count = 1, N, n;
printf("Enter N\n");
scanf("%d",&N);
n = N;
while(n /= 10)
count++;
if(count % 2 == 0)
i = 0;
while(N)
{
if( i % 2 != 0)
sum += N % 10;
N /= 10;
i++;
}
printf("%d\n", sum);
}
Объяснение кода листинга программы
В этом коде выполняется следующая последовательность действий:
- Пользователю предлагается ввести число N.
- Вводится переменная N.
- Вычисляется количество цифр числа N, затем определяется, является ли это количество четным или нечетным числом.
- Если количество цифр четное, то переменная i устанавливается равной 0.
- Число N разбивается на отдельные цифры, начиная с самой правой, и каждая цифра добавляется к сумме, если ее позиция в числе нечетная.
- Сумма цифр на нечетных позициях выводится на экран.