Вы находитесь на странице: 1из 10

TRABAJO FINAL DE PROGRAMACIN

MARCO ULISES ARCOS SNCHEZ.


Lic. en Matemticas, rea: Computacin.














V{|tv|z? Zxx? `|vN ]| wx ECDDA

ARCHIVADOR O ARCHIVERO

El presente trabajo, describe el programa final de la materia Programacin Orientada a
Objetos.

Dicho programa consiste en un Archivador o Archivero, el cual como su nombre lo
indica, archiva o permite la ejecucin de varios programas, mediante un men al que se
accede a travs del teclado, haciendo referencia al programa deseado con opciones
dadas en nmeros del 1 al 5 (la opcin 6 funciona para salir del programa o men
principal). Cabe sealar que su ejecucin y manipulacin es en consola de Windows o
Terminal de Linux, y no emplea diseo grfico como interfaz de interaccin, esto se
debe a que el tiempo previsto para el trmino y desarrollo del mismo, fue limitado por el
adelanto de fin de semestre que se indico por parte de la escuela.


Imagen del men principal para elegir que programa se desea ejecutar.

Primeramente se le da la bienvenida al usuario final, indicndole que seleccione las
opciones o programas con los cuales puede interactuar y/o consultar. Dichos
programas incluidos en este Archivador son los siguientes:

1. Operaciones Aritmticas Bsicas.

2. Operaciones de Comparacin u Orden.

3. Conversin de un Numero Decimal en las Principales Bases Numricas.

4. Ver Tabla de Multiplicar de un Nmero dado (del 1 al 10).

5. Tabla Cdigo ASCII entre un intervalo de dos nmeros enteros.

6. Salir.

Una vez ejecutado el programa y como se dijo anteriormente, el usuario elije su opcin
presionando desde el teclado un nmero del 1 al 5.
A continuacin, una breve descripcin de los programas incluidos en dicho Archivador:

1. Operaciones Aritmticas Bsicas.

Como su nombre lo dice, son las operaciones elementales bsicas que se han
estudiado desde inicios de la educacin, las cuales son suma, resta, multiplicacin y
divisin. Este programa est limitado a dos operandos y una slo operacin, es decir no
permite la combinacin entre ellas, ni el uso de parntesis para realizar ms de una, y
la manera en que se debe expresar es de forma lineal, o sea; a+b, a-b, a*b, a/b; as
como tambin, los resultados que arroja o devuelve son estrictamente nmeros enteros.

Cabe aclarar, que una vez realizada una operacin el programa automticamente
regresa al men principal, donde para volver hacer otra se debe ingresar una vez ms a
la opcin 1.



2. Operaciones de Comparacin u Orden.

Sin mucho que decir, este programa permite hacer comparaciones de valores de tipo
numrico y sirve para expresar o indicar si un nmero es mayor, menor o igual que otro.
ste tambin est restringido a comparar solamente dos nmeros, y no permite hacer
comparaciones entre cantidades o expresiones donde intervenga alguna operacin
aritmtica.


3. Conversin de un Numero Decimal en las Principales Bases Numricas.

Este programa convierte un nmero decimal ingresado desde el teclado, en las
principales bases numricas, las cuales son: Decimal, Hexadecimal, Binaria y Octal.
Cabe aclarar que la conversin es de manera automtica, es decir no permite escoger
en que base nicamente se desea trabajar, sino que una vez que se ingresa el nmero,
lo convierte en las 4 bases mencionadas anteriormente.


Ejecutando un cambio a diferentes bases.

4. Ver Tabla de Multiplicar de un Nmero dado (del 1 al 10).

Este programa permite ver las tablas de multiplicar, bsicas de nivel primaria, de un
nmero comprendido entre 1 y 10. Al ingresar a esta opcin, se le pide al usuario
ingrese el nmero y mostrar la tabla de multiplicar de ste, una vez mostrada se
presiona la tecla enter para terminar su ejecucin y volver al men principal.


Mostrando la tabla de multiplicar de un nmero entre 1 y 10





5. Tabla Cdigo ASCII entre un intervalo de dos nmeros enteros.

En este programa se muestra la tabla de cdigo ASCII entre un intervalo, es decir, el
usuario teclea dos nmeros y el programa, mediante una tabla, devuelve las
conversiones o los valores que corresponden a todos los nmeros enteros que se
encuentren en el intervalo que el usuario dio. Al igual que los otros, una vez que se
ejecut esta accin, basta un enter para regresar al men principal.



6. La opcin 6, no se necesita aclarar, puesto que es la de salir del men principal o el
termino de la ejecucin del Archivador o Archivero.



De manera general, esto es un resumen del programa que se plantea como archivador
de otros subprogramas. Pero hay algo muy importante que se debe aclarar:

Puesto que el tiempo en el que se desarroll este programa, fue muy poco a lo previsto,
adems que se tenan otras actividades escolares, la metodologa que se utiliz para la
programacin no fue del todo mediante Clases, si no que fue usando estructuras que
encierran a cada subprograma en casos, y funciones mediante ciclos.

Luego entonces, se pretende mejorar el presente, teniendo como base un diseo UML,
el cual se muestra a continuacin:
ESQUEMA UML




CDIGO DE PROGRAMA

#include<stdio.h>
#include<conio.h>
#include<iostream>
#include<stdlib.h>
#include<cmath>
#include<iomanip>
#include<string.h>
#include<dos.h>

using namespace std;

//Funcion main principal
int main()
{
int opcionprincipal;//Variable para el men principal
int numero1, numero2;//Variables para el primer programa (Operaciones Aritmticas Bsicas)
char operacion, cadena[80];//Variable para el primer programa (Operaciones Aritmticas Bsicas)
int numerototal, numeros, mayor, medio, menor, suma, i, a, b, j, x, n;//Variables para el segundo programa(Operaciones de
Comparacin u Orden (Menor, Medio, Mayor))
//Para el tercer programa (Conversin de un Nmero Decimal) se usa la misma variable i del anterior, que en realidad no fue
necesario usarla.
//Para el cuarto programa (Tablas de Multiplicar) se usan las variables i, j y x declaradas en las del segundo programa.
int num1, num2, k;
do
{
cout <<"\n\t\t\ t B I E N V E N I D O ";
cout <<"\n\n\nSeleccione la opcion que desee ejecutar:\n\n";
cout <<"[1].- Operaciones Aritmeticas Basicas.\n";
cout <<"[2].- Operaciones de Comparacion u Orden.\n";
cout <<"[3].- Conversion de un Numero Decimal en las Principales Bases Numericas.\n";
cout <<"[4].- Ver Tabla de Multiplicar de un Numero dado (del 1 al 10).\n";
cout <<"[5].- Tabla Codigo ASCII entre un intervalo de dos numeros enteros.\n";
cout <<"[6].- Salir.\n";
cout <<"\nSu opcion es: ";
cin >>opcionprincipal;

switch(opcionprincipal)
{
case 1:
system("cls");
cout <<"\n\n\n\n\n\n\n\n\nIntroduzca la operacion a realizar, usando una expresion lineal de la forma a+b\n";
cout <<"\n(El programa esta limitado a dos operandos, por su comprension MUCHAS GRACIAS!)\n\n";
cin >>numero1 >>operacion >>numero2;
switch(operacion)
{
case '+': cout <<endl <<setw(37) <<numero1 <<operacion <<numero2 <<" =" <<numero1 +numero2 <<
endl;
getch();
break;
case '-': cout <<endl <<setw(37) <<numero1 <<operacion <<numero2 <<" =" <<numero1 - numero2 <<
endl;
getch();
break;
case '*': cout <<endl <<setw(37) <<numero1 <<operacion <<numero2 <<" =" <<numero1 * numero2 <<
endl;
getch();
break;
case '/': cout <<endl <<setw(37) <<numero1 <<operacion <<numero2 <<" =" <<numero1 / numero2 <<
endl;
getch();
break;
case '%': cout <<endl <<setw(37) <<numero1 <<operacion <<numero2 <<" =" <<numero1 % numero2
<<endl;
break;
}

break;
case 2:
system("cls");
cout <<endl <<endl <<endl <<endl <<endl <<endl <<endl <<endl <<endl <<setw(52) <<"Ingrese el Primer
Numero: ";
//cout <<"\n\n\n\n\n\n\n\n\nIngrese el Primer Numero: ";
cin >>a;
cout <<endl <<setw(53) <<"Ingrese el Segundo Numero: ";
//cout <<"\nIngrese el Segundo Numero: ";
cin >>b;
if (a==b)
cout <<endl <<endl <<setw(52)<<"Los numeros son iguales" <<endl;
else
if (a >b)
cout <<endl <<endl <<setw(37) <<a <<" Es mayor"<<endl;
else
cout <<endl <<endl <<setw(37) <<b <<" Es mayor" <<endl;
getch();
break;
case 3:
system("cls");
char buffer [33];
printf ("\n\n\n\n\n\n\n\t\t\tIntroduzca un Numero Decimal: ");
scanf ("%d",&i);
itoa (i,buffer,10);
printf ("\n\n\n\t\t\t En Base Decimal es: %s\n",buffer);
itoa (i,buffer,16);
printf ("\n\t\t\t En Base Hexadecimal es: %s\n",buffer);
itoa (i,buffer,2);
printf ("\n\t\t\t En Base Binaria es: %s\n",buffer);
itoa (i,buffer,8);
printf ("\n\t\t\t En Base Octal es: %s\n",buffer);
getch();
break;
case 4:
do
{
system("cls");
printf("\n\n\n\n\n\n\n Introduce Un Numero Del 1 al 10, Para Visualizar Su Tabla De Multiplicar: ");
scanf("%d", &x);
}while((x<1) || (x>10));
if(x==1)
{
for (i=1; i<=1; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==2)
{
for (i=2; i<=2; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==3)
{
for (i=3; i<=3; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==4)
{
for (i=4; i<=4; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==5)
{
for (i=5; i<=5; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==6)
{
for (i=6; i<=6; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==7)
{
for (i=7; i<=7; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==8)
{
for (i=8; i<=8; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==9)
{
for (i=9; i<=9; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
if(x==10)
{
for (i=10; i<=10; i++)
{
for (j=1; j<=10; j++)
{
printf("\n%d*%d=%d", i,j,i*j);
}
}
}
getch();
break;
case 5:
system("cls");
printf("Introduzca Un Primer Numero: ");
scanf("%d", &num1);
printf("\nIntroduzca Un Segundo Numero: ");
scanf("%d", &num2);
printf("\n\t\tDECIMAL OCTAL HEXADECIMAL CARACTER\n");
for(k=num1; k<=num2; k++)
{
printf("\t\t %d %o %x %c\n ",k,k,k,k);
//delay(50);
}
getch();
break;
case 6:
cout <<"\n\n\n\t\t\t Presione ENTER! para salir.\n\n";
getch();
break;

default:
cout <<"\n\t\t\tEsta Opcion no esta en el Menu.\n";
getch();
break;
}
system("cls");
}while (opcionprincipal!=6);
return 0;
}

Вам также может понравиться