zoukankan      html  css  js  c++  java
  • C++:函数求数根(总算写出来了。。。。)

    【问题描述】
    数根问题递归求解:输入n个正整数(输入格式中第一行为整数个数n,后续行为n个整数),输出各个数的数根。数根的定义:对于一个正整数n,我们将它的各个位相加得到一个新的数字,如果这个数字是一位数,我们称之为n的数根,否则重复处理直到它成为一个一位数,这个一位数也算是n的数根。例如:考虑24,2+4=6,6就是24的数根。考虑39,3+9=12,1+2=3,3就是39的数根。?
    要求计算一个数的数根部分利用递归函数实现。
    样例输入:
    5
    23 424 98 632 12345
    样例输出:
    5 1 8 2 6

    测试输入:
    2
    39 999
    测试输出:
    3 9

    测试输入:
    2
    54321 78906
    测试输出:
    6 3

    
    
    
    #include <iostream> 
    #include <cmath> 
    using namespace std; 
    int root(int); 
    int sum(int); 
    int main() 
    { 
     int n; 
     cin>>n; 	//输入个数
     int num; 
     for(int i=1;i<=n;i++) 
     { 
         cin >> num; 		//输入数值
         cout << root(num) << " "; 	//得出数根
     } 
     return 0; 
    } 
    
    int root(int x)  	//筛选数根,判断是否满足条件
    { 
      int b;
    	b=sum(x);
    	if(b>=10)	//如果大于等于10返回sum函数
    		{
    		b=sum(b);
    		return b;
    		}
    	else			
    		return b;
    } 
    
    int sum(int y) 		//求数根
    { 
        int t=y,result=0; 
        while(t>0) 
         { 
             result = result + t%10; 
             t = t / 10; 
         } 
         return result; 
    } 
    

  • 相关阅读:
    Sublime Text 无法使用Package Control或插件安装失败的解决方法
    phpstorm破解
    require
    在线支付
    解决华为手机用rem单位,内容超出屏幕宽度问题
    JS如何判断是不是iphoneX
    iPhoneX页面安全区域与内容重叠问题
    .NET 大数据量并发解决方案
    js 弹出div窗口 可移动 可关闭
    colgroup 整行变色
  • 原文地址:https://www.cnblogs.com/Comet-Fei/p/11885231.html
Copyright © 2011-2022 走看看