`
Hxuejie
  • 浏览: 2323 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

获得一个整数的各个位置上的数的和

阅读更多

今天在BD上回答问题的时候看到的:
问题:编写一个方法,实现求某个整数的各个位上的数字之和

此时的我就想到了一种方法,真是可悲啊。。。惭愧!

首先附上我的方法:
解决方法一:

public static int sum(int num) {
       int len = String.valueOf(num).length(); //得到数的长度
        int returnNum = 0; //最后返回值
        for(int i = 0 ; i < len; ++i) {//按照数的长度计算各个位上的值,并叠加 
             int operationNum = (int) Math.pow(10, i); //获得计算数(为10的N次方),用于计算得到各个位置上的数
             int result = (num % (operationNum*10))/operationNum; //得到当前位置上的数
             returnNum += result; //将当前位置上的数叠加到返回值
        }
       return returnNum; //返回返回值(各个位置上的数的和)
}

 
自己感觉还不错,呵呵...
然后又看了下别人的做法,真让我自叹不如啊!学习了!
其方法,简单、有效!
开眼了...哈哈!
值得学习一下!


不多说,直接附上方法:
解决方法二:

public static int qiuhe(int num) {
       int result = 0;
       String[] eachNums = (num + "").split(""); //直接独立出各个位置上的数,不错!
        for (int i = 1; i <= eachNums.length - 1; i++) {
            result += Integer.parseInt(eachNums);

       }
       return result;
}

 
解决方法三:

public static int method(int num){
    int ret = 0;
    while(num>0){
        ret += num%10; //获得个位上的数
         num /= 10; //去除当前个位,将十位上的数变成个位。感觉很不错,学习!
    }
    return ret;
} 

 

分享到:
评论

相关推荐

    整数数位和

    标题中的“整数数位和”指的是计算一个整数所有数位上的数字之和。在编程领域,这是一项常见的操作,常用于各种算法或数学问题的解决方案中。例如,求一个数的数字和可以帮助我们快速判断它是否为回文数,或者在计算...

    NOIP2011普及组复赛试题_数学翻转

    即输入一个整数x,输出该整数各位数字顺序颠倒的结果。例如,输入1234,则输出应为4321;若输入-567,则输出应为-765。 #### 解题思路分析 1. **读取输入**:首先,程序需要接收用户输入的一个整数x。 2. **处理...

    各位相加(递归求解+数学规律-树根)1

    问题描述是:给定一个非负整数 `num`,我们需要反复地将它的各个位上的数字相加,直至得到一个一位数。例如,对于输入值 38,经过计算 3 + 8 = 11,再计算 1 + 1 = 2,最后我们得到的结果是 2,因此返回 2。 解决...

    代码_C循环-求各位数字之积_

    标题 "代码_C循环-求各位数字之积" 涉及到的是在C语言编程环境中,使用循环结构来计算一个整数中各个数字的乘积。这个任务的关键在于理解如何处理数字的每一位,并将它们相乘。下面我们将深入探讨这个知识点。 首先...

    整数拆分并逆置

    整数拆分是指将一个整数分解成其各位数字的过程。例如,整数1234可以被拆分为1、2、3、4四个数字。 #### 逆置 逆置是指改变数据的顺序。对于整数拆分后的各个数字,逆置就是将这些数字按照相反的顺序重新排列。例如...

    回文数 (C 实现)

    在C语言中实现回文数的判断和打印所有N之前的回文数是一项常见的编程任务,这涉及到对数字的处理和字符串的操作。 首先,我们需要理解如何判断一个数是否为回文数。一种简单的方法是将数字转换为字符串,然后比较...

    检查字符串是否为整数,C++程序

    其中一个常见的需求是判断一个字符串是否可以表示一个整数。这对于输入验证、数据解析等场景非常重要。本篇文章将详细探讨一个简单的C++程序,该程序用于检测一个给定的字符串是否能够被解释为一个整数。 #### 程序...

    上海电机学院C语言实训答案

    (12)编写程序验证以下说法:输入一个4位数,该数个、十、百、千位上的数互不相等,由个、十、百、千位上的数组成一个最大数和一个最小数,最大数-最小数,构成一个新的4位数。反复以上运算,使其最终结果为:6174...

    整数划分的回溯法表示

    整数划分问题是一个经典的组合数学问题,指的是将一个正整数拆分成若干个正整数之和的方法数。例如,数字6可以被拆分为`6`, `5+1`, `4+2`, `4+1+1`, `3+3`, `3+2+1`, `3+1+1+1`, `2+2+2`, `2+2+1+1`, `2+1+1+1+1`, `...

    大整数乘法的数据结构及算法

    字符数组中的每个元素仅占用1个字节,用于存储大整数的每一位,既节省了存储空间,也便于程序对各个数位进行处理。这是因为数字和其对应字符的ASCII码之间存在固定的差值(通常为'0'的ASCII码减去0),这使得字符...

    单片机C语言程序整数分离

    例如,你可能需要将一个8位或16位的整数拆分为高八位和低八位,或者提取特定位作为状态标志等。 1. **整数的二进制表示**:在C语言中,整数是以二进制形式存储的。对于8位单片机,一个整数通常占用8位(一字节),...

    最优分解问题

    最优分解问题是一个经典的数学优化问题,它涉及到如何有效地将一个正整数n分解为若干个互不相同的自然数之和,以使得这些自然数的乘积最大化。这个问题在计算机科学和算法设计中有着广泛的应用,特别是在寻找高效...

    大整数运算

    非对称密码在加密和解密时,是把加密的数据当作一个大的正整数来处理,这样就涉及到大整数的加、减、乘、除和指数运算等,同时,还需要对大整数进行输出。请采用相应的数据结构实现大整数的加、减、乘、除和指数运算...

    java操作hadoop之mapreduce计算整数的最大值和最小值实战源码

    在这个实例中,我们将创建一个简单的MapReduce程序,该程序读取包含整数的文件,找出最大值和最小值。以下是实现这个功能的关键步骤: 1. **设置环境**:确保已经安装了Hadoop,并配置了相应的环境变量。同时,需要...

    大整数正负类型class模板

    大整数类型模板,各个接口已经封装完成,拿到就可以用,万分推荐!!! 大整数类型模板,各个接口已经封装完成,拿到就可以用,万分推荐!!! 大整数类型模板,各个接口已经封装完成,拿到就可以用,万分推荐!!!...

    Matlab实现整数提升5/3小波变换的分解与重构

    总的来说,Matlab提供了一个灵活的平台来实现整数提升5/3小波变换,使得研究人员和工程师能够快速地进行信号处理和分析实验。通过理解ILWT的原理和Matlab中的实现,我们可以更好地利用这种技术来解决实际问题,例如...

    c++大整数运算器源代码

    这个过程对每个4位一组的数字进行处理,最后得到一个整数数组,数组中的每个元素代表大整数的一位。 8. **计算逻辑**:虽然代码中没有给出完整的计算部分,但可以推断`add()`和`multiply()`函数会使用这些整数数组...

    基于整数规划的层次式FPGA布线算法.pdf

    整数规划是运筹学中一个重要的数学分支,它研究如何在一组整数线性约束条件下,求解一个线性目标函数的最大值或最小值。在FPGA布线问题中,整数规划被用来进行全局优化处理,从而提高布线的效率和质量。 层次式FPGA...

    32例1分数除以整数例2一个数除以分数例3分数混合运算 (2).ppt

    在数学的分数运算中,分数除以整数和一个数除以分数是基本的运算类型,而分数混合运算是这两个概念的综合应用。本讲座主要通过具体的实例来讲解这些概念。 首先,分数除以整数的基本规则是将分数除法转化为乘法。以...

    小升初数学专题1:数与代数(2)数的整除、因数、倍数、合数、质数、奇数、偶数.pdf

    8. 关于填空题中的数学规律,比如2、3、5的倍数特征,需要学生掌握一定的数的规律性,比如2的倍数个位数是偶数,5的倍数个位数是0或5,而3的倍数则是其各个数位上数字之和能被3整除的数。 9. 计算题中的短除法是...

Global site tag (gtag.js) - Google Analytics