
Máximo común divisor
C/Visual C
Publicado el 31 de Agosto del 2006 por Yelinna Pulliti (5 códigos)
86.228 visualizaciones desde el 31 de Agosto del 2006
Código realizado en C++ que calcula el máximo común divisor de un par de números superior a 1.
#include <conio.h>
#include <iostream.h>
int main(int argc, char* argv[])
{ int a, b, x, z, y=1, i=2;
cout<<"ingrese primer numero: \n";
cin>>a;
cout<<"ingrese segundo numero: \n";
cin>>b;
if (a<b){x=a; z=b;} else {x=b; z=a;}
do {
if (x%i==0 && z%i==0){
y=y*i;
x=x/i; z=z/i;
i=2;
}
else i++;
}while(i<=x);
cout<<"el MCD es "<<y<<"\n";
getch(); getch();
return 0;
}
Comentarios sobre la versión: Versión 1 (7)
/*maximo comun divisor de dod numeros*/
#include<stdio.h>
int main() {
int a,b,i,m,mcd;
printf("Programa que calcula el Maximo Comun divisor de 2 números:\n");
printf("Introduce el primer numero: ");
scanf("%d",&a);
printf("Introduce el segundo numero: ");
scanf("%d",&b);
if (a<b) {
m = a;
} else {
m = b;
}
for (int i=1; i<=m;i++) {
if (a%i==0 && b%i==0) {
mcd=i;
}
}
printf("El maximo comun divisor es: %8d" , mcd);
printf("\n");
printf("\n");
printf("\n");
}
#include <iostream.h>
using namespace std;
#include <conio.h>
int main(int argc, char* argv[])
{ int a, b, x, z, y=1, i=2;
cout<<"Calcula el MCD entre 2 numeros"<<endl;
cout<<"Ingrese primer numero: ";
cin>>a;
cout<<"Ingrese segundo numero: ";
cin>>b;
if (a<b){x=a; z=b;} else {x=b; z=a;}
do {
if (x%i==0 && z%i==0){
y=y*i;
x=x/i; z=z/i;
i=2;
}
else i++;
}while(i<=x);
cout<<"El MCD entre "<<a<<" y "<<b<<" es "<<y<<"\n";
getch();
return 0;
}
Mi pregunta es: ¿para que sirve lo que esta en las parentesis del main?
(int argc, char* argv[]) ???? Muchas Gracias...
/*Programa mcm*/
#include<stdio.h>
#include<conio.h>
int main (void)
{
int a,b,i=1,j=1;
printf("Este programa calcula el máximo común divisor de dos valores ");
printf("\n\nIngresa el primer número ");
scanf("%d",&a);
printf("\n\nIngresa el segundo número ");
scanf("%d",&b);
if(a>b)
{
while(i<=a/2)
{
i++;
if(a%i==0)
if(b%i==0)
j=i;
}/*fin while*/
printf("%d",j);
}/*fin if*/
else
if(a==b)
printf("%d",a);
else
{
while(i<=b/2)
{
i++;
if(b%i==0)
if(a%i==0)
j=i;
}/*fin while*/
printf("%d",j);
}/*fin else*/
getch();
}