Está en la página 1de 6

Caso de estudio: Números a Letras

1. ENUNCIADO
Elabore un programa que convierta un número a una letra para descifrar un
código encriptado con números naturales en donde un número contenga el
significado de una letra a la cual es necesaria para comunicarse en una
universidad por medio de los números naturales.

Contexto del caso: En una universidad se ha pedido elaborar un programa para


conocer las calificaciones en números y en letras para que así los padres por
medio de la plataforma tengan un rápido acceso y puedan ver que materias
aprobaron o no sus hijos.

2. ESTRUCTURA DE DATOS
Para solucionar los debemos tener en cuenta los datos de entradas que en este
caso son los números a la cual se les dará el significada de cada letra.

Este programa solo requiere de variables simples. Recuerde que las variables
simples sólo pueden guardar un valor en un instante determinado. Trabaje con
los tipos de datos siguientes:

Datos de entrada: Los números que en este caso son entero.

Datos de entrada Tipo de datos Nombre de las variables

Números Numérico Números

Normas para nombres de variables

● No espacios en blanco
● No caracteres extraños (* +! = ? ¡ ? ~ ^ { })
● Use nombres que se relacionen con el dato que almacena
● Puede utilizar letras con números, o solo letras

Datos de salida: Las letras que se le han asignado a cada número

Datos de Salida Tipo de Datos Nombre de Variable

Palabra Alfanumérico Palabras

3. REQUERIMIENTOS FUNCIONALES:
DATOS DE SALIDA:
● El programa deberá asignarle y dar a conocer el significado que tiene un
número.
Los datos de salida (Teniendo en cuenta las restricciones explicadas en la etapa
de Diseño en los requerimientos instruccionales):

Datos de salida:

Cout<<”su calificacion es”;

4. REQUERIMIENTOS INSTRUCCIONALES:
A continuación damos solución al problema teniendo en cuenta las etapas
necesarias para el Ciclo de vida de Software.

a) Análisis: en este problema nos están pidiendo convertir números a letras


asignándole un número a una letra. Hay que definir que valores nos están
pidiendo y cuáles son los valores de salida que la computadora va a imprimir.
b) Diseño:

int numero;

decena = numero/10;

unidades = numero%10;

si decena es 0
escribir en cada uno de los valores de unidad su representacion detras

si decena >0 y unidades es

c) Implementacion
/***************************************************************************
* Convierte una cantidad de dos digitos a letras. El programa pide al
* usuario que ingrese una cantidad entre 30 y 99, y le devuelve por
* pantalla el equivalente en letras.
* No se tratan los numeros entre 1 y 29 por simplicidad, dado que entre
* estos valores se presentan multiples reglas de excepcion.
* Si no se respeta esta restriccion se obtendran resultados sin sentido.
***************************************************************************/
#include <iostream>

using namespace std;

int main(){

int numero; /* cantidad a convertir */


int decenas; /* numero de decenas en la cantidad a convertir */
int unidades; /* numero de unidades en la cantidad a convertir */

cout<<"Ingrese un numero entero entre 0 y 99: ";


cin>>numero;

decenas = numero / 10;


unidades = numero % 10;

if(decenas == 1){
switch(unidades){
case 0: {cout<<"Diez \n"; break;}
case 1: {cout<<"Once \n"; break;}
case 2: {cout<<"Doce \n"; break;}
case 3: {cout<<"Trece \n"; break;}
case 4: {cout<<"Catorce \n"; break;}
case 5: {cout<<"Quince \n"; break;}
case 6: {cout<<"Dieciseis \n"; break;}
case 7: {cout<<"Diecisiete\n"; break;}
case 8: {cout<<"Dieciocho \n"; break;}
case 9: {cout<<"Diecinueve\n"; break;}
}
}
else{

switch(decenas)
{
case 2:{
if (unidades == 0)
cout<<"Veinte";
else
cout<<"Veinti";
break;
}
case 3: { cout<<"Treinta"; break; }
case 4: { cout<<"Cuarenta"; break; }
case 5: { cout<<"Cincuenta"; break; }
case 6: { cout<<"Sesenta"; break; }
case 7: { cout<<"Setenta"; break; }
case 8: { cout<<"Ochenta"; break; }
case 9: { cout<<"Noventa"; break; }
}
if(unidades>0 && decenas>2)
cout<<" y ";
switch(unidades){
case 0: { cout<<"\n"; break; }
case 1: { cout<<"uno \n"; break; }
case 2: { cout<<"dos \n"; break; }
case 3: { cout<<"tres \n"; break; }
case 4: { cout<<"cuatro\n"; break; }
case 5: { cout<<"cinco \n"; break; }
case 6: { cout<<"seis \n"; break; }
case 7: { cout<<"siete \n"; break; }
case 8: { cout<<"ocho \n"; break; }
case 9: { cout<<"nueve \n"; break; }
}
}

return 0;
}

D. Pruebas:

Casos de prueba (Entrada y salida): Para implementar las notas en números y


letras probamos con los datos de entrada (14,90,10) se deben realizan los
siguientes cálculos:

TABLA DE DATOS PARA PRUEBAS

Número Palabra
14 CATORCE

90 NOVENTA

10 DIEZ

5. ENTREGABLES:
a. Código fuente (NumerosALetras-T000000.cpp)
b. El código fuente debe estar documentado.
c. Impresión del pantallazo con los datos de salida.

También podría gustarte