Código del ejercicio:
Definición de los códigos del ejercicio:
Console.Write() --> escribe un texto en pantalla.int --> dato entero de 32 bits.
Console.ReadLine() --> lee un dato desde teclado.
Parse() --> se utiliza para convertir una representación de cadena de un número en un entero equivalente con signo de 16/32/64 bits.
while --> el ciclo while recorre un bloque de código siempre que una condición específica sea verdadera.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
> --> el operador mayor que ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
% --> el operador de modulo ( % ) devuelve el resto de la división.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
Console.ReadKey() --> escribimos el método Console.ReadKey() al final de nuestro código para mantener abierta la ventana de nuestra consola.
Explicación del Código:
int ac = 0;
Console.Write("Ingresar número: ");
int n = int.Parse(Console.ReadLine());
int i = n - 1;
while(i > 0)
{
int r = n % i;
if(r == 0)
{
ac = ac + i;
}
i = i - 1;
}
if(n == ac)
{
Console.Write("El número es perfecto.");
}
else
{
Console.Write("El número no es perfecto.");
}
Console.ReadKey();
1. Variable acumuladora
int ac = 0; crea una variable llamada ac para guardar la suma de los divisores del número.
2. Pedir el número
Console.Write("Ingresar número: "); muestra un mensaje para que el usuario escriba un número.
int n = int.Parse(Console.ReadLine()); lee el número ingresado y lo guarda en la variable n.
3. Inicializar contador
int i = n - 1; hace que la variable i empiece un número antes del valor ingresado.
4. Recorrer divisores
while(i > 0) ejecuta el ciclo mientras i sea mayor que cero.
5. Obtener el residuo
int r = n % i; calcula el residuo de la división entre n e i.
Si el residuo es 0, entonces i es divisor del número.
6. Sumar divisores
if(r == 0) verifica si el residuo es igual a cero.
ac = ac + i; suma el divisor encontrado en la variable acumuladora.
7. Disminuir el contador
i = i - 1; reduce el valor de i en uno para continuar revisando más divisores.
8. Verificar si es perfecto
if(n == ac) compara el número ingresado con la suma de sus divisores.
Si ambos son iguales, el número es perfecto.
9. Mostrar resultado
Console.Write("El número es perfecto."); muestra el mensaje cuando el número es perfecto.
Console.Write("El número no es perfecto."); muestra el mensaje cuando el número no es perfecto.
10. Pausar la consola
Console.ReadKey(); espera que el usuario presione una tecla antes de cerrar la consola.
No hay comentarios.:
Publicar un comentario