Sie sind auf Seite 1von 28

Creacin de sinnimos o alias

La instruccin typedes permite al usuario definir alias o sinnimos, es decir, nuevos tipos
de datos equivalentes a los ya existentes. El objetivo de esta instruccin consiste en
utilizar nombres ms apropiados y ms cortos para los tipos de datos, puesto evitamos
escribir la palabra struct en la declaracin de la variables.
La instruccin typedef se puede utilizar tanto como datos de datos simples como con
estructurados. Con los tipos de datos simples su uso no resulta muy prctico, ms bien
redundante. Por ejemplo, si tenemos que declarar cinco variables de tipo entero, c1, c2,
c3, c4, c5, para un problema en particular, lo hacemos de esta forma:

Si en cambio utilizramos la instruccin typedes; tendramos que escribir las siguientes


instrucciones

En los tipos de datos estructurados especficamente en la estructuras, su uso es


importante ya que elimina la necesidad de escribir reiteradamente la palabra struct cada
vez que hacemos referencia a una variable o apuntador de tipo estructura.
Observemos a continuacin la modificacin que realizamos al programa anterior:

Estructuras anidadas
Las estructuras representan un tipo de datos estructurados, que tiene por lo tanto varios
componentes. Cada uno de estos componentes puede a su vez ser un tipo de datos simple
o estructurado. Las estructuras anidadas se presentan cuando en la declaracin se una
estructura, por los menos uno de sus componentes es una estructura.
Ejemplo 1
Consideremos que en una empresa requieren almacenar la siguiente informacin de cada
empleado:
-Nombre del empleado (cadena de caracteres).
-Departamento de la empresa (cadena de caracteres).
-sueldo (sueldo).
-Domicilio
.Calle (cadena de caracteres), numero (entero), cdigo postal (entero), localidad (cadena
de caracteres).
A continuacin se muestra la representacin grfica de esta estructura:

El programa muestra la manera como se declara una estructura anidada, as como la


forma de acceso a los campos de cada una de las variables o apuntadores de tipo
estructura, tanto para la lectura como para la escritura. Observa que para la lectura de los
datos de algunas variables y apuntadores de tipo estructura se utiliza una funcin.

Estructuras con arreglos


Existen casos en la vida real en los que para resolver un problema manera eficiente necesitamos
utilizar estructuras combinadas con arreglos.
Observemos el siguiente ejemplo, en el que uno de los campos de la estructura es a su vez otro
arreglo.
Ejemplo:
En una escuela almacenan la informacin de sus alumnos utilizando arreglos unidimensionales. La
siguiente informacin de cada alumno se guarda en una estructura.
.matricula (entero).
.Nombre y apellido (cadena de caracteres).
.Promedio de las materias (arreglo unidimensional de reales).
Escribe un programa en C que obtenga lo siguiente:
a. La matrcula y el promedio de cada alumno.
b. Las matrculas de los alumnos cuya calificacin en la tercera materia sea mayor a 9.
c. El promedio de la materia 4.

Problemas propuestos
1. La informacin de todos los empleados dela empresa DATASYSTEM esta almacena en una
variable de tipo struct llamada empleado. La informacin con que se cuenta de cada
empelado es: nombre, sexo, sueldo.
Se pide realizar un programa que lea en un array de estructuras los datos de los n
trabajadores de la empresa y que imprima los datos del empelado con mayor y menor
salario.
2. A partir de la declaracin de las siguientes estructuras realice un programa en c que lea el
array ats y devuelva los datos(nombre ,pas, deporte) del atleta que ha ganado mayor
nmero de medallas.
Struct datos
{ char nombre [40];
Char pais [25];
};
Struct atleta
{ char deporte [30]
Struct datos pers;
Int nmedallas;
};
Struct atleta ats [30];
3. Un struct que almacene datos de una cancin en formato MP3: Artista, Ttulo, Duracin
(en segundos), Tamao del fichero (en KB). Un programa debe pedir los datos de una
cancin al usuario, almacenarlos en dicho struct y despus mostrarlos en pantalla.

4. Un programa que permita guardar datos de "imgenes" (ficheros de ordenador


que contengan fotografas o cualquier otro tipo de informacin grfica). De cada
imagen se debe guardar: nombre (texto), ancho en pxeles (por ejemplo 2000), alto
en pxeles (por ejemplo, 3000), tamao en Kb (por ejemplo 145,6). El programa
debe ser capaz de almacenar hasta 700 imgenes (deber avisar cuando su
capacidad est llena). Debe permitir las opciones: aadir una ficha nueva, ver
todas las fichas (nmero y nombre de cada imagen), buscar la ficha que tenga un
cierto nombre.
5. Un programa que pida el nombre, el apellido y la edad de una persona, los almacene en
un struct y luego muestre los tres datos en una misma lnea, separados por comas.
6. Un programa que pida datos de 8 personas: nombre, dia de nacimiento, mes de
nacimiento, y ao de nacimiento (que se deben almacenar en una tabla de structs).
Despus deber repetir lo siguiente: preguntar un nmero de mes y mostrar en pantalla
los datos de las personas que cumplan los aos durante ese mes. Terminar de repetirse
cuando se teclee 0 como nmero de mes.
7. Un programa que sea capaz de almacenar los datos de 50 personas: nombre, direccin,
telfono, edad (usando una tabla de structs). Deber ir pidiendo los datos uno por uno,
hasta que un nombre se introduzca vaco (se pulse Intro sin teclear nada). Entonces
deber aparecer un men que permita:

Mostrar la lista de todos los nombres.

Mostrar las personas de una cierta edad.

Mostrar las personas cuya inicial sea la que el usuario indique.

Salir del programa (lgicamente, este men debe repetirse hasta que se escoja la opcin
de salir).

8. Los trminos de un polinomio los podemos colocar como una estructura (coeficiente y
exponente). Ingresar el grado y los trminos de un polinomio y Escriba una funcion
que encuentre el valor numrico del polinomio.
9. Ingresar los datos de n clientes de un banco (cdigo, nombre, saldo). Haga un men
donde se pueda crear una Cuenta, consultar Saldo, depositar una cantidad, retirar
una cantidad y Mostrar todas las cuentas ingresadas.
10. Ingresar el nombre, nota del Examen1, nota del Examen2 y nota de Trabajos de n
alumnos si los pesos de los exmenes son 0.25 y del trabajo 0.5 encontrar el
promedio ponderado de cada alumno y reportarlos en orden de Merito, adems
reportar el Promedio general.

Problemas propuestos
1. Hacer un programa para ingresar los nombres y las notas de los alumnos de Lenguaje
de Programacin y se reporte:
a) Una Lista en orden Alfabtico
b) Una Lista en orden de Merito.

#include<iostream>
#include<string.h>
using namespace std;
struct Alumno{
char nombre[40];
float nota;
};
void
void
void
void
void

numAlumnos(int &n);
ingreso(Alumno A[i], int n);
reporte(Alumno A[i], int n);
ordenAlfabetico(Alumno A[ i], int n);
ordenMerito(Alumno A[i], int n);

int main()
{
Alumno A[100];
int n;
numAlumnos(n);
ingreso(A,n);
ordenAlfabetico(A,n);
cout<<"Lista en orden alfabetico"<<endl;
reporte(A,n);

ordenMerito(A,n);
cout<<"Lista en orden de Merito"<<endl;
reporte(A,n);
system("pause");
return 0;
}
void numAlumnos(int &n)
{
do{
cout<<"Numero de alumnos : ";
cin>>n;
}while(n<=0);
}
void ingreso(Alumno A[ i], int n)
{
int i;
for(i=0;i<n;i++)
{
cout<<"Datos del alumno"<<i+1<<endl;
cout<<"Nombre : ";
cin.get();
cin.getline(A[i].nombre,40);
do{
cout<<"Nota : ";
cin>>A[i].nota;
}while(A[i].nota<0 || A[i].nota>20);
}
}
void reporte(Alumno A[], int n)
{
int i;
for(i=0;i<n;i++)
cout<<A[i].nombre<<"t "<<A[i].nota<<endl;
}
void ordenAlfabetico(Alumno A[], int n)
{
int i,j;
Alumno temp;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(A[i].nombre,A[j].nombre)>0)
{
temp=A[i];
A[i]=A[j];
A[j]=temp;
}
}
void ordenMerito(Alumno A[ i], int n)
{
int i,j;

Alumno temp;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(A[i].nota<A[j].nota)
{
temp=A[i];
A[i]=A[j];
A[j]=temp;
}
}

2. Programa para ingresar las coordenadas de 2 puntos del plano cartesiano. Reportar la
distancia que hay entre ellos y la ecuacin de la recta que pasa por ellos.

#include<iostream>
#include<math.h>
using namespace std;
struct Punto{
float x;
float y;
};
void ingresoPunto(Punto &P,char mensaje[i]);
float distancia(Punto P1, Punto P2);
int main()
{
Punto P1, P2;
ingresoPunto(P1,"Primer Punto");
ingresoPunto(P2,"Segundo Punto");
cout<<"La distancia entre los puntos es :"<<distancia(P1,P2)<<endl;

system("pause");
return 0;
}
void ingresoPunto(Punto &P,char mensaje[ i])
{
cout<<mensaje<<endl;
cout<<"Valor de x : ";
cin>>P.x;
cout<<"Valor de y : ";
cin>>P.y;
}
float distancia(Punto P1, Punto P2)
{
return sqrt(pow(P1.x-P2.x,2)+pow(P1.y-P2.y,2));
}
3. Hacer un programa para ingresar 2 complejos y reporte la suma, resta,

multiplicacin y divisin de ellos.


#include<iostream>
#include<math.h>

using namespace std;


struct Complejo{
float real;
float imag;
};
void ingresoComplejo(Complejo &C, char mensaje[i]);
Complejo suma(Complejo C1, Complejo C2);
Complejo resta(Complejo C1, Complejo C2);
Complejo multiplicacion(Complejo C1, Complejo C2);
Complejo division(Complejo C1, Complejo C2);
void reporteComplejo(Complejo C,char mensaje[i]);
int main()
{
Complejo C1, C2,CS,CR,CM,CD;
ingresoComplejo(C1,"Primer Complejo");
ingresoComplejo(C2,"Segundo Complejo");
CS=suma(C1,C2);
CR=resta(C1,C2);
CM=multiplicacion(C1,C2);
CD=division(C1,C2);
reporteComplejo(CS,"Complejo Suma");
reporteComplejo(CR,"Complejo Resta");
reporteComplejo(CM,"Complejo Multiplicacion");
reporteComplejo(CD,"Complejo Divisin");
system("pause");
return 0;
}
void ingresoComplejo(Complejo &C, char mensaje[i])
{
cout<<mensaje<<endl;
cout<<"Parte real : ";
cin>>C.real;
cout<<"Parte imaginaria : ";
cin>>C.imag;
}
Complejo suma(Complejo C1, Complejo C2)
{
Complejo S;
S.real=C1.real+C2.real;
S.imag=C1.imag+C2.imag;
return S;
}
Complejo resta(Complejo C1, Complejo C2)
{
Complejo R;
R.real=C1.real-C2.real;
R.imag=C1.imag-C2.imag;
return R;
}
Complejo multiplicacion(Complejo C1, Complejo C2)

{
Complejo M;
M.real=C1.real*C2.real-C1.imag*C2.imag;
M.imag=C1.imag*C2.real+C1.real+C2.imag;
return M;
}
Complejo division(Complejo C1, Complejo C2)
{
Complejo D;
float den;
den=pow(C2.real,2)+pow(C2.imag,2);
D.real=(C1.real*C2.real+C1.imag*C2.imag)/den;
D.imag=(C1.imag*C2.real-C1.real+C2.imag)/den;
return D;
}
void reporteComplejo(Complejo C,char mensaje[i])
{
cout<<mensaje<<endl;
cout<<C.real;
if(C.imag>0) cout<<"+";
cout<<C.imag<<"i"<<endl;
}
4. Realice un programa de array de estructura con el cual haga un ingreso de registro
de factura*/
#include<iostream>
#include<stdlib.h>
#include<conio.h>
using namespace std;
struct factura
{
char nombre[30];
char apellido[20];
int ruc;
char producto[10];
double precio;
};
factura regware;
int main ()
{
clrscr();
gotoxy(15,3);cout<<"registro de factura..";
gotoxy(15,5);cout<<"ingrese el nombre del cliente: ";cin>>regware.nombre;
gotoxy(15,6);cout<<"ingrese el apellido:"; cin>>regware.apellido;
cin.ignore(1);
gotoxy(15,7);cout<<"ingrese el ruc:"; cin>>regware.ruc;
cin.ignore(1);
gotoxy(15,8);cout<<"ingrese el producto:"; cin>>regware.producto;
cin.ignore(1);
gotoxy(15,9);cout<<"ingrese el precio:"; cin>>regware.precio;
cout<<"enter para que imprima reporte..."<<endl;

system("cls");
gotoxy(15,3);cout<<"reporte de la factura:";
gotoxy(15,5);cout<<"nombre: "<<regware.nombre<<endl;
gotoxy(15,6);cout<<"apellido:"<<regware.apellido<<endl;
gotoxy(15,7);cout<<"ruc:"<<regware.ruc<<endl;
gotoxy(15,8);cout<<"producto:"<<regware.producto<<endl;
gotoxy(15,9);cout<<"precio:"<<regware.precio<<endl;
cout<<endl;
system("pause");
return 0;
}
/registro hardware un registro
//codigo: entero
//nombre: caracter
//tipo: caracter
//cantidad:entero
//precio:entero decimal
#include<iostream>
#include<stdio.h>
#include<conio.h>
using namespace std;
struct hardware
{
int codigo;
char Nombre[30];
char tipo[20];
int cantidad;
double precio;
};
hardware regware;
int main()
{
clrscr();
gotoxy(15,3);cout<<"entrada de datos..";
gotoxy(10,5);cout<<"ingrese codigo:";cin>>regware.codigo;
cin.ignore(1);
gotoxy(10,6);cout<<"ingrese el nombre dispositivo:"; gets(regware.Nombre);
gotoxy(10,7);cout<<"ingrese el tipo dispositivo:"; gets(regware.tipo);
cin.ignore(1);
gotoxy(10,8);cout<<"ingrese la cantidad:"; cin>>regware.cantidad;
gotoxy(10,9); cout<<"ingrese el precio:";cin>>regware.precio;
cout<<"enter para imprimir reporte....."<<endl; getch();
system("cls");
gotoxy(15,3);cout<<"reporte del hardware..";
gotoxy(10,5);cout<<"codigo:"<<regware.codigo;
gotoxy(10,6);cout<<" dispositivo:"<<regware.Nombre;
gotoxy(10,7);cout<<"tipo:"<<regware.tipo;
gotoxy(10,8);cout<<" cantidad:"<<regware.cantidad;
gotoxy(10,9); cout<<" precio:"<<regware.precio;

cout<<endl;
system("pause");
return 0;
}
5. Realice un programa de array de estructura con el cual haga un ingreso de registro
de transporte
#include<iostream>
#include<stdlib.h>
#include<conio.h>
using namespace std;
struct transporte
{
char nomb_uni[30];
int num_uni;
int num_asiento;
char destino [10];
double precio;
};
transporte regware;
int main ()
{
clrscr();
gotoxy(15,3);cout<<"registro de boleto..";
gotoxy(15,5);cout<<"ingrese el nombre de la unidad: ";cin>>regware.nomb_uni;
gotoxy(15,6);cout<<"ingrese el nmero de la unidad:"; cin>>regware.num_uni;
gotoxy(15,7);cout<<"ingrese el nmero del asiento:"; cin>>regware.num_asiento;
gotoxy(15,8);cout<<"ingrese el destino:"; cin>>regware.destino;
gotoxy(15,9);cout<<"ingrese el precio:"; cin>>regware.precio;
cout<<"enter para que imprima reporte..."<<endl;
system("cls");
gotoxy(15,3);cout<<"reporte de destino:";
gotoxy(15,5);cout<<"nombre de la unidad: "<<regware.nomb_uni<<endl;
gotoxy(15,6);cout<<"num_uni:"<<regware.num_uni<<endl;
gotoxy(15,7);cout<<"num_asi:"<<regware.num_asiento<<endl;
gotoxy(15,8);cout<<"destino:"<<regware.destino<<endl;
gotoxy(15,9);cout<<"precio:"<<regware.precio<<endl;
cout<<endl;
system("pause");
}
#include<conio.h>
using namespace std;
struct CONSULTA
{
string codigo;
long cedula;
char nombre[10];
char apellido[10];
int fecha;
int consulta;

};
int main()
{
int nmero, cantidad;
gotoxy(15,5);cout<<"Ingresando el N de registro:";
cin>>cantidad;
CONSULTA REGISTRO[cantidad];
for(int i=0;i<cantidad++)
{
system("cls");
gotoxy(15,5);cout<<"INGRESADOS DATOS";
gotoxy(10,6);cout<<"INGRESE EL CODIGO:";cin>>REGISTRO[i].cdigo;
gotoxy(10,7);cout<<"INGRESE EL N CEDULA:";cin>>REGISTRO[i].cedula;
cin.ignore(1);
gotoxy(10,8);cout<<"INGRESE EL NOMBRE:";gets(REGISTRO[i].nombre);
gotoxy(10,9);cout<<"INGRESE EL APELLIDO:";gets(REGISTRO[i].apellido);
cin.ignore(1);
gotoxy(10,10);cout<<"INGRESE LA FECHA:";cin>>REGISTRO[i].fecha;
gotoxy(10,11);cout<<"INGRESE EL NUMERO DE
CONSULTA:";cin>>REGISTRO[i].consulta;
cin.ignore(1);
system("pause");
}

for(int p=0;p<cantidad++)
{
system("cls");
gotoxy(15,5);cout<<"VISUALIZANDO DATOS...";
gotoxy(10,6);cout<<"CODIGO:"<<REGISTRO[p].codigo;
gotoxy(10,7);cout<<" CEDULA:"<<REGISTRO[p].cedula;
gotoxy(10,8);cout<<" NOMBRE:"<<REGISTRO[p].nombre;
gotoxy(10,9);cout<<"APELLIDO:"<<REGISTRO[p].apellido;
gotoxy(10,10);cout<<"FECHA:"<<REGISTRO[p].fecha;
gotoxy(10,11);cout<<"CONSULTA:"<<REGISTRO[p].consulta;
system("pause");
}
system("cls");
cout<<"Buscar el nmero de consulta"<<endl;
cin>>numero;
for(int i=0;i<cantidad++)
{
if(REGISTRO[i].consulta==numero)
{
gotoxy(20,5);cout<<"LA CONSULTA:"<<REGISTRO[i].consulta
<<"SE ENCUENTRA EN LA POSICION:"<<i+1;
}

else
gotoxy(25,5);cout<<"NO EXISTE LA CONSULTA";
}

system("pause");
return 0;
}
6. PROGRAMA DE CALCULANDO NOTAS.
#include<iostream>
#include<conio.h>
#include<stdio.h>
using namespace std;
struct estudiante
{ int codigo; char nombres[100];
float examen_parcial;
float examen_final;
float prom;
};
estudiante reg[30];
int main()
{
int n,i;
cout<<"ingrese nmero de alumnos ";
cin>>n;
clrscr();
cout<<"codigo:";
cin>>reg[i].codigo;
cout<<"nombres:"; gets(reg[i].nombres);
cout<<"nombres:"; cin>>reg[i].examen_parcial;
cout<<"nombres:"; cin>>reg[i].examen_final;
reg[i].prom=(reg[i].examen_parcial+reg[i].examen_final)/2;
getch();
}
7. Realizar una estructura de un estudiante, donde se pide:
a) ingresar 3 registros de alumnos
b) mostrar el contenido de los alumnos ingresados*/
#include <iostream>
#include <conio.h>
#include <stdlib.h>
using namespace std;
struct ALUMNOS
{
char nombre[10];
char apellido[15];
char direccion[20];
int edad;
};

int main( )
{
int cantidad,numero;
gotoxy(15,5);cout<<"INGRESE # DE REGISTRO:";
cin>>cantidad;
system("cls");
ALUMNOS REGISTRO[cantidad];
for(int i=0;i<cantidad;i++)
{
system("cls");
gotoxy(15,3);cout<<"INGRESANDOS REGISTROS..";
cin.ignore(1);
gotoxy(10,5);cout<<"INGRESE ELNOMBRE:";gets(REGISTRO[i].nombre);
gotoxy(10,6);cout<<"INGRESE EL APELLIDO:"; gets(REGISTRO[i].apellido);
cin.ignore(1);
gotoxy(10,7);cout<<"INGRESE LA DIRECCION:"; gets(REGISTRO[i].direccion);
gotoxy(10,8);cout<<"INGRESE LA EDAD:"; cin>>REGISTRO[i].edad;
}
gotoxy(15,5);cout<<"VISUALIZANDO EL REGISTRO....."<<endl;
for(int p=0;p<cantidad;p++)
{
system("cls");
gotoxy(15,3);cout<<"VISUALIZANDO EL REGISTRO.......";
gotoxy(10,5);cout<<"NOMBRE:"<<REGISTRO[p].nombre;
gotoxy(10,6);cout<<"APELLIDO:"<<REGISTRO[p].apellido;
gotoxy(10,7);cout<<"DIRECCION:"<<REGISTRO[p].direccion;
gotoxy(10,8);cout<<"EDAD:"<<REGISTRO[p].edad;
cout<<endl;
system("pause");
}

return 0;
}
8. Realizar una estructura de un estudiante:

#include <iostream>
#include <conio.h>
#include <stdlib.h>

using namespace std;


struct ALUMNOS
{
char nombre[10];

char apellido[15];
char direccion[20];
int edad;
};

int main( )
{
int cantidad,numero;
gotoxy(15,5);cout<<"INGRESE # DE REGISTRO:";
cin>>cantidad;
system("cls");
ALUMNOS REGISTRO[cantidad];
for(int i=0;i<cantidad;i++)
{
system("cls");
gotoxy(15,3);cout<<"INGRESANDOS REGISTROS..";
cin.ignore(1);
gotoxy(10,5);cout<<"INGRESE ELNOMBRE:";gets(REGISTRO[i].nombre);
gotoxy(10,6);cout<<"INGRESE EL APELLIDO:"; gets(REGISTRO[i].apellido);
cin.ignore(1);
gotoxy(10,7);cout<<"INGRESE LA DIRECCION:"; gets(REGISTRO[i].direccion);
gotoxy(10,8);cout<<"INGRESE LA EDAD:"; cin>>REGISTRO[i].edad;
}
gotoxy(15,5);cout<<"VISUALIZANDO EL REGISTRO....."<<endl;
for(int p=0;p<cantidad;p++)
{
system("cls");
gotoxy(15,3);cout<<"VISUALIZANDO EL REGISTRO.......";
gotoxy(10,5);cout<<"NOMBRE:"<<REGISTRO[p].nombre;
gotoxy(10,6);cout<<"APELLIDO:"<<REGISTRO[p].apellido;
gotoxy(10,7);cout<<"DIRECCION:"<<REGISTRO[p].direccion;
gotoxy(10,8);cout<<"EDAD:"<<REGISTRO[p].edad;
cout<<endl;
system("pause");
}

return 0;
}
#include<iostream>
#include<conio.h>
#include<stdio.h>
using namespace std;
struct estudiante
{ int codigo; char nombres[100]; //campos de la estructura//
float examen_parcial;

float examen_final;
float prom;
};
estudiante reg[30];
int main()
{
int n,i;
cout<<"ingrse numero de laumnos ";
cin>>n;
for(i=0;i<n;i++)
{ clrscr();
cout<<"coidgo:";
cin>>reg[i].codigo;
cout<<"nombres:"; gets(reg[i].nombres);
cout<<"nombres:"; cin>>reg[i].examen_parcial;
cout<<"nombres:"; cin>>reg[i].examen_final;
reg[i].prom=(reg[i].examen_parcial+reg[i].examen_final)/2;
} // en otro for ya lo muestras getch();
}
9. Realizar una estructura
a.- sobre consultas
b.- Visualizar el numero de consultas */

#include<iostream>
#include<stdlib.h>
#include<conio.h>
using namespace std;
struct CONSULTA
{
string codigo;
long cedula;
char nombre[10];
char apellido[10];
int fecha;
int consulta;
};

int main()
{
int numero,cantidad;

gotoxy(15,5);cout<<"Ingresando el N de registro:";
cin>>cantidad;
CONSULTA REGISTRO[cantidad];
for(int i=0;i<cantidad;i++)
{
system("cls");
gotoxy(15,5);cout<<"INGRESADOS DATOS";
gotoxy(10,6);cout<<"INGRESE EL CODIGO:";cin>>REGISTRO[i].codigo;
gotoxy(10,7);cout<<"INGRESE EL N CEDULA:";cin>>REGISTRO[i].cedula;
cin.ignore(1);
gotoxy(10,8);cout<<"INGRESE EL NOMBRE:";gets(REGISTRO[i].nombre);
gotoxy(10,9);cout<<"INGRESE EL APELLIDO:";gets(REGISTRO[i].apellido);
cin.ignore(1);
gotoxy(10,10);cout<<"INGRESE LA FECHA:";cin>>REGISTRO[i].fecha;
gotoxy(10,11);cout<<"INGRESE EL NUMERO DE CONSULTA:";cin>>REGISTRO[i].consulta;
cin.ignore(1);
system("pause");
}

for(int p=0;p<cantidad;p++)

{
system("cls");
gotoxy(15,5);cout<<"VISUALIZANDO DATOS...";

gotoxy(10,6);cout<<"CODIGO:"<<REGISTRO[p].codigo;
gotoxy(10,7);cout<<" CEDULA:"<<REGISTRO[p].cedula;
gotoxy(10,8);cout<<" NOMBRE:"<<REGISTRO[p].nombre;
gotoxy(10,9);cout<<"APELLIDO:"<<REGISTRO[p].apellido;
gotoxy(10,10);cout<<"FECHA:"<<REGISTRO[p].fecha;
gotoxy(10,11);cout<<"CONSULTA:"<<REGISTRO[p].consulta;
system("pause");

}
system("cls");
cout<<"Buscar el numero de consulta"<<endl;
cin>>numero;
for(int i=0;i<cantidad;i++)
{

if(REGISTRO[i].consulta==numero)
{
gotoxy(20,5);cout<<"LA CONSULTA:"<<REGISTRO[i].consulta
<<"SE ENCUENTRA EN LA POSICION:"<<i+1;
}
else

gotoxy(25,5);cout<<"NO EXISTE LA CONSULTA";


}

system("pause");
return 0;
}

10. Realizar una estructura


a.- sobre consultas
b.- Visualizar el nmero de consultas */

#include<iostream>
#include<stdlib.h>
#include<conio.h>
using namespace std;
struct CONSULTA
{
string codigo;
long cedula;
char nombre[10];
char apellido[10];
int fecha;
int consulta;
};
int main()
{
int numero, cantidad;

gotoxy(15,5);cout<<"Ingresando el N de registro:";
cin>>cantidad;
CONSULTA REGISTRO[cantidad];
for(int i=0;i<cantidad;i++)
{
system("cls");
gotoxy(15,5);cout<<"INGRESADOS DATOS";
gotoxy(10,6);cout<<"INGRESE EL CODIGO:";cin>>REGISTRO[i].codigo;

gotoxy(10,7);cout<<"INGRESE EL N CEDULA:";cin>>REGISTRO[i].cedula;
cin.ignore(1);
gotoxy(10,8);cout<<"INGRESE EL NOMBRE:";gets(REGISTRO[i].nombre);
gotoxy(10,9);cout<<"INGRESE EL APELLIDO:";gets(REGISTRO[i].apellido);
cin.ignore(1);
gotoxy(10,10);cout<<"INGRESE LA FECHA:";cin>>REGISTRO[i].fecha;
gotoxy(10,11);cout<<"INGRESE EL NUMERO DE CONSULTA:";cin>>REGISTRO[i].consulta;
cin.ignore(1);
system("pause");
}

for(int p=0;p<cantidad;p++)

{
system("cls");
gotoxy(15,5);cout<<"VISUALIZANDO DATOS...";
gotoxy(10,6);cout<<"CODIGO:"<<REGISTRO[p].codigo;
gotoxy(10,7);cout<<" CEDULA:"<<REGISTRO[p].cedula;
gotoxy(10,8);cout<<" NOMBRE:"<<REGISTRO[p].nombre;
gotoxy(10,9);cout<<"APELLIDO:"<<REGISTRO[p].apellido;
gotoxy(10,10);cout<<"FECHA:"<<REGISTRO[p].fecha;
gotoxy(10,11);cout<<"CONSULTA:"<<REGISTRO[p].consulta;
system("pause");

}
system("cls");
cout<<"Buscar el numero de consulta"<<endl;
cin>>numero;

for(int i=0;i<cantidad;i++)
{

if(REGISTRO[i].consulta==numero)
{
gotoxy(20,5);cout<<"LA CONSULTA:"<<REGISTRO[i].consulta
<<"SE ENCUENTRA EN LA POSICION:"<<i+1;
}
else

gotoxy(25,5);cout<<"NO EXISTE LA CONSULTA";


}

system("pause");
return 0;
}

/* R. Programa de Producto de */

#include<iostream>
#include<stdlib.h>
#include<conio.h>
using namespace std;
struct productos
{
char nomb [10];
int codig;
int f_elv;

int f_ven;
int cant;
double precio;
};
int main ()
{

productos regprod [10];


cout<<"Registro De Productos.."<<endl;
for(int x=0;x<10;x++)
{
double total;
cout<<"Nombre :";cin>>regprod[x].nomb;
cout<<"Codigo :";cin>>regprod[x].codig;
cout<<"Ao De Elavoracin :";cin>>regprod[x].f_elv;
cout<<"Ao De Vencimiento :";cin>>regprod[x].f_ven;
cout<<"Cantidad :";cin>>regprod[x].cant;
cout<<"Precio :";cin>>regprod[x].precio;
total=(regprod[x].cant*regprod[x].precio);

cout<<endl;
system("CLS");
}

system ("pause");
return 0;
}

Cairo, O.B (2006).Fundamento de programacin (1era. ed.).Mxico, Naucalpan de


Jurez: Cmara Nacional de la industria Editorial mexicana.
Paszniuk, R (2013). Estructuras y uniones en c++. Recuperado el 23 de Abril de
2013, de http://www.programacion.com.py/escritorio/c/estructuras-y-uniones-en-c.
gourky.B (2012).estructuras. Recuperado el 8 de junio del
2012,dehttp://cesarcmosquera.blogspot.com/.

Das könnte Ihnen auch gefallen