Ejercicio de lenguaje C - De número a letras
Escribir en lenguaje C un programa que:
1º) Pida por teclado un número (dato entero) del 1 al 10.
2º) Muestre por pantalla su equivalente en letras (dato cadena).
Nota: si el número introducido es menor que 1 ó mayor que 10, se mostrará el mensaje: "ERROR: El número debe ser >= 1 y <= 10.".
En pantalla se mostrará, por ejemplo:
Si el número introducido es incorrecto, se visualizará el mensaje de error:
Solución 1:
/* Programa: De número a letras (Solución 1) */
#include <conio.h>
#include <stdio.h>
int main()
{
int numero;
printf( "\n Introduzca un n%cmero entero (1-10): ", 163 );
scanf( "%d", &numero );
if ( numero >= 1 && numero <= 10 )
switch ( numero )
{
case 1 : printf( "\n uno" );
break;
case 2 : printf( "\n dos" );
break;
case 3 : printf( "\n tres" );
break;
case 4 : printf( "\n cuatro" );
break;
case 5 : printf( "\n cinco" );
break;
case 6 : printf( "\n seis" );
break;
case 7 : printf( "\n siete" );
break;
case 8 : printf( "\n ocho" );
break;
case 9 : printf( "\n nueve" );
break;
case 10 : printf( "\n diez" );
}
else
printf( "\n ERROR: El n%cmero debe ser >= 1 y <= 10.", 163 );
getch(); /* Pausa */
return 0;
}
Solución 2:
/* Programa: De número a letras (Solución 2) */
#include <conio.h>
#include <stdio.h>
int main()
{
int numero;
printf( "\n Introduzca un n%cmero entero (1-10): ", 163 );
scanf( "%d", &numero );
switch ( numero )
{
case 1 : printf( "\n uno" );
break;
case 2 : printf( "\n dos" );
break;
case 3 : printf( "\n tres" );
break;
case 4 : printf( "\n cuatro" );
break;
case 5 : printf( "\n cinco" );
break;
case 6 : printf( "\n seis" );
break;
case 7 : printf( "\n siete" );
break;
case 8 : printf( "\n ocho" );
break;
case 9 : printf( "\n nueve" );
break;
case 10 : printf( "\n diez" );
break;
default : printf( "\n ERROR: El n%cmero debe ser >= 1 y <= 10.", 163 );
}
getch(); /* Pausa */
return 0;
}
Solución 3:
/* Programa: De número a letras (Solución 3) */
#include <conio.h>
#include <stdio.h>
#include <string.h>
int main()
{
int numero;
char letras[7];
printf( "\n Introduzca un n%cmero entero (1-10): ", 163 );
scanf( "%d", &numero );
switch ( numero )
{
case 1 : strcpy( letras, "uno" );
break;
case 2 : strcpy( letras, "dos" );
break;
case 3 : strcpy( letras, "tres" );
break;
case 4 : strcpy( letras, "cuatro" );
break;
case 5 : strcpy( letras, "cinco" );
break;
case 6 : strcpy( letras, "seis" );
break;
case 7 : strcpy( letras, "siete" );
break;
case 8 : strcpy( letras, "ocho" );
break;
case 9 : strcpy( letras, "nueve" );
break;
case 10 : strcpy( letras, "diez" );
}
if ( numero >= 1 && numero <= 10 )
printf( "\n %s", letras );
else
printf( "\n ERROR: El n%cmero debe ser >= 1 y <= 10.", 163 );
getch(); /* Pausa */
return 0;
}