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); }; |
Día: 4 de octubre de 2011
Apaño para usar chips incompatibles con placa protoboard
Compre unos chips y resultaron usar otro encapsulado, creo que llamado PDIP, al que normalmente se usa en placas protoboard. Como necesito primero hacer pruebas con él pues idee este apaño. Si todo va bien los siguientes ya irían soldados en un PCB :/
1×08: Pasa H:M:S a Segundos y Segundos a H:M:S
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 |
// 1x08: Muestra un menú que te permita convertir H:M:S a Segundos, Segundos a H:M:S y salir del menú. #include <stdio.h> #include <string.h> main(){ system("clear"); int horas, minutos, segundos, segTotales; char tiempo[9]; do{ printf( "Escriba:\n1. \"horas\" para pasar H:M:S a Segundos.\n2. \"segundos\" si quiere pasar Segundos a H:M:S.\n3. \"salir\" en caso de querer cerrar el programa.\n" ); do{ scanf("%s", tiempo); }while( strcmp( tiempo, "horas" ) != 0 && strcmp( tiempo, "segundos" ) != 0 && strcmp( tiempo, "salir" ) != 0 ); if( strcmp( tiempo, "horas" ) == 0 ){ //Conversión de H:M:S -> Segundos printf("Introduce las horas: "); scanf("%i", &horas); printf("Introduce los minutos: "); scanf("%i", &minutos); printf("Introduce los segundos: "); scanf("%i", &segundos); segTotales = (horas*60*60) + (minutos*60) + (segundos); printf("\nSu tiempo introducido: %ih %im %is corresponde a %i segundos.\n\n\n", horas, minutos, segundos, segTotales); } else if( strcmp( tiempo, "segundos" ) == 0 ){ //Conversión de Segundos -> H:M:S printf("Introduce una cantidad de segundos: "); scanf("%i", &segTotales); horas = (segTotales / 60) / 60; minutos = (segTotales / 60) % 60; segundos= segTotales % 60; printf("El numero de segundos %i corresponde a %i horas %i minutos %i segundos.\n\n\n", segTotales, horas, minutos, segundos); }; }while( strcmp( tiempo, "salir" ) != 0 ); }; |