/
NikolayIvkin
/
TheAlgorithms
Обзор
Документация
Войти
/
NikolayIvkin
/
TheAlgorithms
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/main/java/com/thealgorithms/maths/PronicNumber.java
51 строка
2 KB
Taranjeet Singh Kalsi
Add another method to check Pronic number (#5919)
26 окт 2024, 14:19
Не верифицирован
26 окт 2024, 14:19
871e4df
Код
Авторство
О чём код?
package com.thealgorithms.maths; /* * Java program for Pronic Number * Pronic Number: A number n is a pronic number if * it is equal to product of two consecutive numbers m and m+1. * Wikipedia: https://en.wikipedia.org/wiki/Pronic_number * * Author: Akshay Dubey (https://github.com/itsAkshayDubey) * * */ public final class PronicNumber { private PronicNumber() { } /** * This method checks if the given number is pronic number or non-pronic number * * @param inputNumber Integer value which is to be checked if is a pronic number or not * @return true if input number is a pronic number, false otherwise */ static boolean isPronic(int inputNumber) { if (inputNumber == 0) { return true; } // Iterating from 0 to input_number for (int i = 0; i <= inputNumber; i++) { // Checking if product of i and (i+1) is equals input_number if (i * (i + 1) == inputNumber && i != inputNumber) { // return true if product of i and (i+1) is equals input_number return true; } } // return false if product of i and (i+1) for all values from 0 to input_number is not // equals input_number return false; } /** * This method checks if the given number is pronic number or non-pronic number using square root of number for finding divisors * * @param number Integer value which is to be checked if is a pronic number or not * @return true if input number is a pronic number, false otherwise */ public static boolean isPronicNumber(int number) { int squareRoot = (int) Math.sqrt(number); // finding just smaller divisor of the number than its square root. return squareRoot * (squareRoot + 1) == number; } }