Может кто-нибудь объяснить мне код в Java? Как% и / = получают все суммы ввода? - PullRequest
0 голосов
/ 12 февраля 2020

Может кто-нибудь объяснить мне код в Java? Как% и / = получают все суммы ввода? Я запутался в логике c кода. Спасибо.

(Суммируйте цифры в целом числе) Напишите программу, которая читает целое число от 0 до 1000 и добавляет все цифры в целое число. Например, если целое число равно 932, сумма всех его цифр равна 14. Совет: используйте оператор% для извлечения цифр и оператор / для удаления извлеченного di git. Например, 932% 10 = 2 и 932/10 = 93.

import java.util.Scanner;

public class Exercise_02_06 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);     // Create new Scanner object

        // Prompt the user to enter a number between 0 and 1000.
        System.out.print("Enter a number between 0 and 1000: ");
        int number = input.nextInt();

        // Compute the sum of the digits in the integer.
        int lessThan10 = number % 10;       
        number /= 10;                           
        int tens = number % 10;             
        number /= 10;                           
        int hundreds = number % 10;     
        number /= 10;                           
        int sum = hundreds + tens + lessThan10; 

        // Display results
        System.out.println("The sum of the digits is " + sum);
    }
}

1 Ответ

1 голос
/ 12 февраля 2020

% является оператором остатка. Таким образом, 14% 10 равно 4. А с целым числом arithemti c дробная дробь уменьшается. поэтому 14/10 равен 1.

So follow this.

total = 0
numb = 932
int n = numb % 10 = 932 % 10 = 2
total = total + n = 2

numb = numb /10 = 93
n =  numb % 10 = 93 % 10 = 3
total = total + n = 2 + 3 = 5

numb = numb / 10 = 9
n = numb % 10 = 9 % 10 = 9
total = total + 9 = 5 + 9 = 14

9 + 3 + 2 = 14


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...