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 |
// 1x10: Se piden tres números al usuario y se muestran ordenados, intercambiando variables. #include <stdio.h> // 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"); float numeroA, numeroB, numeroC; printf("Inserte tres numeros para que se los muestre de forma ordenada.\n Primer numero: "); scanf("%g", &numeroA); printf(" Segundo numero: "); scanf("%g", &numeroB); printf(" Tercer numero: "); scanf("%g", &numeroC); if( numeroA > numeroB ){ // Ordena AyB: 0=ascend, 1=descend. ordDosNum( &numeroA , &numeroB, 0 ); }; if( numeroA > numeroC ){ ordDosNum( &numeroA , &numeroC, 0 ); }; if( numeroB > numeroC ){ ordDosNum( &numeroB , &numeroC, 0 ); }; printf("\n El orden correcto de los numeros es %g, %g y %g\n\n", numeroA, numeroB, numeroC); }; |