PA3-Oswaldo Huacac Gonza - Fundamentos de Programación
PA3-Oswaldo Huacac Gonza - Fundamentos de Programación
PA3-Oswaldo Huacac Gonza - Fundamentos de Programación
1. Consideraciones:
1.1 Se tiene una empresa que desea controlar el almacén de dos sus productos; el cual cuenta con
un stock inicial (Ejem: 1000, 5000), del cual se puede:
- Ingresar el nombre del producto (Ejemplo: Caja_Colores, Papel_Bond_Millar)
- Actualizar el stock de los productos con una nueva cantidad, en cualquier momento que el usuario lo
requiera.
- Ingresar un pedido de uno o dos productos para un cliente, si no se cuenta con la cantidad
solicitada, se puede dejar de atender o se puede atender solo una parte (la indicada por el cliente) o
se puede atender todo siempre y cuando se actualice el stock.
- Reportar:
CODIGO EJECUTADO
FUNCIOPNES Y PROCEDIMIENTO
1|Página
2|Página
ACTUALIZANDO STOCK
3|Página
REALIZANDO VENTA Y MOSTRANDO EL STOCK
4|Página
Codigo Fuente del proyecto
#include<iostream>
#include "Libreria.h"
int main()
{
string nombre;
#include<iostream>
using namespace std;
float stock=0;
int cv=0;
int opc;
if(venta>stock)
cout<<"No se puede realizar la venta"<<endl;
else
stock=stock-venta;
return stock;
}
5|Página
void Mostrar(float stock,int cv)
{
cout<<"El stock actual es: "<<stock<<endl;
cout<<"Cantidad de atenciones: "<<cv;
void Menu()
{
do
{
do
{
cout<<"\tMENU"<<endl;
cout<<"1 Actualizar stock"<<endl;
cout<<"2 Vender"<<endl;
cout<<"3 Mostrar stock"<<endl;
cout<<"4 Salir"<<endl;
cout<<"Ingrese opcion (1-4)"<<endl;
cin>>opc;
if(opc!=1 and opc!=2 and opc!=3 and opc!=4)
cout<<"Error, ingrese dato correcto";
}while(opc!=1 and opc!=2 and opc!=3 and opc!=4);
switch(opc)
{
case 1:
{
stock=ValidarStock(stock);
break;
}
case 2:
{
cv++;
stock=Vender(stock);
break;
}
case 3:
{
Mostrar(stock,cv);
break;
}
case 4:
{
cout<<"Gracias por su Compra"<<endl;
break;
}
}
}while(opc!=4);
6|Página
1.2 Se Ingresan los siguientes datos de estudiantes: genero (M o F), Estado Civil (Casado: C, Soltero: S,
Divorciado: D) y nota (0 <= nota <= 20) y que reporte
CODIGO EJECUTADO
7|Página
Prueba
8|Página
Código Fuente
#include<iostream>
using namespace std;
int tec;
char genero,estado;
float nota,suma=0,promedio,sum=0,prom,mua=0,vdes=0;
int cv=0,cm=0,ca=0,cd=0,c=0,s=0,d=0,cam=0,som=0,dim=0,caf=0,sof=0,dif=0,va=0,vd=0;
int ma=0,md=0,cap=0,cds=0,sa=0,sd=0,fdiv=0;
void menu()
{
do{
do
{
cout<<"\t Menu principal"<<endl;
cout<<"1 Ingresar Datos"<<endl;
cout<<"2 Reportar Datos"<<endl;
cout<<"3 Salir"<<endl;
cout<<"Ingrese Opciones (1-3)"<<endl;
cin>>tec;
}while(tec==1 and tec==2 and tec==3);
switch(tec)
{
case 1:{
do{
9|Página
cout<<"Ingresar Genero"<<endl;
cin>>genero;
if(genero=='V' and genero=='v' and genero=='M' and
genero=='m')
{
cout<<"Ingreso incorrecto (V o M), vuelva a
intentar"<<endl;
}
}while(genero=='V' and genero=='v' and genero=='M' and
genero=='m');
do{
cout<<"Ingresar Estado civil"<<endl;
cin>>estado;
if(estado=='C' and estado=='c' and estado=='S' and
estado=='s' and estado=='D' and estado=='d')
{
cout<<"Ingreso incorrecto es (C, S o D),
vuelva a intentar"<<endl;
}
}while(estado=='C' and estado=='c' and estado=='S' and
estado=='s' and estado=='D' and estado=='d');
do{
cout<<"Ingrese Nota"<<endl;
cin>>nota;
cout<<"Nota incorrecta"<<endl;
}while(nota<=0 and nota>=20);
if(genero=='V' or genero=='v')
cv++;
if(genero=='M' or genero=='m')
cm++;
if(nota>=10.5)
ca++;
else
cd++;
if(nota>=10.5 and estado=='c' and genero=='v' or nota>=10.5
and estado=='C' and genero=='V' or nota>=10.5 and estado=='C' and genero=='v' or nota>=10.5 and
estado=='c' and genero=='V')
if(nota<=10.5 and estado=='c' and genero=='v' or nota<=10.5
and estado=='C' and genero=='V' or nota<=10.5 and estado=='C' and genero=='v' or nota<=10.5 and
estado=='c' and genero=='V')
cds++;
if(nota>=10.5 and estado=='s' and genero=='m' or nota>=10.5
and estado=='S' and genero=='M' or nota>=10.5 and estado=='S' and genero=='m' or nota>=10.5 and
estado=='s' and genero=='M')
sa++;
if(nota<=10.5 and estado=='s' and genero=='m' or nota<=10.5
and estado=='S' and genero=='M' or nota<=10.5 and estado=='S' and genero=='m' or nota<=10.5 and
estado=='s' and genero=='M')
sd++;
if(genero=='m' and estado=='d' or genero=='M' and
estado=='D' or genero=='m' and estado=='D' or genero=='M' and estado=='d')
10 | P á g i n a
fdiv++;
if(nota>=10.5 and genero=='m' or nota>=10.5 and
genero=='M')
ma++;
else
md++;
if(nota>=10.5 and genero=='m' or nota>=10.5 and
genero=='M')
{
mua++;
suma=suma+nota;
promedio=suma/mua;}
else
promedio=0;
if(nota>=10.5 and genero=='v' or nota>=10.5 and
genero=='V')
va++;
else
vd++;
if(nota<=10.5 and genero=='v' or nota<=10.5 and
genero=='V')
{
vdes++;
sum=sum+nota;
prom=sum/vdes;}
else
prom=0;
if(estado=='C' or estado=='c')
c++;
if(estado=='S' or estado=='s')
s++;
if(estado=='D' or estado=='d')
d++;
break;
}
case 2:{
11 | P á g i n a
}while(tec!=3);
}
#include<iostream>
#include "Notas.h"
using namespace std;
int main()
{
menu();
return 0;
12 | P á g i n a
Criterio Detalle
Tema o Estructuras de Control Repetitiva, Menú de Opciones, Contador y
asunto Acumulador.
Enunciado Lea detenidamente las indicaciones, elabora la siguiente actividad:
1. Elaborar el programa para: Usar MENÚ, Validar con DO – WHILE y Contador-
Acumulador en:
1.1 Se tiene una empresa que desea controlar el almacén de dos sus productos; el
cual cuenta con un stock inicial (Ejem: 1000, 5000), del cual se puede:
- Ingresar el nombre del producto (Ejemplo: Caja_Colores, Papel_Bond_Millar)
- Actualizar el stock de los productos con una nueva cantidad, en cualquier
momento que el usuario lo requiera.
- Ingresar un pedido de uno o dos productos para un cliente, si no se cuenta con la
cantidad solicitada, se puede dejar de atender o se puede atender solo una
parte (la indicada por el cliente) o se puede atender todo siempre y cuando se
actualice el stock.
- Reportar:
a. La cantidad de veces que se actualizó el stock de cada producto.
b. La cantidad de clientes atendidos (solo si se completó todo el pedido).
c. La cantidad de pedidos que se completaron una parte.
d. La cantidad de pedidos incompletos (dejaron de atenderse).
e. El stock de unidades que queda de cada producto.
1.2 Se Ingresan los siguientes datos de estudiantes: genero (M o F), Estado Civil
(Casado: C, Soltero: S, Divorciado: D) y nota (0 <= nota <= 20) y que reporte
a. El número de hombres aprobados y mujeres aprobadas
b. El número de hombres casados aprobados y casados desaprobados.
c. El número mujeres solteras aprobadas.
d. El número de mujeres divorciadas.
e. El número total de desaprobados.
f. La nota promedio de las mujeres aprobadas.
g. La nota promedio de los hombres desaprobados.
Instrucciones Elabora el informe con lo solicitado (1): Imagen del código en C++ y de
para la ejecución con el ingreso y reporte de datos, para los casos
propuestos. (2) Elabora el código fuente en C++ para los casos
presentar el propuestos.
archivo en el Guarda el archivo del informe y del código fuente de cada caso
aula virtual propuesto, en una carpeta, lo comprimes ApellidoNombre y envíalo a
través del ícono Enviar Producto Académico No. 02, que encontrarás en
tu aula virtual.
Revisa la rúbrica de evaluación en la que podrás conocer los aspectos
que se evaluarán en el producto que estás entregando.
Referencias Temas 02, 04 y 05 de la unidad 02 del manual del curso, adjunto en el
para realizar aula virtual del curso.
Joyanes Aguilar, Luis. Fundamentos de Programación. 4ta. ed. España:
la actividad. McGraw-Hill; 2008. P 157-181
Disponible en: Biblioteca CENDOC (libros digitales).
Programarya: Curso de C++. Recuperado de
https://www.programarya.com/Cursos/C++/Ciclos/Ciclo-do-while
13 | P á g i n a
1. Rúbrica de evaluación:
14 | P á g i n a