10591 - Happy Number

#include <stdio.h>
int main()
  {
  long num,num_1,i=0,j,sum=0,c,a[999999],N;
  scanf("%ld", &N);
  for(long k=1;k<=N;k++)
     {
     scanf("%ld", &num_1);
     if(num_1<10)
     num=num_1*num_1;
     else
     num=num_1;

     while(1)
        {
        c=num;
        do
           {
           num=num%10;
           a[i]=num;
           i++;
           c=c/10;
           if(c<10)
             a[i]=c;

           num=c;
          }while(c>9);//End of do-while

       for(j=i;j>=0;j--)
          sum=sum+a[j]*a[j];

       num=sum;

      if(num<10)
          {
          if(num==1)
          printf("Case #%d: %d is a Happy number.\n",k,num_1);
          else
          printf("Case #%d: %d is an Unhappy number.\n",k,num_1);
          break;
         }
      sum=0;
      i=0;
    }//End of while
    sum=0;
    i=0;
    }//End of Total Number input taken
  }// End of main

Comments

Popular posts from this blog

371 - Ackermann Functions

Create many folder with one click