Sunteți pe pagina 1din 0

AL GORI T MOS Y P ROGRAMACI N

1
Es un nuevo tipo de dato que colecciona diferentes tipos
de datos lgicamente relacionados.
A las estructuras tambin se conocen como dato de tipo
heterogneo
En otros lenguajes de programacin se conoce a la
estructura como registros y se manipula a travs de un
nico nombre de variable.
A los elementos individuales (miembros) de la estructura
se llama tambin campos.
Para trabajar con estructuras, se requiere declarar y
luego asignar valores a los miembros de la estructura.
ESTRUCTURAS
AL GORI T MOS Y P ROGRAMACI N
2
Una estructura es necesario declarar antes de usar as
como cualquier otra variable. Ejem.
struct <Nombre Estructura> struct Producto
{ <tipo dato> variable; { char Nparte[15];
<tipo dato> variable; char descrip[70];
}; float cant,costou;
};
hc71 Cascos Und. 250 5.60 . ..
Nparte Descrip unidad cant. costou
Imagnese la estructura se llama Producto
DECLARACION DE LA ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
3
Otra manera de declarar una estructura es realizado de la
siguiente manera. Ejem.
struct <Nombre Estructura> struct Producto
{ <tipo dato> variable; { char Nparte[15];
<tipo dato> variable; char descrip[70];
}<Lista Variable> float cant,costou;
}P, Q,R;
En este caso las variables P, Q y R son de tipo Producto (
estructura) y son de alcance global
DECLARACION DE LA ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
4
Para almacenar datos en una estructura podemos
realizar al momento de declarar la variable tal como se
indica para la estructura creada anteriormente
Producto Items={HC71","Cascos",150,5.6};
La otra manera es a travs de la operacin de lectura
utilizando la instruccin cin o una funcin de cadena.
Para acceder a los miembros de la estructura utilizar el
operador punto (.), y si la variable es tipo puntero utilizar
el carcter flecha ( ->)
Ejem.: cout<<Items.nparte<<Items.descrip<<Items.cant;
cout<<Items.costou<<endl;
ASIGNACION DE DATOS
AL GORI T MOS Y P ROGRAMACI N
5
#include <iostream>
using namespace std;
struct fing
{ int dd,mm,aa;
};

struct reg
{ char codigo[10],nombre[25],cargo[15];
float sueldo;
fing fecha;
};
// Declarando las funciones
void Leer(reg &);
void Ver(reg );
void Leer1(reg *R);
void Ver1(reg *R);
EJEMPLO ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
6
//Programa Principal
int main()
{
reg Ficha,Ficha1; reg *F;
cout<<"LECTURA DE DATOS"<<endl;
Leer(Ficha);cout<<"MOSTRANDO LOS DATOS"<<endl;
Ver(Ficha);
F=&Ficha1;
Leer1(F);
Ver1(F);
system("PAUSE");
}
EJEMPLO ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
7
//Implementacion del programa

void Leer(reg &T)
{ cout<<"Codigo:"; cin.getline(T.codigo,8);
cout<<"Nombres:"; cin.getline(T.nombre,25);
cout<<"Cargo:"; cin.getline(T.cargo,15);
cout<<"Sueldo:";cin>>T.sueldo;
cout<<"Fecha Ingreso\n";
cout<<"Dia:";cin>>(T.fecha.dd);
cout<<"Mes:";cin>>T.fecha.mm;
cout<<"Ao:";cin>>T.fecha.aa;
}
EJEMPLO ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
8
void Ver(reg T)
{ cout<<"Codigo :"<<T.codigo<<endl;
cout<<"Nombres :"<<T.nombre<<endl;
cout<<"Cargo :"<<T.cargo<<endl;
cout<<"Sueldo :"<<T.sueldo<<endl;
cout<<"Fecha Ingreso:"<<T.fecha.dd<<"/<<T.fecha.mm<<"/
<<T.fecha.aa<<endl;
}
void Ver1(reg *R)
{ cout<<"Codigo :"<<R->codigo<<endl;
cout<<"Nombres :"<<R->nombre<<endl;
cout<<"Cargo :"<<R->cargo<<endl;
cout<<"Sueldo :"<<R->sueldo<<endl;
cout<<"Fecha Ingreso:"<<R->fecha.dd<<"/"<<R->fecha.mm<<"/"<<R-
>fecha.aa<<endl;
}
EJEMPLO ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
9
// Declarando las funciones
void Leer1(reg *R)
{ cout<<"Codigo:"; cin.getline(R->codigo,6);
cout<<"Nombres:"; cin.getline(R->nombre,25);
cout<<"Cargo:"; cin.getline(R->cargo,15);
cout<<"Sueldo:";cin>>R->sueldo;
cout<<"Fecha Ingreso\n";
cout<<"Dia:";cin>>R->fecha.dd;
cout<<"Mes:";cin>>R->fecha.mm;
cout<<"Ao:";cin>>R->fecha.aa;
}
EJEMPLO ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
10
EJEMPLO ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
11
El verdadero poder de las estructuras radican cuando se
emplean para procesar grandes lista de datos.
Trabajar con un arreglo de estructuras, simplifica mucho
nuestro programa, ya que se usa una nica variable
subindicada en vez de usar varios arreglos
independientes para cada tipo de dato.
Declarar un arreglo de estructuras es lo mismo que
declarar un arreglo de cualquier otro tipo de variable.
ARREGLO DE ESTRUCTURAS
AL GORI T MOS Y P ROGRAMACI N
12
#include <iostream>
using namespace std;
const int M=25;
const int N=40;
struct nReg
{ long int id;
char nombre[20];
float tasa;
};
//Declarqcion de las funciones
void Leer(nReg X[],int n);
void Ver(nReg X[],int n);
EJEMPLO ARRAYS DE ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
13
//Programa principal
int main()
{ nReg A[N];
int n;
cout<<"Numero de registros:";cin>>n;
Leer(A,n);
Ver(A,n);
system("pause");
}
EJEMPLO ARRAYS DE ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
14
//Implementacion de las funciones
void Leer(nReg X[],int n)
{ int i;
for(i=0;i<n;i++)
{ cout<<"Id["<<i<<"]="; cin>>X[i].id;
cout<<"Nombre["<<i<<"]="; cin.getline(X[i].nombre,20);
cout<<"Tasa["<<i<<"]="; cin>>X[i].tasa;
}
}

void Ver(nReg X[],int n)
{ int i;
for(i=0;i<n;i++)
cout<<X[i].id<<"\t"<<X[i].nombre<<"\t"<<X[i].tasa<<endl;
}
EJEMPLO ARRAYS DE ESTRUCTURA
AL GORI T MOS Y P ROGRAMACI N
15
EJEMPLO ARRAYS DE ESTRUCTURA

S-ar putea să vă placă și