Documentos de Académico
Documentos de Profesional
Documentos de Cultura
LABORATORIO 3
ESTRUCTURA DE DATOS
DOCENTE:
ALUMNO:
CICLO: II
TRUJILLO - PERU
2022
I. Usando arreglos de estructuras o registros, Desarrolle un programa para registrar
datos de 5 alumnos (código, nombre, nota1, nota2). El programa debe mostrar:
a. La relación de alumnos con sus respectivos datos
b. La relación de alumnos con sus respectivos promedios.
c. Pedir un código de alumno y si se encuentra, visualizar código,
nombre y promedio. Caso contrario indicar "Alumno no existe"
d. Pedir el código de un alumno y si este se encuentra, eliminarlo del arreglo.
Visualizar el reporte actualizado.
#include<iostream>
#include<conio.h>
#include<string.h>
using namespace std;
struct alumnos
{
float nota[2],prom;
string nombre,codigo;
};
struct alumnos nalumnos[5];
int main()
{
setlocale(LC_CTYPE,"Spanish");
int n=5,i,m;
int op=0;
bool verifica;
string eliminar, buscar;
do
{
cout<<"\n\n\t\t\tPROGRAMA NOTAS\n";
cout<<"\t\t=======================================\n";
cout<<" \t\t1. Agregue los alumnos"<<endl;
cout<<" \t\t2. Mostrar los alumnos"<<endl;
cout<<" \t\t3. Buscar un alumno"<<endl;
cout<<" \t\t4. Eliminar un alumno"<<endl;
cout<<" \t\t5. Salir"<<endl;
cout<<"\t\t=======================================\n";
cout<<"\t\tIngrese opción : ";
cin>>op;
switch (op)
{
case 1:
{
system("cls");
for (i=0; i<n; i++)
{
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t\tAÑADIENDO NUEVO USUARIO\n";
cout<<"\t\t===============================================\n\n";
cout<<"\t\tIngrese el nombre del alumno: ";cin>>nalumnos[i].nombre;
cout<<"\n\t\tIngrese el código del alumno: ";cin>>nalumnos[i].codigo;
cout<<"\n\t\tIngrese la nota 1: ";cin>>nalumnos[i].nota[0];
cout<<"\n\t\tIngrese la nota 2: ";cin>>nalumnos[i].nota[1];
nalumnos[i].prom=(nalumnos[i].nota[0]+nalumnos[i].nota[1])/2;
cout<<"\n\t\t===============================================\n\n";
system("cls");
}
break;}
case 2:
{
system("cls");
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t\tRELACIÓN DE ALUMNOS\n";
cout<<"\t\t===============================================\n\n";
for(i=0; i<n; i++)
{
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t1. Nombre: "<<nalumnos[i].nombre;
cout<<"\n\t\t2. Codigo: "<<nalumnos[i].codigo;
cout<<"\n\t\t3. Promedio: "<<nalumnos[i].prom;
cout<<"\n\t\t===============================================\n\n";
}
break; }
case 3:
{
system("cls");
verifica=0;
cout<<"\n\n\t\t=====================================\n";
cout<<"\t\t\tBUSCAR UN ALUMNO\n";
cout<<"\t\t=====================================\n";
cout<<"\n\t\tIngrese código de alumno: ";cin>>buscar;
for(i=0;i<n;i++)
{
if (nalumnos[i].codigo == buscar)
{
verifica=1;
m=i;
}}
if (verifica==1)
{
i=m;
cout<<"\n\n\t\t=====================================\n";
cout<<"\t\t\tALUMNO ENCONTRADO!\n";
cout<<"\t\t=====================================\n";
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t1. Nombre: "<<nalumnos[i].nombre;
cout<<"\n\t\t2. Codigo: "<<nalumnos[i].codigo;
cout<<"\n\t\t3. Promedio: "<<nalumnos[i].prom;
cout<<"\n\t\t===============================================\n\n";
}
else
{
cout<<"\n\n\t\t=====================================\n";
cout<<"\t\t\tALUMNO NO EXISTE!\n";
cout<<"\t\t=====================================\n";
}
break;
}
case 4:
{
system("cls");
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t\tELIMINAR UN ALUMNO\n";
cout<<"\t\t===============================================\n";
cout<<"\n\t\tIngrese código de alumno: ";cin>>eliminar;
for(i=0;i<n;i++)
{
if(nalumnos[i].codigo==eliminar)
{
verifica=1;
n=n-1;
cout<<"\n\n\t\tAlumno Eliminado...";
}
if(verifica==1)
{
for(i=0; i<n; i++)
{
nalumnos[i]=nalumnos[i+1];
}
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t\tLISTA ACTUALIZADA\n";
cout<<"\t\t===============================================\n\n";
for(i=0; i<n; i++)
{
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t1. Nombre: "<<nalumnos[i].nombre;
cout<<"\n\t\t2. Codigo: "<<nalumnos[i].codigo;
cout<<"\n\t\t3. Promedio: "<<nalumnos[i].prom;
cout<<"\n\t\t===============================================\n\n";
}
}
break;
}
case 5:
{
system("cls");
cout<<"SALIENDO DEL PROGRAMA...\n";
break;
}
}
cout<<endl<<endl;
system("pause");
system("cls");
}
while(op!=5);
getch();
}
II. Debo registrar vendedores (dni, nombres, apellidos, dirección (calle, numero,
urbanización) ); además registrar sus respectivos productos vendidos (dni, producto,
cantidad, precioventa). Implementa el sistema usando registros y funciones. El sistema
debe permitir:
#include<iostream>
#include<conio.h>
#include<string.h>
#define MAX_V 100 // numero de vendedores
#define MAX_PV 100
using namespace std;
struct direccion
{
string calle,urbanizacion;
int numero;
};
struct unproducto
{
string producto;
int cantidad;
float precioventa;
float subtotal;
};
struct productos
{
int numprod;
unproducto vp[MAX_PV];
float preciototal;
};
struct vendedor
{
string dni,nombres,apellidos;
direccion dir_vendedor;
productos prod_vendedor;
};
struct vendedor lista[MAX_V];
int main()
{
setlocale(LC_CTYPE,"Spanish");
int n=0,i,m=0,p,j,x;
int op=0;
string buscar;
bool verifica;
do
{
cout<<"\n\n\t\t\tPROGRAMA VENDEDORES\n";
cout<<"\t\t=======================================\n";
cout<<" \t\t1. Agregar vendedores\n";
cout<<" \t\t2. Mostrar a todos los vendedores\n";
cout<<" \t\t3. Buscar a un vendedor\n";
cout<<" \t\t4. Buscar productos vendidos de un vendedor\n";
cout<<" \t\t5. Eliminar a un vendedor\n";
cout<<" \t\t6. Salir\n";
cout<<"\t\t=======================================\n";
cout<<"\t\tIngrese opción : "; cin>>op;
switch (op)
{
case 1:
{
system("cls");
cout<<"\n\n\t\t=========================================\n";
cout<<"\t\t ¿CUANTOS VENDEDORES DESEA INGRESAR?\n";
cout<<"\t\t===========================================\n\n";
cout<<"\t\tDeseo Ingresar a: "; cin>>n;
system("cls");
for (i=0; i<n; i++)
{
system("cls");
cout<<"\n\n\t\t==================================\n";
cout<<"\t\t\tAÑADIENDO A VENDEDOR "<<i+1<<"\n";
cout<<"\t\t========================================\n\n";
cout<<"\t\tDATOS PERSONALES: \n";
cout<<"\n\t\t Ingrese los nombres del vendedor: ";cin>>lista[i].nombres;
cout<<"\n\t\t Ingrese los apellidos del vendedor: ";cin>>lista[i].apellidos;
cout<<"\n\t\t Ingrese DNI del vendedor: ";cin>>lista[i].dni;
cout<<"\n\t\tDIRECCIÓN: \n";
cout<<"\n\t\t Ingrese calle: ";cin>>ista[i].dir_vendedor.calle;
cout<<"\n\t\t Ingrese número: ";cin>>lista[i].dir_vendedor.numero;
cout<<"\n\t\t Ingrese urbanización: ";cin>>lista[i].dir_vendedor.urbanizacion;
cout<<"\n\t\t===============================================\n\n";
system("cls");
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t ¿CUANTOS PRODUCTOS DESEA INGRESAR?\n";
cout<<"\t\t===============================================\n\n";
cout<<"\t\tDeseo Ingresar : ";cin>>lista[i].prod_vendedor.numprod;
system("cls");
for(j=0; j<lista[i].prod_vendedor.numprod; j++)
{
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t\tAÑADIENDO PRODUCTO "<<j+1<<"\n";
cout<<"\t\t===============================================\n\n";
cout<<"\n\t\tIngrese el nombre del producto: ";cin>>lista[i].prod_vendedor.vp[j].producto;
cout<<"\n\t\tIngrese la cantidad: ";cin>>lista[i].prod_vendedor.vp[j].cantidad;
cout<<"\n\t\tIngrese el precio del producto: ";cin>>lista[i].prod_vendedor.vp[j].precioventa;
lista[i].prod_vendedor.vp[j].subtotal = lista[i].prod_vendedor.vp[j].cantidad *
lista[i].prod_vendedor.vp[j].precioventa;
if(lista[i].prod_vendedor.vp[j].subtotal==0)
cout<<"Subtotal 0";
lista[i].prod_vendedor.preciototal=lista[i].prod_vendedor.preciototal + lista[i].prod_vendedor.vp[j].subtotal;
system("cls");
}
}
break;
}
case 2:
{
system("cls");
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t\tRELACIÓN DE VENDEDORES\n";
cout<<"\t\t===============================================\n";
for(i=0; i<n; i++)
{
cout<<"\n\t\t===============================================\n";
cout<<"\n\t\tDATOS PERSONALES: ";
cout<<"\n\t\t 1. Nombres: "<<lista[i].nombres;
cout<<"\n\t\t 2. Apellidos: "<<lista[i].apellidos;
cout<<"\n\t\t 3. DNI: "<<lista[i].dni;
cout<<"\n\n\t\tDIRECCIÓN: ";
cout<<"\n\t\t 4. Calle: "<<lista[i].dir_vendedor.calle;
cout<<"\n\t\t 5. Número: "<<lista[i].dir_vendedor.numero;
cout<<"\n\t\t 6. Urbanización: "<<lista[i].dir_vendedor.urbanizacion;
cout<<"\n\t\t===============================================\n";
}
break;
}
case 3:
{
system("cls");
cout<<"\n\n\t\t=====================================\n";
cout<<"\t\t\tBUSCAR UN VENDEDOR\n";
cout<<"\t\t=====================================\n";
cout<<"\n\t\tIngrese número de vendedor: ";cin>>x;
system("cls");
if(n>0)
{
x=x-1;
cout<<"\n\n\t\t=====================================\n";
cout<<"\t\t\tVENDEDOR ENCONTRADO!\n";
cout<<"\t\t=====================================";
cout<<"\n\t\tDATOS PERSONALES: ";
cout<<"\n\t\t 1. Nombres: "<<lista[x].nombres;
cout<<"\n\t\t 2. Apellidos: "<<lista[x].apellidos;
cout<<"\n\t\t 3. DNI: "<<lista[x].dni;
cout<<"\n\n\t\tDIRECCIÓN: ";
cout<<"\n\t\t 4. Calle: "<<lista[x].dir_vendedor.calle;
cout<<"\n\t\t 5. Número: "<<lista[x].dir_vendedor.numero;
cout<<"\n\t\t 6. Urbanización: "<<lista[x].dir_vendedor.urbanizacion;
cout<<"\n\t\t=====================================\n\n";
}
else
{
cout<<"\n\n\t\t=====================================\n";
cout<<"\t\t\tVENDEDOR NO EXISTE!\n";
cout<<"\t\t=====================================\n";
}
break;
}
case 4:
{
system("cls");
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t\tBUSCAR PRODUCTO\n";
cout<<"\t\t===============================================\n";
cout<<"\n\t\tIngrese DNI del vendedor: ";cin>>buscar;
for(i=0;i<n;i++)
{
if (lista[i].dni == buscar)
{
verifica=1;
m=i;
cout<<"\n\n\t\t==========================================\n";
cout<<"\t\t\tPRODUCTO ENCONTRADO!\n";
cout<<"\t\t===========================================\n";
cout<<"\t\tPRODUCTOS VENDIDOS POR: "<<lista[m].nombres<<" "<<lista[m].apellidos<<endl;
for(int j=0; j<lista[m].prod_vendedor.numprod;j++)
{
cout<<"\t\tPRODUCTO "<<j+1;
cout<<"\n\t\t1. Nombre: "<<lista[m].prod_vendedor.vp[j].producto;
cout<<"\n\t\t2. Cantidad: "<<lista[m].prod_vendedor.vp[j].cantidad;
cout<<"\n\t\t3. Precio Venta: "<<lista[m].prod_vendedor.vp[j].precioventa;
cout<<"\n\t\t4. SubTotal: "<<lista[m].prod_vendedor.vp[j].subtotal;
cout<<"\n\t\t===============================================\n";
}
cout<<"\n\t\tPRECIO TOTAL: "<<lista[m].prod_vendedor.preciototal;
}
}
break;
}
case 5:
{
system("cls");
cout<<"\n\n\t\t===============================================\n";
cout<<"\t\t\tELIMINAR A UN VENDEDOR\n";
cout<<"\t\t===============================================\n";
cout<<"\n\t\tIngrese número de vendedor: ";cin>>x;
for(i=x;i<n-1;i++)
{
lista[i]=lista[i+1];
}
n--;
break;
}
case 6:
{
system("cls");
cout<<"SALIENDO DEL PROGRAMA...\n";
break;
}
}
cout<<endl<<endl;
system("pause");
system("cls");
}
while(op!=6);
getch();
}