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 |
// 1x13: De un número introducido se pasa a su valor absoluto. #include <stdio.h> // Función que calcula el valor absoluto y devuelve el resultado. float absoluto( float num ){ // Precondición: Se recibe un parámetro de tipo real. // Poscondición: Se devuelve el mismo número pero en positivo. if( num < 0 ){ num *= -1; }; return num; }; main(){ system("clear"); float numero; printf("Introduzca un numero para calculara su valor absoluto: "); scanf( "%g", &numero ); printf("El valor absoluto es: %g\n\n", absoluto(numero) ); }; |
Etiqueta: DAM
Desarrollo de Aplicaciones Multiplataforma
1×12: Realiza la conversión de grados Celsius a Fahrenheit
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 |
// 1x12: Realiza la conversión de grados Celsius a Fahrenheit y viceversa. #include <stdio.h> main(){ system("clear"); char menu; float C, F; do{ printf("Elija 1, 2 o 3 dependiendo de la opción deseada:\n\n 1. Pasar grados Celsius a Fahrenheit\n 2. Pasar Fahrenheit a Celsius\n 3. Salir\n\n"); do{ scanf( "%c", &menu ); } while( menu != '1' && menu != '2' && menu != '3' ); switch( menu ){ case '1': //C -> F printf("Indique los grados Celsius: "); scanf( "%g", &C ); F = C * 9/5 + 32; printf("Los %gC corresponden a %gF\n\n", C, F ); break; case '2': // F -> C // printf("Indique los grados Fahrenheit: "); scanf( "%g", &F ); C = (F-32) * 5/9; printf("Los %gF corresponden a %gC\n\n", F, C ); break; }; } while( menu != '3' ); //Salir }; |
1×11: Hacer la conversión de Metros a Pies
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
// 1x11: Hacer la conversión de Metros a Pies pasando por pulgadas. /* 1 metro = 39.3700787 pulgadas 12 pulgadas = 1 pie */ #include <stdio.h> main(){ system("clear"); float metros, pies; printf("Deme un numero de Metros para pasarlos a Pies: "); scanf( "%g", &metros); pies = (metros*39.3700787) / 12; printf( "Los %g Metros corresponden a %g Pies.\n\n", metros ,pies ); }; |
1×10: Muestra de forma ordenada tres números
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); }; |
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 ); }; |
1×07 y 1×09: Convierte euros en pesetas y viceversa
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 |
// 1x07: Muestra un menú que te permite convertir euros a pesetas y viceversa además de poder salir del menú. #include <stdio.h> #include <string.h> //Biblioteca para tratamiento de cadenas #define pesetas 166.386 //Se define una constante, durante el tiempo de compilacion se sustituira la palabra pesetas por el valor 166.386 main(){ system("clear"); float moneda; char conversion[8]; //Se crea un array de 8 celdas //puts(conversion); //Permite imprimir un cadena+salto de linea. do{ //Obliga al usuario a elegir entre "euros", "pesetas" o "salir" como únicas opciones. printf( "Escriba:\n1. \"euros\" si quiere pasar Pesetas a Euros.\n2. \"pesetas\" si quiere pasar Euros a Pesetas.\n3. \"salir\" para salir\n" ); do{ scanf("%s", conversion); //Para los arrays no se usa el carácter &. }while( strcmp( conversion, "euros" ) != 0 && strcmp( conversion, "pesetas" ) != 0 && strcmp( conversion, "salir" ) != 0 ); // La función strcmp() compara dos cadenas, si son iguales devuelve 0 if( strcmp( conversion, "euros" ) == 0 ){ //Conversión de Pesetas -> Euros printf( "Introduzca el valor de Pesetas que quiere convertir a Euros: " ); scanf( "%g", &moneda ); printf( "La cantidad de %g de Pesetas son %.2f Euros.\n\n\n", moneda, moneda/pesetas ); } else if( strcmp( conversion, "pesetas" ) == 0 ){ //Conversión de Euros -> Pesetas printf( "Introduzca el valor de Euros que quiere convertir a Pesetas: " ); scanf( "%g", &moneda ); printf( "La cantidad de %.2f de Euros son %g Pesetas.\n\n\n", moneda, moneda*pesetas ); }; }while( strcmp( conversion, "salir" ) != 0 ); }; |
1×06: Dame un número de segundos y lo paso 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 |
// 1x06: A partir de una cantidad de segundos se devolverá expresada en H:M:S. /* / División entera % Resto de la división entera */ #include <stdio.h> main(){ system("clear"); int segTotales, horas, minutos, segundos; 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); }; |
1×05: Dame H:M:S y devuelvo segundos
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 |
// 1x05: A partir de una cantidad de tiempo expresada en H:M:S se devolverá expresada en S. #include <stdio.h> main(){ system("clear"); int horas, minutos, segundos, totalSegundos; printf("Introduce las horas: "); scanf("%i", &horas); printf("Introduce los minutos: "); scanf("%i", &minutos); printf("Introduce los segundos: "); scanf("%i", &segundos); totalSegundos = (horas*60*60) + (minutos*60) + (segundos); printf("\nSu tiempo introducido: %ih %im %is corresponde a %i segundos.\n\n\n", horas, minutos, segundos, totalSegundos); }; |