SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Downloaden Sie, um offline zu lesen
Presentacion de temaFacultad de Ingeniería Industrial y de Sistemas
Curso: LPE
UNIVERSIDAD NACIONAL DE INGENIERIA
Docente : Cordova Neri T.
Presentacion de tema
Modelo Relaciona
de base de datos
Presentacion de tema
DISEÑO DE MODULOS
MODULO : 4
MODULO : 3
MODULO 2 :
MODULO 1:
Archivo_Eliminacion_Fis.cpp
Arch_Actualiza_Tabla_Trabajador_2008_ok.cpp
arch_crearReporte_Trabajador_2008_ok.cpp
Arch_Crear_Tabla_Trabajador_2008_ok.cpp
Arch_Buscar_Tabla_Trabajador_2008_OK.cpp
Presentacion de temaConsiste en establecer la lógica de trabajar con Archivos de Texto, que puede
crearse bajo las siguientes modalidades:
1.- Usando Editor de Textos: word Pad, word, excel, etc.
Para editar el contenido del archivo, debe abrir la herramienta que defina
2.- Usando Lenguaje de Programación: Borland c++
Se realiza mediante el programa objeto a nivel de Sistema operativo o desde
consola.
Presentacion de tema
Presentacion de tema
1.- Registro de Alumnos:
Interface que ilustra el ingreso de registros para ser y guardados
en el archivo externo “Alumnos.txt”
2.-Listado de Alumnos:
Interface que ilustra los
registros ingresados y
almacenados en el l
archivo externo
“Alumnos.txt”
Presentacion de tema
struct ALUM
{ char nomb[12]; float prom; int cred;
}alumnos;
void main()
{int i,l,j=0,k=0; FILE *falumnos; char resp='S',dato_nomb[12]; system("color 1b");
system("title Por Cordova Neri Teodoro Crea_arch_P_jalar_p_Pila2013.cpp");
while(resp=='S') { clrscr(); system("color 1b");textbackground(4);
textbackground(2);gotoxy(20,2);cout<<" ==> CREANDO ARCHIVO <== ";
textbackground(2);gotoxy(15,3);cout<<"____________________________";
textbackground(4);gotoxy(10,5);
cprintf("Nombre Promedio Creditos ");
falumnos=fopen("Alumnos.txt","r+");
if(falumnos == NULL)
{ falumnos=fopen("Alumnos.txt","a+");
}
gotoxy(12,6+j);gets(dato_nomb);
fread(&alumnos,sizeof(alumnos),1,falumnos);
while(!feof(falumnos)) {if(strcmpi(alumnos.nomb,dato_nomb)==0)
{ gotoxy(36,16); fclose(falumnos);
extbackground(4); cprintf("Nombre ya existe......");
getche(); return;
}
fread(&alumnos,sizeof(alumnos),1,falumnos);
}
Presentacion de tema
textbackground(2);strcpy(alumnos.nomb,dato_nomb);
textbackground(2); textbackground(0);
do{ gotoxy(27,6+j);clreol();system("color 1b");
textbackground(2);cin>>alumnos.prom;
} while(alumnos.prom<0 || alumnos.prom>20);
gotoxy(44,6+j);cin>>alumnos.cred;
gotoxy(10,21);
cout<<"Ud tiene "<<k<<" registros para formar su PILA..";
gotoxy(4,16);textcolor(15);
cprintf("Desea ingresar mas alumnos <S/N>.."); cin>>resp;
k++;
for(i=1;i<=35;i++)
{ gotoxy(3+l,16);textcolor(0);cprintf("±"); }
fwrite(&alumnos,sizeof(alumnos),1,falumnos);
fclose(falumnos);
}
}
Presentacion de tema
//REPORTES
if(resp=='N') { int p=0; clrscr(); system("color 1b");
textbackground(2);gotoxy(20,2);cout<<" ==> LISTADO DE
REGISTROS <== ";
textbackground(2);gotoxy(10,3);cout<<"______________________";
gotoxy(10,6); cprintf("Nombre Promedio Creditos ");
textbackground(2);gotoxy(10,7);
cout<<"____________________________________________";
falumnos=fopen("Alumnos.txt","r+");
fread(&alumnos,sizeof(alumnos),1,falumnos);
while(!feof(falumnos))
{p++; gotoxy(14,7+p);
cout<<alumnos.nomb<<" "<<alumnos.prom<<"
"<<alumnos.cred;
fread(&alumnos,sizeof(alumnos),1,falumnos);
} }
getche(); return;
}
Presentacion de tema
1.- CREAND ESTRUCTURA DUNAMICA PILA, para cargar
registros del archivo creado
Interface que ilustra listado de registros mediante tecnica de PILA
Presentacion de tema
typedef struct nota_alumno // logica de mi PILA
{ char nomb[12];
float prome; int cred;
struct nota_alumno *sgte;
}nodo;
struct ALUM //creo mi modelo logico
{ char nomb[12];
float prom; int cred;
} alumnos;
FILE *falumnos;
int n;
CREAND ESTRUCTURAS: REGISTROS, ARCHIVOS Y PILAS
1.- CREAND ESTRUCTURA DINAMICA PILA
2.- CREAND ESTRUCTURA LOGICA REGISTRO
3.- CREAND VARIABLE LOGICA ARCHIVO
Presentacion de tema
nodo *crea_nodo(char valor1[12],float valor2,int valor3)
{ nodo *r ;
r=new nodo;
strcpy(r->nomb,valor1);
r->prome =valor2;
r->cred =valor3;
r->sgte=NULL;
return(r);
}
Creando una función que recibe datos de registro y
devuelve un NODO con estos datos
Presentacion de tema
Crear un Procedimiento para “ jalar” registros
void crea_lista(nodo *&p)
{ nodo *r; int nota,i;
p=NULL;
for(i=1;i<=n;i++)
{ fseek(falumnos,(i-1)*sizeof(ALUM),SEEK_SET);
fread(&alumnos,sizeof(alumnos),1,falumnos);
r=crea_nodo(alumnos.nomb,alumnos.prom,alumnos.cred);
if(p==NULL)
{p=r;
}
else
{r->sgte=p;
p=r;
}
}
fclose(falumnos);
Presentacion de temavoid listar_datos(nodo *p)
{ nodo *aux; int k=0,a=0;
aux=new nodo; aux=p;
if(aux==NULL)
{gotoxy(10,12);cout<<"PILA NO EXISTE...";getche();
}
gotoxy(4,2);
cout<<"MODULO 1:Usando Tenica Pila, cargar Registros del Archivo" ;
gotoxy(5,5);textbackground(132);
cprintf(" # Nombre Promedio creditos ");
gotoxy(3,6);cout<<"--------------------------------------------------------------" ;
textbackground(4);
while(aux!=NULL)
{ a++;
gotoxy(6,6+a);cout<<a<<".-"; gotoxy(11,6+a);cout<<aux->nomb;
gotoxy(31,6+a);cout<<aux->prome ; gotoxy(51,6+a);cout<<aux->cred;
aux=aux->sgte;
}
}
Crear un procedimiento para Listar registros mediante Pila
Presentacion de tema
Crear procedimiento para Listar registros con promedio >10
Presentacion de tema
void listar_datos1(nodo *p)
{ nodo *aux; int k=0,a=0; aux=new nodo;
aux=p;
if(aux==NULL)
{gotoxy(10,12);cout<<"PILA NO EXISTE...";getche();
}
system("color 1b"); gotoxy(3,2);
cout<<" Modulo 2:Usando Tenica de Pila, cargar Registros con Promedio >10 ";
gotoxy(8,5);textbackground(15);
textcolor(RED);cprintf("# Nombre Promedio Creditos ");
gotoxy(3,6);textbackground(4);
textcolor(RED);cprintf("________________________________________________");
while(aux!=NULL)
{ if(aux->prome>=10.00)
{a++;
gotoxy(8,7+a);cout<<a<<".-"; gotoxy(14,7+a);cout<<aux->nomb;
gotoxy(34,7+a);cout<<aux->prome ; gotoxy(54,7+a);cout<<aux->cred;
}
aux=aux->sgte;
}
return;
}
Crear un procedimiento para mostrar registros con promedio >10
Presentacion de tema
1717
Crear procedimiento para Listar Mayor y menor Promedio
Presentacion de tema
1818
void MINIMO_MAXIMO(nodo *p)
{ nodo *aux; char valor1[20], valor4[20]; int min=20,max=-1, valor3,valor5;
aux=new nodo; aux=p; system("color 1b");
gotoxy(3,3);cout<<" Modulo 3:Tenica de Pila, cargar Registros con Menor, Mayor ";
gotoxy(2,4);cout<<"------------------------------------------------------------------------------";
textcolor(RED);
while(aux!=NULL)
{ if(aux->prome>max)
{ max=aux->prome; strcpy(valor1,aux->nomb); valor3=aux->cred;
}
else
{
min=aux->prome; strcpy(valor4,aux->nomb); valor5=aux->cred;
}
aux=aux->sgte;
}
gotoxy(10,6);textbackground(15); textcolor(RED);
gotoxy(10,7); cout<<"maximo ="<<max<<", Nombre="<<valor1<<", creditos = "<<valor3;
gotoxy(10,9);cout<<"minimo ="<<min<<", Nombre="<<valor4<<", creditos = "<<valor5;
getche();
}
Crear procedimiento para Listar Mayor y menor Promedio
Presentacion de tema
1919
void main()
{ falumnos=fopen("Alumnos.txt","r+");
fseek(falumnos,0,SEEK_END);
n=ftell(falumnos)/sizeof(alumnos);
system("color 1b");
nodo *lista;
crea_lista(lista); getche();
listar_datos(lista); getche();clrscr();
listar_datos1(lista); getche(); clrscr();
MINIMO_MAXIMO(lista); getche();
fclose(falumnos);
getche();
}
Programa principal

Weitere ähnliche Inhalte

Was ist angesagt?

Estructura basica de_un_programa_en_c_
Estructura basica de_un_programa_en_c_Estructura basica de_un_programa_en_c_
Estructura basica de_un_programa_en_c_oscar020615
 
Estructura basica de_c_
Estructura basica de_c_Estructura basica de_c_
Estructura basica de_c_LaishaXime
 
Informe tecnico u 4-victor uex
Informe tecnico u 4-victor uexInforme tecnico u 4-victor uex
Informe tecnico u 4-victor uexvictoruex
 
Ficheros 6 to sistemas
Ficheros 6 to sistemasFicheros 6 to sistemas
Ficheros 6 to sistemasGaby Carrion
 
Elementos básicos de un lenguaje de alto nivel
Elementos básicos de un lenguaje de alto nivelElementos básicos de un lenguaje de alto nivel
Elementos básicos de un lenguaje de alto nivelRicardo Axel
 
Estructura de un programa
Estructura de un programaEstructura de un programa
Estructura de un programaMerary Arias
 
PresentacionARCHIVO DE CABECERA
PresentacionARCHIVO DE CABECERAPresentacionARCHIVO DE CABECERA
PresentacionARCHIVO DE CABECERABladimir Minga
 
Ficheros de cabecera
Ficheros de cabeceraFicheros de cabecera
Ficheros de cabeceraManuelJDavila
 
Programación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosProgramación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosJosé Antonio Sandoval Acosta
 
Fundamentos de Programacion - Unidad 3 Introduccion a la programacion
Fundamentos de Programacion - Unidad 3 Introduccion a la programacionFundamentos de Programacion - Unidad 3 Introduccion a la programacion
Fundamentos de Programacion - Unidad 3 Introduccion a la programacionJosé Antonio Sandoval Acosta
 
Archivos de Cabecera.
Archivos de Cabecera.Archivos de Cabecera.
Archivos de Cabecera.Luis Stifler
 
Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_Maztherprozh
 

Was ist angesagt? (15)

Estructura basica de_un_programa_en_c_
Estructura basica de_un_programa_en_c_Estructura basica de_un_programa_en_c_
Estructura basica de_un_programa_en_c_
 
Estructura basica de_c_
Estructura basica de_c_Estructura basica de_c_
Estructura basica de_c_
 
Informe tecnico u 4-victor uex
Informe tecnico u 4-victor uexInforme tecnico u 4-victor uex
Informe tecnico u 4-victor uex
 
Estructura basica para_c_
Estructura basica para_c_Estructura basica para_c_
Estructura basica para_c_
 
Ficheros 6 to sistemas
Ficheros 6 to sistemasFicheros 6 to sistemas
Ficheros 6 to sistemas
 
Elementos básicos de un lenguaje de alto nivel
Elementos básicos de un lenguaje de alto nivelElementos básicos de un lenguaje de alto nivel
Elementos básicos de un lenguaje de alto nivel
 
Estructura de un programa
Estructura de un programaEstructura de un programa
Estructura de un programa
 
PresentacionARCHIVO DE CABECERA
PresentacionARCHIVO DE CABECERAPresentacionARCHIVO DE CABECERA
PresentacionARCHIVO DE CABECERA
 
Ficheros de cabecera
Ficheros de cabecera Ficheros de cabecera
Ficheros de cabecera
 
Ficheros de cabecera
Ficheros de cabeceraFicheros de cabecera
Ficheros de cabecera
 
Programación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivosProgramación Orientada a Objetos -Unidad 6 archivos
Programación Orientada a Objetos -Unidad 6 archivos
 
Fundamentos de Programacion - Unidad 3 Introduccion a la programacion
Fundamentos de Programacion - Unidad 3 Introduccion a la programacionFundamentos de Programacion - Unidad 3 Introduccion a la programacion
Fundamentos de Programacion - Unidad 3 Introduccion a la programacion
 
Estadística con Lenguaje R: Sesión 1
Estadística con Lenguaje R: Sesión 1Estadística con Lenguaje R: Sesión 1
Estadística con Lenguaje R: Sesión 1
 
Archivos de Cabecera.
Archivos de Cabecera.Archivos de Cabecera.
Archivos de Cabecera.
 
Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_Estructura basica de_un_programa_c_
Estructura basica de_un_programa_c_
 

Ähnlich wie Formato de ppt

CLASE03_TEMA02_2.pptx
CLASE03_TEMA02_2.pptxCLASE03_TEMA02_2.pptx
CLASE03_TEMA02_2.pptxDiseoGrfico14
 
Sesion 02 c++
Sesion 02   c++Sesion 02   c++
Sesion 02 c++imagincor
 
Desarrollando aplicaciones .NET en Linux
Desarrollando aplicaciones .NET en LinuxDesarrollando aplicaciones .NET en Linux
Desarrollando aplicaciones .NET en LinuxMarlon Leandro
 
Fundamentos de Programación - Unidad II: Introducción a la Programación
Fundamentos de Programación - Unidad II: Introducción a la ProgramaciónFundamentos de Programación - Unidad II: Introducción a la Programación
Fundamentos de Programación - Unidad II: Introducción a la ProgramaciónJosé Antonio Sandoval Acosta
 
Persistencia de un modelo de objetos
Persistencia de un modelo de objetosPersistencia de un modelo de objetos
Persistencia de un modelo de objetosJorge Ercoli
 
Exposicion Akelos
Exposicion AkelosExposicion Akelos
Exposicion Akelosdokeosla
 
Desarrollo en Capas con .Net
Desarrollo en Capas con .NetDesarrollo en Capas con .Net
Desarrollo en Capas con .NetJorge Ercoli
 
Programacion iv sesion11 php
Programacion iv sesion11 phpProgramacion iv sesion11 php
Programacion iv sesion11 phpRoberto Garcia
 
Dprn2 unidad iii actividad 4 conjunto de objetos mediante colecciones en c#...
Dprn2   unidad iii actividad 4 conjunto de objetos mediante colecciones en c#...Dprn2   unidad iii actividad 4 conjunto de objetos mediante colecciones en c#...
Dprn2 unidad iii actividad 4 conjunto de objetos mediante colecciones en c#...Maestros en Linea
 
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionIng. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionJosé Antonio Sandoval Acosta
 
Taller introduccion symfony2
Taller introduccion symfony2Taller introduccion symfony2
Taller introduccion symfony2Mario IC
 
Cursores , procedimientos almacenados en oracle y sql server
Cursores , procedimientos almacenados en oracle y sql serverCursores , procedimientos almacenados en oracle y sql server
Cursores , procedimientos almacenados en oracle y sql serverHome
 

Ähnlich wie Formato de ppt (20)

CLASE03_TEMA02_2.pptx
CLASE03_TEMA02_2.pptxCLASE03_TEMA02_2.pptx
CLASE03_TEMA02_2.pptx
 
Sesion 02 c++
Sesion 02   c++Sesion 02   c++
Sesion 02 c++
 
Curso de pl sql básico
Curso de pl sql básicoCurso de pl sql básico
Curso de pl sql básico
 
Rmarkdown spanish
Rmarkdown spanishRmarkdown spanish
Rmarkdown spanish
 
Desarrollando aplicaciones .NET en Linux
Desarrollando aplicaciones .NET en LinuxDesarrollando aplicaciones .NET en Linux
Desarrollando aplicaciones .NET en Linux
 
Eesi prac2
Eesi prac2Eesi prac2
Eesi prac2
 
Django
DjangoDjango
Django
 
9.laravel
9.laravel9.laravel
9.laravel
 
Fundamentos de Programación - Unidad II: Introducción a la Programación
Fundamentos de Programación - Unidad II: Introducción a la ProgramaciónFundamentos de Programación - Unidad II: Introducción a la Programación
Fundamentos de Programación - Unidad II: Introducción a la Programación
 
Persistencia de un modelo de objetos
Persistencia de un modelo de objetosPersistencia de un modelo de objetos
Persistencia de un modelo de objetos
 
Exposicion Akelos
Exposicion AkelosExposicion Akelos
Exposicion Akelos
 
Desarrollo en Capas con .Net
Desarrollo en Capas con .NetDesarrollo en Capas con .Net
Desarrollo en Capas con .Net
 
Guia reportes
Guia reportesGuia reportes
Guia reportes
 
Practica 6 manejo de archivos v1
Practica 6 manejo de archivos v1Practica 6 manejo de archivos v1
Practica 6 manejo de archivos v1
 
Curso de pl sql básico
Curso de pl sql básicoCurso de pl sql básico
Curso de pl sql básico
 
Programacion iv sesion11 php
Programacion iv sesion11 phpProgramacion iv sesion11 php
Programacion iv sesion11 php
 
Dprn2 unidad iii actividad 4 conjunto de objetos mediante colecciones en c#...
Dprn2   unidad iii actividad 4 conjunto de objetos mediante colecciones en c#...Dprn2   unidad iii actividad 4 conjunto de objetos mediante colecciones en c#...
Dprn2 unidad iii actividad 4 conjunto de objetos mediante colecciones en c#...
 
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacionIng. Mecatrónica, Prog. Básica, U2 intro a la programacion
Ing. Mecatrónica, Prog. Básica, U2 intro a la programacion
 
Taller introduccion symfony2
Taller introduccion symfony2Taller introduccion symfony2
Taller introduccion symfony2
 
Cursores , procedimientos almacenados en oracle y sql server
Cursores , procedimientos almacenados en oracle y sql serverCursores , procedimientos almacenados en oracle y sql server
Cursores , procedimientos almacenados en oracle y sql server
 

Formato de ppt

  • 1. Presentacion de temaFacultad de Ingeniería Industrial y de Sistemas Curso: LPE UNIVERSIDAD NACIONAL DE INGENIERIA Docente : Cordova Neri T.
  • 2. Presentacion de tema Modelo Relaciona de base de datos
  • 3. Presentacion de tema DISEÑO DE MODULOS MODULO : 4 MODULO : 3 MODULO 2 : MODULO 1: Archivo_Eliminacion_Fis.cpp Arch_Actualiza_Tabla_Trabajador_2008_ok.cpp arch_crearReporte_Trabajador_2008_ok.cpp Arch_Crear_Tabla_Trabajador_2008_ok.cpp Arch_Buscar_Tabla_Trabajador_2008_OK.cpp
  • 4. Presentacion de temaConsiste en establecer la lógica de trabajar con Archivos de Texto, que puede crearse bajo las siguientes modalidades: 1.- Usando Editor de Textos: word Pad, word, excel, etc. Para editar el contenido del archivo, debe abrir la herramienta que defina 2.- Usando Lenguaje de Programación: Borland c++ Se realiza mediante el programa objeto a nivel de Sistema operativo o desde consola.
  • 6. Presentacion de tema 1.- Registro de Alumnos: Interface que ilustra el ingreso de registros para ser y guardados en el archivo externo “Alumnos.txt” 2.-Listado de Alumnos: Interface que ilustra los registros ingresados y almacenados en el l archivo externo “Alumnos.txt”
  • 7. Presentacion de tema struct ALUM { char nomb[12]; float prom; int cred; }alumnos; void main() {int i,l,j=0,k=0; FILE *falumnos; char resp='S',dato_nomb[12]; system("color 1b"); system("title Por Cordova Neri Teodoro Crea_arch_P_jalar_p_Pila2013.cpp"); while(resp=='S') { clrscr(); system("color 1b");textbackground(4); textbackground(2);gotoxy(20,2);cout<<" ==> CREANDO ARCHIVO <== "; textbackground(2);gotoxy(15,3);cout<<"____________________________"; textbackground(4);gotoxy(10,5); cprintf("Nombre Promedio Creditos "); falumnos=fopen("Alumnos.txt","r+"); if(falumnos == NULL) { falumnos=fopen("Alumnos.txt","a+"); } gotoxy(12,6+j);gets(dato_nomb); fread(&alumnos,sizeof(alumnos),1,falumnos); while(!feof(falumnos)) {if(strcmpi(alumnos.nomb,dato_nomb)==0) { gotoxy(36,16); fclose(falumnos); extbackground(4); cprintf("Nombre ya existe......"); getche(); return; } fread(&alumnos,sizeof(alumnos),1,falumnos); }
  • 8. Presentacion de tema textbackground(2);strcpy(alumnos.nomb,dato_nomb); textbackground(2); textbackground(0); do{ gotoxy(27,6+j);clreol();system("color 1b"); textbackground(2);cin>>alumnos.prom; } while(alumnos.prom<0 || alumnos.prom>20); gotoxy(44,6+j);cin>>alumnos.cred; gotoxy(10,21); cout<<"Ud tiene "<<k<<" registros para formar su PILA.."; gotoxy(4,16);textcolor(15); cprintf("Desea ingresar mas alumnos <S/N>.."); cin>>resp; k++; for(i=1;i<=35;i++) { gotoxy(3+l,16);textcolor(0);cprintf("±"); } fwrite(&alumnos,sizeof(alumnos),1,falumnos); fclose(falumnos); } }
  • 9. Presentacion de tema //REPORTES if(resp=='N') { int p=0; clrscr(); system("color 1b"); textbackground(2);gotoxy(20,2);cout<<" ==> LISTADO DE REGISTROS <== "; textbackground(2);gotoxy(10,3);cout<<"______________________"; gotoxy(10,6); cprintf("Nombre Promedio Creditos "); textbackground(2);gotoxy(10,7); cout<<"____________________________________________"; falumnos=fopen("Alumnos.txt","r+"); fread(&alumnos,sizeof(alumnos),1,falumnos); while(!feof(falumnos)) {p++; gotoxy(14,7+p); cout<<alumnos.nomb<<" "<<alumnos.prom<<" "<<alumnos.cred; fread(&alumnos,sizeof(alumnos),1,falumnos); } } getche(); return; }
  • 10. Presentacion de tema 1.- CREAND ESTRUCTURA DUNAMICA PILA, para cargar registros del archivo creado Interface que ilustra listado de registros mediante tecnica de PILA
  • 11. Presentacion de tema typedef struct nota_alumno // logica de mi PILA { char nomb[12]; float prome; int cred; struct nota_alumno *sgte; }nodo; struct ALUM //creo mi modelo logico { char nomb[12]; float prom; int cred; } alumnos; FILE *falumnos; int n; CREAND ESTRUCTURAS: REGISTROS, ARCHIVOS Y PILAS 1.- CREAND ESTRUCTURA DINAMICA PILA 2.- CREAND ESTRUCTURA LOGICA REGISTRO 3.- CREAND VARIABLE LOGICA ARCHIVO
  • 12. Presentacion de tema nodo *crea_nodo(char valor1[12],float valor2,int valor3) { nodo *r ; r=new nodo; strcpy(r->nomb,valor1); r->prome =valor2; r->cred =valor3; r->sgte=NULL; return(r); } Creando una función que recibe datos de registro y devuelve un NODO con estos datos
  • 13. Presentacion de tema Crear un Procedimiento para “ jalar” registros void crea_lista(nodo *&p) { nodo *r; int nota,i; p=NULL; for(i=1;i<=n;i++) { fseek(falumnos,(i-1)*sizeof(ALUM),SEEK_SET); fread(&alumnos,sizeof(alumnos),1,falumnos); r=crea_nodo(alumnos.nomb,alumnos.prom,alumnos.cred); if(p==NULL) {p=r; } else {r->sgte=p; p=r; } } fclose(falumnos);
  • 14. Presentacion de temavoid listar_datos(nodo *p) { nodo *aux; int k=0,a=0; aux=new nodo; aux=p; if(aux==NULL) {gotoxy(10,12);cout<<"PILA NO EXISTE...";getche(); } gotoxy(4,2); cout<<"MODULO 1:Usando Tenica Pila, cargar Registros del Archivo" ; gotoxy(5,5);textbackground(132); cprintf(" # Nombre Promedio creditos "); gotoxy(3,6);cout<<"--------------------------------------------------------------" ; textbackground(4); while(aux!=NULL) { a++; gotoxy(6,6+a);cout<<a<<".-"; gotoxy(11,6+a);cout<<aux->nomb; gotoxy(31,6+a);cout<<aux->prome ; gotoxy(51,6+a);cout<<aux->cred; aux=aux->sgte; } } Crear un procedimiento para Listar registros mediante Pila
  • 15. Presentacion de tema Crear procedimiento para Listar registros con promedio >10
  • 16. Presentacion de tema void listar_datos1(nodo *p) { nodo *aux; int k=0,a=0; aux=new nodo; aux=p; if(aux==NULL) {gotoxy(10,12);cout<<"PILA NO EXISTE...";getche(); } system("color 1b"); gotoxy(3,2); cout<<" Modulo 2:Usando Tenica de Pila, cargar Registros con Promedio >10 "; gotoxy(8,5);textbackground(15); textcolor(RED);cprintf("# Nombre Promedio Creditos "); gotoxy(3,6);textbackground(4); textcolor(RED);cprintf("________________________________________________"); while(aux!=NULL) { if(aux->prome>=10.00) {a++; gotoxy(8,7+a);cout<<a<<".-"; gotoxy(14,7+a);cout<<aux->nomb; gotoxy(34,7+a);cout<<aux->prome ; gotoxy(54,7+a);cout<<aux->cred; } aux=aux->sgte; } return; } Crear un procedimiento para mostrar registros con promedio >10
  • 17. Presentacion de tema 1717 Crear procedimiento para Listar Mayor y menor Promedio
  • 18. Presentacion de tema 1818 void MINIMO_MAXIMO(nodo *p) { nodo *aux; char valor1[20], valor4[20]; int min=20,max=-1, valor3,valor5; aux=new nodo; aux=p; system("color 1b"); gotoxy(3,3);cout<<" Modulo 3:Tenica de Pila, cargar Registros con Menor, Mayor "; gotoxy(2,4);cout<<"------------------------------------------------------------------------------"; textcolor(RED); while(aux!=NULL) { if(aux->prome>max) { max=aux->prome; strcpy(valor1,aux->nomb); valor3=aux->cred; } else { min=aux->prome; strcpy(valor4,aux->nomb); valor5=aux->cred; } aux=aux->sgte; } gotoxy(10,6);textbackground(15); textcolor(RED); gotoxy(10,7); cout<<"maximo ="<<max<<", Nombre="<<valor1<<", creditos = "<<valor3; gotoxy(10,9);cout<<"minimo ="<<min<<", Nombre="<<valor4<<", creditos = "<<valor5; getche(); } Crear procedimiento para Listar Mayor y menor Promedio
  • 19. Presentacion de tema 1919 void main() { falumnos=fopen("Alumnos.txt","r+"); fseek(falumnos,0,SEEK_END); n=ftell(falumnos)/sizeof(alumnos); system("color 1b"); nodo *lista; crea_lista(lista); getche(); listar_datos(lista); getche();clrscr(); listar_datos1(lista); getche(); clrscr(); MINIMO_MAXIMO(lista); getche(); fclose(falumnos); getche(); } Programa principal