Computing">
Nothing Special   »   [go: up one dir, main page]

Documento Proyecto Programacion

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 23

UNIVERSIDAD PRIVADA DOMINGO

SAVIO

CARRERA DE INGENIERIA EN REDES


Y TELECOMUNICACION
Título: Desarrollo de un programa que realiza
operaciones en base a la programacion
c++
Materia: Programación I
Modulo: Tercer modulo
Turno: Tarde
Nombre: Ortega Sánchez Gustavo Ariel
Flores Mercado Matías Alexander
León Cano Rodrigo
Docente: Alex Fernando Jiménez Zubieta
Fecha de Entrega:
Sucre-Bolivia
2022
DESARROLLO DE UN PROGRAMA QUE REALIZA
DIVERSAS OPERACIONES EN BASE A
LA PROGRAMACIÓN C++
CAPITULO I
INTRODUCCION
1.1 Antecedentes
Utilizando los fundamentos básicos de la programación en c++, el lenguaje de
programación c++ empieza en los años 70 con un programador de nombre Dennis
Ritchie que trabajaba en los laboratorios de AT&T Bel.
Creo primeramente el lenguaje C que corría, corría en computadoras PDP-7 y PDP-11
con el sistema operativo UNIX. Pero los verdaderos alcances de lo que sería éste, se
verían tiempo después cuando Dennis volvió a escribir el compilador C de UNIX en el
mismo C, y luego Ken Thompson (diseñador del sistema) escribió UNIX completamente
en C y ya no en ensamblador.
El auge de C comenzaba. Cuando fueron comerciales las computadoras personales,
empezaron a diseñarse varias versiones de compiladores C, éste se convirtió en el
lenguaje favorito para crear aplicaciones.
En base a esto, evoluciono el lenguaje de programación C. Fue en los mismos
laboratorios de AT&T Bell, que se desarrolló C++ buscando un lenguaje más optimo
con las opciones de programación orientada a objetos. Ahora el desarrollo del estándar
de C++ acaparaba la atención de muchos de los diseñadores. En 1995, se incluyeron
algunas bibliotecas de funciones al lenguaje C. Y con base en ellas, 1998 se pudo
definir el estándar de C++. (Cuicas, p. 27)
La matemática es una herramienta que está constituida para resolver diversos
problemas teniendo en cuenta siempre que esta sirve como herramienta de cálculo,
para lograr un desarrollo del pensamiento lógico y como un lenguaje universal capaz
de contribuir al desarrollo y pensamiento de otras áreas propias en su propio campo
respectivo.
La matemática es una herramienta de trabajo y, además es una disciplina fundamental
en la formación de un profesional.
El programa que se desarrollará tendrá la función de mostrarnos distintos
procedimientos de operaciones utilizando el lenguaje de programación c++ para
realizar el mismo.

Sucre-Bolivia
2022
Se realizará un programa capaz de realizar de forma automática cualquier proceso de
una operación seleccionada por el usuario, con este programa podrás solicitar la
operación requerida para optimizar cualquier tarea que desees realizar.
El programa que se desarrolló tendrá las funciones más básicas y fundamentales que
tendrá como propósito general desarrollar un modelo de programa de recepción de
datos basados en un menú opcional. Ofreciendo al usuario un uso muy sencillo y
comprensible de esta.

1.2 Planteamiento del Problema


Desarrollar un proceso en lenguaje C++ que opera sobre un procesador hipotético
simulando el procedimiento que este tendrá, que se ejecutará en una computadora
personal, tal proceso consiste en el desarrollo del funcionamiento de un menú de
opciones con diversas operaciones. Implementando una serie de estructuras lógicas.

1.3 Objetivos
1.3.1 Objetivo General
Utilizar las distintas estructuras lógicas introducidas en base a la programación c++
para desarrollar un programa practico y eficiente que realice diversas operaciones
mediante un menú de selección.
1.3.2 Objetivos Específicos
 Realizar un programa optimo y funcional que se pueda ejecutar.
 Mediante lo aprendido en la materia desarrollar un programa que optimice y
brinde una facilidad de selección mediante un menú de opciones.
 Determinar las operaciones para el desarrollo del programa a través de un
análisis de requerimientos
 Usar las estructuras de control aprendidas en la materia para realizar el
programa

1.4 Métodos de investigación


1.4.1 Análisis y Síntesis
Se usará este método para hacer un análisis en general de toda la información
recaudada y se rescatará información esencial que sea útil y contribuya a resolver el
problema ya planteado, también ayude a lograr los objetivos mediante la información
que sea relevante para este caso.
1.4.2 Inductivo y Deductivo

Sucre-Bolivia
2022
mediante el desarrollo del trabajo se realizarán decisiones que ayude a tomar mejores
decisiones al momento de usar la información de programación y poder tener nuevos
juicios e ideas que ayude a tener un programa que sea óptimo.

CAPITULO II
MARCO TEORICO CONCEPTUAL
El lenguaje de programación C++ es un lenguaje que proviene de la extensión del
lenguaje C para que pudiese manipular objetos.
Algunas características más importantes que posee el lenguaje C++ son.
Compatibilidad con bibliotecas, a través de bibliotecas hay muchas funciones que están
disponibles y que ayudan a escribir el código más rápidamente.
Es didáctico porque aprendiendo programación del lenguaje C++ luego es mucho más
fácil aprender lenguajes como Java, PHP, Java Script.
El foco de la programación C++ está orientada a objetos en la manipulación y
configuración de sus distintos parámetros y propiedades.
(Marisol, Edie, Luisa, & Zulma, 2007) (Marisol, Edie, Luisa, & Zulma, 2007)La base de nuestra
programación estará definida en el lenguaje C++ donde se introducen características
nuevas respecto al Pascal o C.
Estudiaremos el soporte del lenguaje del C++ a la programación imperativa, a la forma
de definir y utilizar los tipos de datos, las variables, las operaciones aritméticas, las
estructuras de control y las funciones.
Tipos de datos y operadores
Los tipos elementales definidos en C++ son:
char, short, int, long, que representan enteros de distintos tamaños (los caracteres son
enteros de 8 bits).
float, double y long double, que representan números reales (en coma flotante).
Para declarar variables de un tipo determinado escribimos el nombre del tipo seguido
del de la
variable. Por ejemplo:
int i;
double d;
char c;

Sucre-Bolivia
2022
Sobre los tipos elementales se pueden emplear los siguientes operadores aritméticos:
+ (más, como signo o como operación suma)
- (menos, como signo o como operación resta)
* (multiplicación)
/ (división)
% (resto)
Y los siguientes operadores relacionales:
== (igual)
! = (distinto)
< (menor que)
> (mayor que)
<= (menor o igual que)
>= (mayor o igual que)

El operador de asignación se representa por =.


En C++ se suelen considerar como tipos derivados los construidos mediante la
aplicación de un operador a un tipo elemental o compuesto en su declaración. Estos
operadores son:
* Puntero
& Referencia
[] Vector (Array)
() Función
Los tipos compuestos son las estructuras (struct), las uniones (unión) y las clases
(class).
2.1 Estructuras de Control
Como estructuras de control el C++ incluye las siguientes construcciones
Condicionales.
if instrucción de selección simple
switch instrucción de selección múltiple
Bucles:
do-while instrucción de iteración con condición final

Sucre-Bolivia
2022
while instrucción de iteración con condición inicial
for instrucción de iteración especial (similar a las de repetición con
contador)
De salto:
break instrucción de ruptura de secuencia (sale del bloque de un bucle o
instrucción condicional)
continue instrucción de salto a la siguiente iteración (se emplea en bucles
para saltar a la posición donde se comprueban las condiciones)
goto instrucción de salto incondicional (salta a una etiqueta)
return instrucción de retorno de un valor (se emplea en las funciones)

2.1.1 La condicional
 If
es una instrucción de decisión que se empieza escribiendo la sentencia (if) diciendo
que si se cumple la condición que se encuentra seguida dentro de paréntesis después
de la sentencia (if), así evaluando un proceso que sucedió anteriormente y si se cumple
realiza el proceso que se encuentra dentro del bloque de la sentencia y si no se cumple
pasa a la siguiente orden sin ejecutar el proceso que se encuentra dentro de la
sentencia. (Paszniuk, 2013)
 Else
Esta instrucción tiene una similitud con la anterior ya que esta la sigue a la sentencia
(if) ya que si esta condición no se llega a cumplir caso contrario se va a realizar el
proceso dentro del bloque del (Else) y si no es el caso se llega a ignorar esta.
(Paszniuk, 2013).
2.1.2 Estructura de control repetitiva (for)
La estructura repetitiva For (desde) es aquella en la que el número de iteraciones se
conoce por anticipado, y por ello no se precisa poner ninguna condición de salida para
detener el bucle. En su lugar un contador cuenta el número de iteraciones fijas y se
termina cuando llega al valor final previamente definido.
2.1.3 Estructura de control repetitiva (while)
Primeramente realiza un análisis ordenes ya procesadas anteriormente y luego pasa a
la estructura while y si su condición ya ordenada anteriormente resulta ser verdadera
entra en el bloque del while y realiza los procesos dentro de este y al finalizar vuelve a
analizar la misma condición del while y si resulta ser otra vez cierta nuevamente entra
en el bucle, también puede haber una posibilidad que al analizar la condición por

Sucre-Bolivia
2022
primera vez esta puede llegar a ser falsa y no llegue a entra en el while nunca. (Muñoz,
2022).
2.1.4 Estructura de control repetitiva (do while)
La sentencia (hacer mientras) crea un bucle que ejecuta una sentencia especificada, hasta que
la condición de comprobación se evalúa como falsa. La condición se evalúa después de
ejecutar la sentencia, dando como resultado que la sentencia especificada se ejecute al menos
una vez.

CAPITULO III
PROPUESTA
Desarrollar un menú de selección que realiza las siguientes operaciones
a. Implemente un programa que nos diga si un número ha conseguido o no el
reintegro en el sorteo de la lotería nacional. Un número consigue el reintegro si
su primera o última cifra coincide con la primera o última cifra del número
agraciado en el sorteo.

b. Realizar un programa que muestre los pagos que recibirá un trabajador por cada
hora laboral en base a la hora del día en que trabaja. El usuario deberá escribir
el número de horas trabajadas en cada uno de los horarios y el programa
determinará el total de dinero a recibir por el trabajador y también dirá si ganó
más dinero por horas extras que por horas de oficina trabajadas o viceversa, o si
el trabajador ganó exactamente lo mismo por horas extras que por horas de
oficina.

c. Elabore un programa que indique si un número es perfecto. Un número es


perfecto si es igual a la suma de sus divisores. Por ejemplo, 6 es un número
perfecto ya que 6 = 1+2+3.

d. Diseñe un programa que indique si dos números son amigos. Dos números son
amigos si cada uno es igual a la suma de divisores del otro excepto el propio
número. Por ejemplo, 284 y 220 son amigos

e. Que rellene un array con los números primos comprendidos entre 1 y 100 y los
muestre en pantalla en orden ascendente

CAPITULO IV

Sucre-Bolivia
2022
RESULTADOS
4.1 Codificación del algoritmo en lenguaje de programación
#include <iostream>
using namespace std;
void reintegrado(){
int v[5],n;
bool x=false;
cout<<"\t\t\t\t ----------REINTEGRADO DE UN NUMERO EN UN
SORTEO------------"<<endl;
cout<<"\t\t\t\t Ingrese su numero de 5 cifras para verificar si
consiguio"<<endl;
cout<<"\t\t\t\t el reintegro en la loteria nacional : ";
do{
cin>>n;
cout<<"\t\t\t\t -----------------------------------------------------------"<<endl;
if (n<100000 && n>=10000){
cout<<"\t\t\t\t El numero agraciado de la LOTERIA NACIONAL
es [24719]"<<endl;
for (int i=0;n>0;i++){
v[i]=n%10;
n=n/10;
}
if (v[0]==9 || v[0]==2 || v[4]==2 || v[4]==9)
cout<<"\t\t\t\t Su numero ingresado ha consiguio el
reintegro"<<endl;
else
cout<<"\t\t\t\t Su numero ingresado no ha conseguido el
reintegro"<<endl;

Sucre-Bolivia
2022
x=true;
}
else{
cout<<"\t\t\t\t Ingrese solo un numero de 5 cifras :";
x=false;
}
}while (x==false);
cout<<endl;
system("pause");
system ("cls");
}
void pago_trabajador(){
int dh,th,nh,pa,ex,st,sumah,sumae;
cout<<"\t\t\t\t -----PAGO DE UN TRABAJDOR POR HORA
LABORAL-----"<<endl;
do{
cout<<"\t\t\t\t Cuantas horas trabajo en el turno de dia :" ;
cin>>dh;
if (dh>5)
cout<<"\t\t\t\t !El turno del dia no puede pasar las 5
horas¡"<<endl<<endl;
}while (dh>5);
do{
cout<<"\t\t\t\t Cuantas horas trabajo en el turno de la tarde :" ;
cin>>th;
if (th>5)

Sucre-Bolivia
2022
cout<<"\t\t\t\t !El turno de la tarde no puede pasar las 5
horas¡"<<endl<<endl;
}while (th>5);
do{
cout<<"\t\t\t\t Cuantas horas trabajo en el turno de la noche :" ;
cin>>nh;
if (nh>5)
cout<<"\t\t\t\t !El turno de la noche no puede pasar las 5
horas¡"<<endl<<endl;
}while (nh>5);
cout<<"\t\t\t\t Ingrese las horas extra que hizo"<<endl;
cout<<"\t\t\t\t (el pago sera el doble por hora): ";
cin>>ex;
cout<<"\t\t\t\t Ingrese cuanto es el pago por hora en Bs:";
cin>>pa;
cout<<"\t\t\t\t -----------------------------------------------"<<endl;
cout<<endl;
st=((dh+th+nh)*pa)+((ex*pa)*2);
sumah=(dh+th+nh)*pa;
sumae=(ex*pa)*2;
cout<<"\t\t\t\t El pago total que recibira el trabjador es de: Bs"<<st<<endl;
if(sumah>sumae)
cout<<"\t\t\t\t Las ganancias por el trabajo de oficina es mayor al
trabajo por horas extras"<<endl;
else
cout<<"\t\t\t\t Las ganancias por las horas extras es mayor al trabajo
de oficina"<<endl;
cout<<endl;
Sucre-Bolivia
2022
system("pause");
system ("cls");
}
void numero_perfecto()
{
int n,s=0;
cout<<"\t\t\t\t\t ---------NUMERO PERFECTO---------"<<endl;
cout<<"\t\t\t\t\t Digite un numero para verificar : ";
cin>>n;
cout<<"\t\t\t\t\t --------------------------------"<<endl;
for (int i=1;i<n;i++){
if(n%i==0){
s=s+i;
}
}
if(s==n)
cout<<"\t\t\t\t\t El numero '"<<n<<"' es perfecto"<<endl;
else
cout<<"\t\t\t\t\t El numero '"<<n<<"' no es perfecto"<<endl;
cout<<endl;
system("pause");
system ("cls");
}
void numeros_amigos()
{
int s1=0,s2=0,n1,n2;

Sucre-Bolivia
2022
cout<<"\t\t\t\t\t ---------NUMEROS AMIGOS---------"<<endl;
cout<<"\t\t\t\t\t Ingresar el primero numero : ";
cin>>n1;
cout<<"\t\t\t\t\t Ingresar el segundo numero : ";
cin>>n2;
cout<<"\t\t\t\t\t --------------------------------"<<endl;
for (int i=1;i<n1;i++){
if(n1%i==0){
s1=s1+i;
}
}
for (int i=1;i<n2;i++){
if(n2%i==0){
s2=s2+i;
}
}
if (s1==n2 && s2==n1)
cout<<"\t\t\t\t\t Los numeros introducidos son amigos"<<endl;
else
cout<<"\t\t\t\t\t Los numeros introducidos no son amigos"<<endl;
cout<<endl;
system("pause");
system ("cls");

}
void suma_array(){

Sucre-Bolivia
2022
cout<<"\t\t\t\t\t ----------SUMA DE DOS ARRAYS----------"<<endl;
int vector1[5],vector2[5],vector3[10],i;
for(i=0;i<5;i++){
cout<<"\t\t\t\t\t Ingrese un numero en el primer array : ";
cin>>vector1[i];
}
for(i=0;i<5;i++){
cout<<"\t\t\t\t\t Ingrese un numero en el segundo array: "
;cin>>vector2[i];
}
for(i=0;i<5;i++)
{
vector3[i]=vector1[i];
}
for(i=0;i<5;i++)
{
vector3[5+i]=vector2[i];
}
cout<<"\t\t\t\t\t La suma de los dos arrays es :"<<endl;
cout<<"\t\t\t\t\t ";
for(i=0;i<10;i++){
cout<<" "<<vector3[i];
}
cout<<endl<<endl;;
system("pause");
system ("cls");

Sucre-Bolivia
2022
}
int main(int argc, char *argv[]) {
int opcion;
do{
cout<<"\t\t\t\t\t ______________________________________"<<endl;
cout<<"\t\t\t\t\t| MENU DE OPCIONES |"<<endl;
cout<<"\t\t\t\t\t|______________________________________|"<<endl;
cout<<"\t\t\t\t\t| 1.- Reintegrado de un numero |"<<endl;
cout<<"\t\t\t\t\t|______________________________________|"<<endl;
cout<<"\t\t\t\t\t| 2.- Pago que recibira un trabajador |"<<endl;
cout<<"\t\t\t\t\t|______________________________________|"<<endl;
cout<<"\t\t\t\t\t| 3.- Numero perfecto |"<<endl;
cout<<"\t\t\t\t\t|______________________________________|"<<endl;
cout<<"\t\t\t\t\t| 4.- Numeros amigos |"<<endl;
cout<<"\t\t\t\t\t|______________________________________|"<<endl;
cout<<"\t\t\t\t\t| 5.- Suma de dos arras |"<<endl;
cout<<"\t\t\t\t\t|______________________________________|"<<endl;
cout<<"\t\t\t\t\t| 6.- SALIR |"<<endl;
cout<<"\t\t\t\t\t|______________________________________|"<<endl;
cout<<"\t\t\t\t\tPor favor ingrese una ocpion :";cin>>opcion;

system ("cls");
switch (opcion){
case 1:
reintegrado();
break;

Sucre-Bolivia
2022
case 2:
pago_trabajador();
break;
case 3:
numero_perfecto();
break;
case 4:
numeros_amigos();
break;
case 5:
suma_array();
break;
}
}while (opcion!=6);
cout<<"¡¡¡GRACIAS POR SU ATENCION!!!";
return 0;
}
4.2 Codificación del programa C++

Sucre-Bolivia
2022
Sucre-Bolivia
2022
Sucre-Bolivia
2022
4.3 PRUEBAS DE EJECUCIN DEL PROGRAMA
Figura 1. Ejecución del programa (menú principal).

Sucre-Bolivia
2022
- Se puede observar la ejecución del programa con sus diversas opciones que
tiene aparte muestra una opción que permite escoger una de las opciones.

Figura 2. Ejecución de la opción 1 (reintegrado de un numero)

- Al ingresar en la primera opción nos da la opción de digitar 5 dígitos para


verificar si el primero o el ultimo numero coincide con el primer o ultimo numero
de la lotería e imprimiendo si a conseguido el numero el reintegrado.

Figura 3. Ejecución de la opción 2 (pago que recibirá un trabajador)

Sucre-Bolivia
2022
-En esta opción nos dice ingresar las horas que se trabajo en el turno de la
mañana, tarde y noche aparte pide las horas extras que se hizo y así realiza las
operaciones y nos imprime las ganancias totales antes de haber pedido ingresar
el pago por hora, también nos imprime una opción si gano mas con las horas
extras o con las horas de oficina.

Figura 4. Ejecución de la opción 3 (Numero perfecto)

-En esta opción nos dice ingresar un número y este será verificado para saber si
es o no perfecto e imprimiendo el resultado.

Figura 5. Ejecución de la opción 4 (Números amigos)

Sucre-Bolivia
2022
- Cuando se ingresó a la opción cuatro el programa pidió 2 números para
realizar los procesos internos en el programa y verificar en este caso si los
2 números introducidos son amigos o no.

Figura 6. Ejecución de la opción 5 (Suma de dos arrays)

- En la opción 5 realiza una suma de dos array pidiendo 5 números en el primer y


segundo array y el programa imprime los numero pero ya juntados en un array
solo ya echas los procedimientos anteriormente.

CONCLUSIONES Y RECOMENDACIONES

Sucre-Bolivia
2022
 Tenemos el conocimiento básico general que implica la programación usando
las diversas estructuras lógicas para realizar un menú que realizo diversas
operaciones.
 El programa se logro ejecutar exitosamente para realizar sus diversas
operaciones.
 Se optimizo el programa gracias a lo aprendió en la materia aparte que se facilito
el uso del menú.
 Se determino y se hizo un análisis que nos permitió realizar las operaciones
matemáticas y entre otras para el funcionamiento de las opciones del menú.
 Se uso las estructuras de control para realizar y optimizar el programa usando
las estructuras con diversas decisiones.
 El proyecto funciona para un óptimo funcionamiento de un programa de
selección.
 La programación es muy importante en la vida ya que en la actualidad la
tecnología esta implementada en vareas áreas de trabajo
 Realizar una simulación y así verificar el funcionamiento.
 Verificar si el programa corre bien para que no haya problemas

BIBLIOGRAFIA

Sucre-Bolivia
2022
Muñoz, J. D. (20 de octubre de 2022). PLEDIN 3.0. Obtenido de PLEDIN 3.0:
https://plataforma.josedomingo.org/pledin/cursos/programacion_python3/curso/
u17/#:~:text=La%20instrucci%C3%B3n%20while%20ejecuta%20una,mientras
%20una%20condici%C3%B3n%20sea%20verdadera.&text=Al%20ejecutarse
%20esta%20instrucci%C3%B3n%2C%20la,forman%20el%20
Paszniuk, R. (17 de abril de 2013). Programacion py. Obtenido de programacion py:
https://www.programacion.com.py/escritorio/c/estructuras-de-control-en-c

Sergio, T. O. (1995). Curso de Programación en C++. Valencia_España: Escuela


Tecnica Superior d Ingenieria Informatica ETSINF. Pag 9-14.

Marisol, C., Edie, D., Luisa, C., & Zulma, A. (2007). EL SOFTWARE MATEMÁTICO
COMO HERRAMIENTA PARA EL DESARROLLO DE HABLILIDADES DEL
PENSAMIENTO Y MEJORAMIENTO DEL APRENDIZAJE. Costa Rica: Instituto
de Investigación en Educación. Obtenido de EL SOFTWARE MATEMÁTICO
COMO HERRAMIENTA PARA EL DSDSS.

Sucre-Bolivia
2022

También podría gustarte