Ejercicio A terminado
This commit is contained in:
36
src/main/java/examenes/examen20241025/Ejercicio_a.java
Normal file
36
src/main/java/examenes/examen20241025/Ejercicio_a.java
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
package examenes.examen20241025;
|
||||||
|
|
||||||
|
import static examenes.examen20241025.utils.Utils.*;
|
||||||
|
|
||||||
|
public class Ejercicio_a {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
//Solicitamos un número para buscar su amigo
|
||||||
|
int numDado = solicitarIntScanner("Introduzca el número amigable a buscar: ");
|
||||||
|
|
||||||
|
//Probamos hasta encontrar uno o si no vemos ninguno, ponemos un límite
|
||||||
|
//El límite me lo ha dado Rafa
|
||||||
|
for (int i = numDado; i < 1000000000; i++) {
|
||||||
|
//Si la suma de lso divisores es nuestro número, lo hemos encontrado
|
||||||
|
if (calculoSumaDivisores(i) == numDado) {
|
||||||
|
System.out.println(i);
|
||||||
|
break;
|
||||||
|
//Si llegamos al límite decimos que no hemos encontrado ninguno
|
||||||
|
} else if (i == 999999999) {
|
||||||
|
System.out.println("No se ha encontrado ningún número amigo");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static int calculoSumaDivisores(int num) {
|
||||||
|
int sumaDivisores = 0;
|
||||||
|
//Vamos calculando los divisores y sumándolos para luego devolverlo
|
||||||
|
for (int i = 1; i <= num; i++) {
|
||||||
|
if ((num % i) == 0) {
|
||||||
|
sumaDivisores += num / i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sumaDivisores -= num;
|
||||||
|
return sumaDivisores;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user