SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: jairogon en Jueves 1 de Julio de 2010, 03:56

Título: Compila bien y no corre
Publicado por: jairogon en Jueves 1 de Julio de 2010, 03:56
El siguiente programa compila bien pero no corre, la verdad no se por que?


Uso el DevC++.


Código: Text
  1.  
  2. //Programa que calcula el m.c.d de dos numeros
  3. //enteros positivos.
  4. #include<iostream>
  5. #include<conio2.h>
  6.  
  7. using namespace std;
  8.  
  9. int main()
  10. {
  11.   int a=0,b=0,mayor=0, menor=0,residuo=0,divisor=0,dividendo=0,resultado=0,mcd=0;
  12.    cout<<"Entra dos numeros enteros: ";
  13.     cin>>a>>b;
  14.  
  15.      if(a>=b)
  16.      {
  17.        mayor=a;
  18.        menor=b;
  19.      }else
  20.           {
  21.             mayor=b;
  22.             menor=a;
  23.           }
  24.            dividendo=menor;
  25.            divisor=mayor;
  26.  
  27.              do{
  28.                  resultado=divisor/dividendo;
  29.                   residuo=divisor%dividendo;
  30.                    divisor=dividendo;
  31.                     dividendo=residuo;
  32.                }while(dividendo==0||residuo==0);
  33.  
  34.      mcd=dividendo;
  35.  
  36.      if(mcd==1)
  37.      {
  38.        cout<<"Los numeros :"<<a<<" y"<<b<<" son primos entre si pues el mcd es 1";
  39.      } else
  40.            {
  41.              cout<<"El mcd de "<<a<<" y"<<b<<" es: "<<mcd;
  42.            }
  43.  
  44.    getche();
  45.    
  46.    return 0;
  47.  
  48. }
  49.  
Título: Re: Compila bien y no corre
Publicado por: czealt en Jueves 1 de Julio de 2010, 06:52
La condicion de salida del  bucle esta mal. Deberia ser:

  do{
  ....
  }while(dividendo != 0);


y tambien debes efectuar este cambio en la linea 34:

  mcd = divisor;

Saludos.
Título: Re: Compila bien y no corre
Publicado por: jairogon en Jueves 1 de Julio de 2010, 14:42
Cita de: "czealt"
La condicion de salida del  bucle esta mal. Deberia ser:

  do{
  ....
  }while(dividendo != 0);


y tambien debes efectuar este cambio en la linea 34:

  mcd = divisor;

Saludos.


Gracias
Título: Re: Compila bien y no corre
Publicado por: czealt en Jueves 1 de Julio de 2010, 19:51
De nada.