Тема: С: Помилка в коді. Неправильно рахує
Завдання: Визначити функцію обчислення суми цифр довільного натурального числа та за допомогою неї з’ясувати, який з членів генерованої послідовності має найбільшу таку суму.
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
int sumdigs(int k);
int sumdigs(int k)
{
int s = 0;
while (k > 0)
{
s += k % 10;
k = k / 10;
}
return s;
}
int main()
{
double s = 0, a;
unsigned int i, n,x;
int smax,xmax;
printf("n=");
scanf_s("%u", &n);
for (int i = 0; i < n; i++)
{
x = rand() % 100;
printf("%d ", x);
}
smax = xmax = 0;
for (i = 0; i < n; i++)
{
int k;
k = sumdigs(x);
if (k > smax)
{
smax = k;
xmax = x;
}
}
printf("\nMax summ numbers =%d in number %d\n", smax, xmax);
_getch();
return 0;
}