Professional Documents
Culture Documents
#include<iostream.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
#include<stdio.h>
typedef struct enlace{ char cod[10];
char apnom[20];
char cat[15];
float sb;
float bon;
float des;
float sn;
struct enlace *anterior;
}pila;
#define TAM sizeof(pila)
pila *ultimo,*nuevo,*q;
char n[10],resp;
void imprimir(),agregar(),eliminar();
void main()
{
ultimo=0;
cout<<"Ingrese codigo del trabajador ";
cin>>n;
while(strcmp(n,"*")!=0)
{
nuevo=(pila *)malloc(TAM);
strcpy(nuevo->cod,n);
cout<<"Ingrese apellidos y nombres ";
gets(nuevo->apnom);
cout<<"Ingrese categoria ";
cin>>nuevo->cat;
cout<<"ingrese sueldo basico ";
cin>>nuevo->sb;
cout<<"Ingrese bonificacion ";
cin>>nuevo->bon;
cout<<"Ingrese descuento ";
cin>>nuevo->des;
nuevo->sn=nuevo->sb+nuevo->bon-nuevo->des;
nuevo->anterior=ultimo;
ultimo=nuevo;
cout<<"Ingrese codigo del trabajador ";
cin>>n;
}
imprimir();
cout<<"Desea agregar un nuevo elemento a la pila ";
cin>>resp;
if(resp=='s')
{
agregar();
imprimir();
}
cout<<"Desea eleiminar un elemento de la pila ";
cin>>resp;
if(resp=='s')
{
eliminar();
imprimir();
}
}
void imprimir()
{
clrscr();
cout<<"
REPORTE DE TRABAJADORES "<<endl;
cout<<" -------------------------------------------------------------"<<endl;
cout<<" CODIGO APELLIDOS Y NOMBRES CATEGORIA S.BAS
BONF DESC SNETO"<<endl;
cout<<" -------------------------------------------------------------"<<endl;
q=ultimo;
while(q!=0)
{
cout<<q->cod<<" "<<q->apnom<<" "<<q->cat<<" "<<q->sb
<<" "<<q->bon<<" "<<q->des<<" "<<q->sn<<endl;
q=q->anterior;
}
cout<<" --------------------------------------------------------------"<<endl;
}
void agregar()
{
nuevo=(pila *)malloc(TAM);
cout<<"Ingrese el codigo del trabajador ";
cin>>nuevo->cod;
cout<<"Ingrese apellidos y nombres ";
gets(nuevo->apnom);
cout<<"Ingrese categoria ";
cin>>nuevo->cat;
cout<<"ingrese sueldo basico ";
cin>>nuevo->sb;
cout<<"Ingrese bonificacion ";
cin>>nuevo->bon;
cout<<"Ingrese descuento ";
cin>>nuevo->des;
nuevo->sn=nuevo->sb+nuevo->bon-nuevo->des;
nuevo->anterior=ultimo;
ultimo=nuevo;
}
void eliminar()
{
ultimo=ultimo->anterior;
}
****************************
/*Realizar el programa que ingrese a una estructura dinamica PILA los datos
de los trabajadores de una empresa; CODIGO, APELLIDOS Y NOMBRES, CATEGORIA
(Puede ser auxiliar, tecnico o profesional), SUELDO BASICO, BONIFICACIOIN
y DESCUENTO.
Se pide calcular e imprimir un reporte con los datos de
entrada que incluya el sueldo neto de cada trabajador */
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
typedef struct enlace {char cod[10];
char apnom[20];
char cat[15];
float sb;
float bon;
float des;
float sn;
struct enlace *anterior;
} pila;