/* 070903-5.c
 * 30 min
 */

#include <stdio.h>
#include <string.h>

int Div9 (char *str);

void main (void)
{
  char num [1025];

  printf ("Introduce el número: ");
  gets (num);
  if (Div9(num)) printf ("%s es divisible por 9\n", num);
  else           printf ("%s no es divisible por 9\n", num);
}

int Div9 (char *str)
{
  char num [1025];
  int i, j, n;
  int s;

  do {
    n = strlen (str);
    j = 0;
    for (i = 0; i < n; i+= 2) {
      if (i == n - 1)
        s = str [i] - '0';
      else
        s = str [i] - '0' + str [i+1] - '0';
      if (s >= 10) {
        num [j] = '1';
        j++;
        s -= 10;
      }
      num [j] = s + '0';
      j++;
    }
    num [j] = '\0';
    str = num;
  } while (n > 1);
  return num [0] == '9';
}