Задать вопрос
@korshunov2014

Как решить эту задачу?

Напишите функцию, которая для заданного трехзначного натурального числа X вычисляет количество трехзначных натуральных чисел, меньших X, сумма цифр которых кратна 13-ти. Входные данные Выходные данные 999 72 Вот код:

import java.util.Scanner;
public class JavaApplication6 {
    int number;
    int su = 0;
    int count = 0;
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        JavaApplication6 person = new JavaApplication6();
        int sum = sc.nextInt();
        int i = 99;
        while (sum>i){
            i++;
            if(i%13 == 0){
                person.number = i;
                person.sum2();
              
            }
            
        }
        System.out.println(person.sum2());
    }
    public int sum2(){
        count = count + 1;
        return count;
    }
    
        
}

Ввожу число 999, насчитывает 70 чисел, а должно быть 72, в чем может быть ошибка?
  • Вопрос задан
  • 144 просмотра
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
@sand3001
Всего по немногу
Вы проверяете сколько чисел в диапозоне от 100 до 999 делятся на 13, а задача: сумма цифр которых кратна 13-ти. То бишь для каждого числа, которое меньше введённого, нужно искать сумму цифр и проверять кратность 13-ти, если кратно - увеличиваем счётчик. Например: 823, 8+2+3 = 13, кратно 13, увеличиваем счётчик
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы