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