如何在c ++中对整数中的数字求和?

时间:2016-10-10 06:30:22

标签: c++

我想要求整数的数字。如果我有123,我想要加1 + 2 + 3。我找到了一个运作良好的程序,但我不明白它是如何工作的。你能解释一下它的工作原理吗?

#include <iostream>
using namespace std;
int main()
{
 int n, sum;
 cout << "Enter integer\n";
 cin >> n;
 sum = n/100 + (n/10)%10 + n%10;
 cout << "sum = " << sum << endl;
}

n/100如何从123生成1,(n/10)%10 2从123生成n%10 3从123生成

2 个答案:

答案 0 :(得分:1)

if (latitudeStringOfQ.equals(city1))
        {
            latitudeOfQ = latitudeOfBarrow;
            longitudeOfQ = longitudeOfBarrow;
        }
        else if (latitudeStringOfQ.equals(city2))
        {
            latitudeOfQ = latitudeOfBrisbane;
            longitudeOfQ = longitudeOfBrisbane;
        }
        else if (latitudeStringOfQ.equals(city3))
        {
            latitudeOfQ = latitudeOfDuluth;
            longitudeOfQ = longitudeOfDuluth;
        }
        else if (latitudeStringOfQ.equals(city4))
        {
            latitudeOfQ = latitudeOfLondon;
            longitudeOfQ = longitudeOfLondon;
        }
        else if(latitudeStringOfQ.equals(city5));
        {
            latitudeOfQ = latitudeOfOrlando;
            longitudeOfQ = longitudeOfOrlando;
        }
System.out.print(latitudeOfQ);
System.out.print(longitudeQ);

1)sum = n/100 + (n/10)%10 + n%10; (N = 123)  在本声明中,123/100表示​​ans n/100

2)is = 1 这里(n/10)%10首先评估并回复(123/10),然后is = 12得到评估和ans 12%10

3)is = 2再次n%10评估ans是123%10

然后声明变为

3

注意:sum = 1 + 2 + 3 符号为余数

答案 1 :(得分:0)

这些是非常简单的数学。

这里,n = 123

100 | 123 | 1
      100
   _________
       23

因此,商为1。

同样的方式,对于123/10,

10 | 123 | 12
     10
___________
      23
      20
___________
       3

所以,123/10 = 12.现在为(123/10)%10 = 12%10,

10 | 12 | 1
     10
   ______
      2

因此,(123/10)%10 = 12%10 = 2。

同样,123%10 = 3

因此,答案是:123/100 +(123/10)%10 + 123%10 = 1 + 2 + 3 = 6

(注意:a%b,这里b除以a并返回余数)