кодесурса

Упражнения на Java: проверьте, является ли данное число счастливым или несчастным

script1adsense2code
script1adsense3code

Номера Java: упражнение 10 с решением

Напишите программу на Java, чтобы проверить, является ли данное число счастливым или несчастным.

Счастливое число: начиная с любого положительного целого числа, замените число на сумму квадратов его цифр и повторяйте процесс до тех пор, пока число не станет равным 1, или пока оно не зацикливается в цикле, который не содержит 1.
Несчастный номер - это номер, который не радует.
Первые несколько несчастных чисел: 2, 3, 4, 5, 6, 8, 9, 11, 12, 14, 15, 16, 17, 18, 20.

Иллюстрированная презентация:



Пример решения:

Java-код:

import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
public class Example10 {
    public static boolean isHappy_number(int num)
    {
        Set<Integer> unique_num = new HashSet<Integer>();
        while (unique_num.add(num))
        {
            int value = 0;
            while (num > 0)
            {
                value += Math.pow(num % 10, 2);
                num /= 10;
            }
            num = value;
        }
        return num == 1;
    }
    public static void main(String[] args)
    {
        System.out.print("Input a number: ");
        int num = new Scanner(System.in).nextInt();
        System.out.println(isHappy_number(num) ? "Happy Number" : "Unhappy Number");
    }
}

Пример вывода:

 Введите число: 5                                                                                             
Несчастный номер

Блок - схема:

«Блок-схема:

Редактор кода Java:

Внесите свой код и комментарии через Disqus.

Предыдущий: Напишите программу на Java, чтобы найти и напечатать первые 10 счастливых чисел.
Далее: Напишите программу на Java, чтобы проверить, является ли данное число дисариумным или несчастным.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code