Header Ads Widget

Ticker

6/recent/ticker-posts

Programa Java para encontrar GCD de dos números

En este programa, aprenderá a encontrar el MCD de dos números en Kotlin. Esto se hace utilizando bucles for y while con la ayuda de sentencias if else.
El HCF o GCD de dos enteros es el número entero más grande que puede dividir exactamente ambos números (sin un resto).

Ejemplo 1: Encuentre el MCD de dos números usando el ciclo for y la instrucción if

  1. public class GCD {
  2. public static void main(String[] args) {
  3. int n1 = 81, n2 = 153, gcd = 1;
  4. for(int i = 1; i <= n1 && i <= n2; ++i)
  5. {
  6. // Checks if i is factor of both integers
  7. if(n1 % i==0 && n2 % i==0)
  8. gcd = i;
  9. }
  10. System.out.printf("G.C.D of %d and %d is %d", n1, n2, gcd);
  11. }
  12. }
Cuando ejecutas el programa, la salida será:
MCD de 81 y 153 es 9
Aquí, dos números cuyo GCD se encuentra se almacenan en n1 y n2 respectivamente.
Luego, se ejecuta un bucle for hasta que i sea ​​menor que n1 y n2 . De esta manera, todos los números entre 1 y el más pequeño de los dos números se repiten para encontrar el MCD.
Si n1 y n2 son divisibles por i , gcd se establece en el número. Esto continúa hasta que encuentra el número más grande (MCD) que divide a n1 y n2 sin resto.

También podemos resolver este problema usando un ciclo while de la siguiente manera:

Ejemplo 2: Encuentre el MCD de dos números usando el ciclo while y la instrucción if else

  1. public class GCD {
  2. public static void main(String[] args) {
  3. int n1 = 81, n2 = 153;
  4. while(n1 != n2)
  5. {
  6. if(n1 > n2)
  7. n1 -= n2;
  8. else
  9. n2 -= n1;
  10. }
  11. System.out.println("G.C.D = " + n1);
  12. }
  13. }
Cuando ejecutas el programa, la salida será:
MCD = 9
Esta es una mejor manera de encontrar el MCD. En este método, el entero más pequeño se resta del entero más grande y el resultado se asigna a la variable que contiene un entero más grande. Este proceso continúa hasta que n1 y n2 son iguales.
Los dos programas anteriores funcionan según lo previsto solo si el usuario ingresa enteros positivos. Aquí hay una pequeña modificación del segundo ejemplo para encontrar el MCD para enteros positivos y negativos.

Ejemplo 3: MCD para números positivos y negativos

  1. public class GCD {
  2. public static void main(String[] args) {
  3. int n1 = 81, n2 = -153;
  4. // Always set to positive
  5. n1 = ( n1 > 0) ? n1 : -n1;
  6. n2 = ( n2 > 0) ? n2 : -n2;
  7. while(n1 != n2)
  8. {
  9. if(n1 > n2)
  10. n1 -= n2;
  11. else
  12. n2 -= n1;
  13. }
  14. System.out.println("G.C.D = " + n1);
  15. }
  16. }
Cuando ejecutas el programa, la salida será:
MCD = 9

Publicar un comentario

0 Comentarios