//----------------------------------------------------------------- // m.c.d. de tres nombres enters positius // // Joan Aranès Clua // data: 17/12/2001 // // Aquest programa calcula el m.c.d.{m,n,p} //----------------------------------------------------------------- #include <stdio.h> //declaració de la funció que calcula el m.c.d. de dos n. enters positius: int mcd(int,int); // void main() { int m,n,p; // variables corresponents a les dades d'entrada printf("Introdu\x08Bu tres nombres enters separats per un espai\n"); scanf("%d %d %d",&m,&n, &p); printf("\n\nmcd(%d,%d,%d) = %d\n",m,n,p, mcd(mcd(m,n),p)); } int mcd(int x,int y) { int reste; // reste i quocient de les divisions int dividend,divisor; // DIVISIONS SUCCESSIVES // primera divisió: dividend=(x>y)?x:y; divisor=(y<x)?y:x; reste=dividend%divisor; // per a les divisions següents // s'asigna al nou divisor el valor de l'antic reste // fins arribar a una divisió amb reste nul // el divisor d'aquesta darrera divisió és el m.c.d.{x,y} while(reste>0) { dividend=divisor; divisor=reste; reste=dividend%divisor; // } return divisor; }
Un blog con cuestiones, ejercicios, problemas, aplicaciones y comentarios relacionados con los contenidos de Matemáticas del primer curso de Bachillerato en las modalidades de Ciencias y Tecnología
lunes, 1 de octubre de 2001
Cálculo del máximo común divisor de tres números enteros positivos. Un ejercicio de programación en C/C++
Etiquetas:
gcd,
máximo común divisor,
mcd,
teoría elemental de números
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario
Gracias por tus comentarios