package tutorialJava.examenes.examen20241025;

public class EjA_NumerosAmigos {

	/**
	 * 
	 * @param args
	 */
	public static void main(String[] args) {
		int num1 = 220;
		boolean tieneAmigo = false;
		
		for(int i = num1 + 1; i < 1000000; i++) {
			if (sonNumerosAmigos(num1, i)) {
				System.out.println(num1 + " y " + i + " son amigos");
				tieneAmigo = true;
			}
		}
		
		if (tieneAmigo == false) {
			System.out.println("El número " + num1 + " no tiene amigo");
		}
	}
	
	
	/**
	 * 
	 * @param n1
	 * @param n2
	 * @return
	 */
	public static boolean sonNumerosAmigos(int n1, int n2) {
		if (esAmigoDe(n1, n2) && esAmigoDe(n2, n1)) {
			return true;
		}
		return false;
	}
	
	/**
	 * 
	 * @param num
	 * @param posibleAmigo
	 * @return
	 */
	public static boolean esAmigoDe(int num, int posibleAmigo) {
		int suma = 0;
		
		for (int i = 1; i < num; i++) {
			if (num % i == 0) {
//				System.out.println(i + " es divisor de " + num);
				suma += i;
			}
		}
		if (suma == posibleAmigo) {
			return true;
		}
		return false;
	}

}













