1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
// 1x24: Calcula el mínimo como un múltiplo de dos números. #include <stdio.h> // Función que calcula el M.C.M.: int mcm( int numA, int numB ){ // Precondición: Se ha de recibir dos parámetros de tipo entero. // Poscondición: Se devolverá un parámetro entero. int A=numA, B=numB, i, j; for( i=1; A!=B; i++ ){ A = numA * i; B = numB; for( j=1; j<=numA && A!=B; j++ ){ B = numB * j; }; }; return A; }; // Función ordena dos números: float ordDosNum ( float *numA, float *numB, int bol){ // Precondición: numA y numB deben ser parámetros de tipo real, Bol debe de ser un entero/booleano con valor de 0 ó 1 // Poscondición: Se modifica el orden de numA y numB a elección: si bol=0 orden ascendente, bol=1 orden descendente. float x; if( bol == 0 && *numA > *numB ){ x = *numA; *numA = *numB; *numB = x; } else if( bol == 1 && *numA < *numB ){ x = *numB; *numB = *numA; *numA = x; }; }; main(){ system("clear"); int numeroA, numeroB; printf("Introduzca dos numeros para calcular su minimo como un multiplo: \n Primer numero: "); scanf( "%i", &numeroA ); printf(" Segundo numero: "); scanf( "%i", &numeroB ); //Ordena números menor/mayor ordDosNum( &numeroA , &numeroB, 0 ); printf(" El m.c.m. de %i y %i es: %i\n\n", numeroA, numeroB, mcm(numeroA, numeroB) ); }; |