#include<stdio.h>
 int main()
 {
  int N,i=0,sum=0;
  scanf("%d",&N);
  while(N!=0)
  {
   sum+=N%10;
   i++;
   N=N/10;
  }
  printf("%d %d",i,sum);
  return 0;
 }//7-5 最大公约数和最小公倍数
#include<stdio.h>//7-6 求整数的位数及各位数字之和
 int main()
 {
  int N,i=0,sum=0;
  scanf("%d",&N);
  while(N!=0)
  {
   sum+=N%10;
   i++;
   N=N/10;
  }
  printf("%d %d",i,sum);
  return 0;
 }
 //7-7 兔子繁衍问题
 #include <stdio.h>
  
 int main()
 {
     int tuzi,n,a=1,b=1;
     int month=2;
     scanf("%d",&n);
     if(n==1)
     {
         month=1;
     }
     else
     {
         for(tuzi=1; tuzi<n; )
         {
             tuzi=a+b;
             a=b;
             b=tuzi;
             month++;
         }
     }
     printf("%d",month);
 }
//7-8 统计素数并求和
 int main()
 {
     int m,n;
     int i;
     int cnt=0;
     int sum=0;
     scanf("%d%d",&m,&n);
     if(m==1)
        m=2;
     for(i=m;i<=n;i++){
         int isPrime=1;
         int k;
         for(k=2;k<i-1;k++){
             if(i%k==0){
                 isPrime=0;
                 break;
             }
         }
         if(isPrime){
             cnt++;
             sum+=i;
         }
     }
     printf("%d %d\n",cnt,sum);
     return 0;
 }
 //7-9 换硬币
 #include <stdio.h>
 int main () {
 int x, count = 0;
 scanf("%d", &x);
 for ( int k = x / 5; k > 0; k-- )
 for ( int i = x / 2; i > 0; i-- )
 for ( int j = x; j > 0; j-- )
 if ( k * 5 + i * 2 + j == x) 
     {
 printf("fen5:%d, fen2:%d, fen1:%d, total:%d\n", k, i, j, k + j + i);
 count++;
                 }
     printf("count = %d",count);
     return 0;
 }
 //7-10 输出三角形字符阵列
 #include<stdio.h>
 int main()
 {
     int a,c,x,i,n;
     char m='A';
     scanf("%d",&a);
     x=a;
     for(i=1;i<=a;i++)
     {
         
         for(c=1;c<=x;c++)
         {
             printf("%c ",m);
             m++;
         }
         x=x-1; 
         printf("\n");
     }
 }
 //7-5 输出整数各位数字
 #include<stdio.h>
 int main() {
     int n, t;
     int m = 1;
     scanf("%d", &n);
     t = n;
while (t / 10 != 0) {
        m *= 10;
         t /= 10;         
     }
     while (m != 0) {
        printf("%d ", n / m);    
         n %= m;                
         m /= 10;               
     }                            
    return 0;
 }
 //7-9 验证“哥德巴赫猜想
 #include<stdio.h>
 int isPrime(int x) {
     int isPrime = 1;
     if (x == 1 || x % 2 == 0 && x != 2) isPrime = 0;
     else {
         for (int i = 3; i <= sqrt(x); i += 2) {
             if (x % i == 0) {
                 isPrime = 0;
                 break;
             }
         }
     }
     return isPrime;
 }
 int main()
 {
     int n;
     scanf("%d", &n);
     for (int i = 2; i <= n / 2; i++) {
         if (isPrime(i) && isPrime(n - i)) {
             printf("%d = %d + %d\n", n, i, n - i);
             break;
         }
     }
     return 0;
 }
 //7-10 找完数
 #include<stdio.h>
 int main(){
     int n,m,i,j,sum,num=0;
     scanf("%d %d",&m,&n);
     for(i=m;i<=n;i++){
         if(i==1) continue;    //1不是完数 
         sum=1;
         for(j=2;j<i;j++)    //因子数之和 
             if(i%j==0) sum+=j;
         if(sum==i){        //之和相等,既是完数 
             printf("%d = 1",i);    //每一项都有1
             for(j=2;j<i;j++)    
                 if(i%j==0) 
                     printf(" + %d",j);    //之后再加上后面的因子 
             printf("\n");
             num++;
         }
     }
     if(num==0) printf("None\n"); //num是用来统计出现的完数个数 
     return 0;
 } 
 //6-3 符号函数
//6-10 统计某数每一位数字的偶数和
 int Count_Digit ( const int N )
 {
     int oddsum,a,b;
     oddsum = 0;
     a = N;
     if(a<0)
     {
         a = -a;
     }
     while(a>0)
     {
         
         b = a%10;
         if(b%2==0)
         {
             oddsum+=b;
         }
         a /= 10;
     }
     return oddsum;
 }
 //7-3 求满足条件的斐波那契数
#include<stdio.h>
 int fib(int n);
 int main(){
 int i,n;
 scanf("%d",&n);
 for(i=1;;i++){
     if(fib(i)>n){
         printf("%d",fib(i));
         break;
     }
 }
 return 0;
 }
 int fib(int n){
     if(n<=2){
         return 1;
     }else{
         return fib(n-1)+fib(n-2);
     }
 }
 //7-4 统计素数并求和
 #include <stdio.h>
 #include <math.h>
 int main()
 {
     int i, j, m, n, sum = 0, count = 0;
     scanf("%d %d", &m, &n);
     for(i = m; i <= n ; i++)
     {
         for(j = 2; j <= i; j++)
         {
             if(i % j == 0)
             {
                 break;
             }
         }
         if(i == j)
         {
             sum += j;
             count++;
         }
     }
     printf("%d %d", count, sum);
     
     return 0; 
 }
 //7-5 判断素数
 #include <stdio.h>
 #include <math.h>
 int main()
 {
     int i, j, n, a;
     scanf("%d", &n);
     for(i = 0; i < n; i++)
     {
         scanf("%d", &a);
         if(a == 1)
             printf("No\n");
         
         else
         {
             for(j = 2; j <= sqrt(a); j++)
             {
                 if(a % j == 0)
                 {
                     break;
                 }
             }
             if(j > sqrt(a))
                 printf("Yes\n");
             else 
                 printf("No\n");
         }
     }
    return 0;
 }










