Download - Apuntes de POO
![Page 1: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/1.jpg)
Instituto Politécnico Nacional
Escuela Superior de IngenieríaMecánica y Eléctrica
unidad Zacatenco
Apuntes de programación orientada a objetos
Profesora: America
Grupo: 2CM3
Alumno:
Hernández Nicolás José Eduardo
1
![Page 2: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/2.jpg)
Contenido
Arreglos de caracteres.....................................................................................................................14Arreglos de números........................................................................................................................16Bibliografía.......................................................................................................................................3Cadenas de caracteres.....................................................................................................................14Definición de funciones....................................................................................................................11Estructura de los programas en C/C++........................................................................................4Estructuras anidadas........................................................................................................................17Funciones de usuario.......................................................................................................................10Regresar valor..................................................................................................................................11Temario.............................................................................................................................................3Tipos Estructurados: struct..............................................................................................................16UR1.cpp............................................................................................................................................4UR11.................................................................................................................................................16UR2.cpp..............................................................................................................................................9UR3.cpp..............................................................................................................................................9UR4 // programa Pacman.................................................................................................................12UR5...................................................................................................................................................13
2
![Page 3: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/3.jpg)
Programación orientada a objetos
TEMARIO
1. Fundamentos de programación orientada a objetos.2. Clases y función miembro.3. Herencia y polimorfismo.4. Plantillas.5. Aplicaciones.
Bibliografía
1. C/C++, curso de programación, 2da. Ed. Fco. J. Ceballos, Alfaomega.2. Enciclopedia del lenguaje C++, 2da. Ed. Fco. J. Ceballos, Alfaomega.3. Programación orientada a objetos, 2da. Ed. Fco. J. Ceballos, Alfaomega.4. Programación orientada a objetos, 3da. Ed. Fco. J. Ceballos, Alfaomega.5. Aprenda y practique C++, 2da. Ed. Jamsa, Oxford.6. Resolución de problemas con C++ 2da. Ed. Savitch, Pretice Hall.7. Visual C++,NET, Pappas y Murray, Mac Graw Hill.8. Enciclopedia de Visual C++, 2da Ed. Fco. J. Ceballos, Alfaomega.
3
![Page 4: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/4.jpg)
REPASO
Estructura de los programas en C/C++
Librerías. Definición de constantes o macros. Declaración de variables globales. Definición o declaración de funciones de usuario. Función principal
void main ( ){}
UR1.cpp
//Instrucción básica obligatoria para todos los programas en C++.
void main ( ){}
La estructura/sintaxis de las funciones es:
tipo de dato nombre de la función (lista de parametros) void main ( )
Cuando la función no es void, se tiene que agregar un return.
En turbo C
void main (void) { } O int main (void) { return 0; }
En Dev C++ y En Visual C++
int main ( ) { return 0; }
4
![Page 5: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/5.jpg)
UR1_1.cpp
#include <iostream.h>#include “stdio.h”
Int main ( )
{ printf(“Texto en pantalla”); cout<<”Texto en pantalla con cout”; return 0;}
UR1_2.cpp
#include <iostream.h>#include <stdio.h>
const double PI=3.141592int main ( ){ cout<<Pi=”<<PI; return 0;}
#include <iostream.h>#include <stdio.h>#define PI 3.141592 //macro
int main (void){ printf(“PI=%f”,PI); Return 0;}
MACRO: Es un pedazo de código que es sustituido por una variable.
#define PI 3.141592#define p printf
int main ( ){ p(“PI=%f”,PI); return 0; }
#define T printf(“Presione una tecla para finalizar”);getch()
int main ( ){ P(“PI=%f”,PI); T; return 0;}
5
![Page 6: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/6.jpg)
Estructura básica
- Librerías- Definición de macros.- Declaración de variables globales.-Definición/declaración de usuario Declaración de la función definida.- Función principal Int main ( ) { Return 0; }
UR1_4#include <iostream>#include<graphics>
using namespace std;
#define Azul BLUE#define Rojo RED
Int main ( ){ initwindow(800,600,”Programa colores”); setcolor(Rojo); circle(100,100,30); getch(); closegraph(); return 0;}
“Intrucciones del lenguaje C++”
if. Sirve para realizar preguntas de manera que la respuesta sea un SI o un NO.
switch. Sirve para evaluar una respuesta, donde esa respuesta puede ser un número o un caracter.
Ciclos – for, while, do while. Sirve para repetir/iterar una o más instrucciones.
6
![Page 7: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/7.jpg)
Sintaxis
if( preguntas) -instrucciones del SI
else -instrucciones del NO
Se puede omitir el if pero no el elseif( ) -SI
Ejemplo:
if (10 > 11) cout<<”11 es el mayor”;//break por falta de respuesta que abra el SIelse cout<<”10 no es el mayos”;
switch(car){ case ‘A’: cout<<”Hola grupo 2CM3”; Instrucciones break;
case ‘S’: break; cout<<”Programa terminado…”; default: cout<<”Opción no valida”;}
Ciclos
for(condición inicial; condición final; incremento o decremento)
Ejemplo:
If anidados
If (pregunta) -SIelse if(pregunta) if(pregunta) -SI else –NO else -NO
7
for( i =1; i == 10; i ++) { cout<<i; cout<<endl; <- \n }
Nota: Para más de una instrucción se debe usar llaves {}
![Page 8: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/8.jpg)
Condición inicial;While (condición final) -instrucciones -incremento o decremento
Ejemplo:
do while condición inicialdo{ //Puede estar donde sea la condicion inicial, pero adentro vuelve a tener condición inicial el mismo valor, depende del programa. Instrucciones Incremento o decremento }while(condición final)
Ejemplo:
UR2.cpp
#include <iostream>#include <stdio.h>#include <graphics.h>
int main (){ int x; int y; initwindow(640,480,"Dibuja puntos"); x=10; y=10;
for(x=10;x<=600;x++) { putpixel(x,y,RED); } system("pause"); closegraph(); return 0;}
8
i =1;while(i == 10) { cout<<i<<endl; i ++; }
i =1;do{ cout<<i <<endl; i ++; }while(i == 10);
![Page 9: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/9.jpg)
UR3.cpp
#include <iostrean>#include <conio2.h> // graphies.h
using namespace std;
int main () //auttextxy(x,9,11*){ int x=40,y=24; char f; //initwindow(800,600,"Program"); gotoxy (x,y); //moveto(x,y); cout<<"*"; //outtext("*"); do{ getch (); f=getch();
switch (f) clrscr(); //clearderice(); { case 72: clrscr(); gotoxy(x,y--);//outtextx,y--"*"); cout<<"*"; break;
case 80: clrscr(); gotoxy(x,y++); cout<<"*"; break;
case 77: clrscr(); gotoxy(x++,y); cout<<"*"; break;
case 75: clrscr(); gotoxy(x--,y); cout<<"*"; break:
case 27: break: } } while (f!=27); return 0;}
Funciones de usuario
Sintaxis:Tipo de dato Nombre de la función (lista de parámetros o argumentos)
“Tipos de datos”
Los tipos de datos en C++Primitivos S.O 16 bits S.O 32 bitsTipo:Char 1 byte 2 bytesInt 2 bytes 4 bytesFloat 4 bytes 8 bytesdouble 8 bytes 16 bytes
9
![Page 10: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/10.jpg)
1bit {01 sist . binario 8 bits ≈ byte
{ 0−¿9sistemaoctal { 0−¿9
sistema decimal{ 0−¿F
sistemahexadecimal
S.O. 64 bits
int 2 bytes 215 214 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 22 21 20
float 4 bytes 231 230 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 22 21 20
double 8 bytes 263 262 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 22 21 20
Para excluir el tipo se usa void
Regresar valor
Siempre que una función sea distinta de void debe regresar con “return” el mismo tipo de dato de la función.
10
Ejemplo:
int suma (void)void suma (void){ int x,y,z; x=10; y=9; z=x+y; cout<<”La suma es: ”<<z;}
Ejemplo:
int suma (void){ int x,y,z; x=10; y=20; z=x+y; cout<<”La suma es: ”<<z; return (z);}
![Page 11: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/11.jpg)
Definición de funciones
void suma (void){ int x,y,z; x=10; y=20; z=x+y; cout<<”La suma es: ”<<z;}
int main ();{ suma(); return 0;}
int suma (void)int main (void)
int main ();{ int R; R=suma(); return 0;}
int suma(void){ int x,y,z; x=10; y=20; z=x+y; return (z);}
UR4 // programa Pacman
#include <iostream>#include <graphics.h>#define Esc 27#define Arriba 72#define Abajo 80#define Der 77#define Izq 75
void Pacman_Der (int x,int y);void Pacman_Izq (int x,int y);void Pacman_Arr (int x,int y);void Pacman_Aba (int x,int y);void Fantasma ();
int main ()
{ char f; int x=50; int y=400; initwindow(800,600,"Pacman"); Fantasma(); Pacman_Der(x,y); do { getch(); f=getch(); switch(f)
11
![Page 12: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/12.jpg)
{ case Arriba: cleardevice(); Fantasma(); if(y >= 50) { Pacman_Arr(x,y-=5); } else Pacman_Arr(x,y);
break;
case Abajo: cleardevice(); Fantasma(); if(y <= 550) { Pacman_Aba (x,y+=5); } else Pacman_Aba (x,y); break;
case Der: cleardevice(); Fantasma(); if(x <= 850) { Pacman_Der(x+=5,y); } else { x=0; Pacman_Der(x+=5,y); }
break;
case Izq: cleardevice(); Fantasma(); if(x >= -20) { Pacman_Izq(x-=5,y); } else { x=850; Pacman_Izq (x,y); } break;
case Esc: break;
}
}while (f!=Esc); system("pause"); closegraph(); return 0;}
void Pacman_Der (int x, int y){ setcolor(YELLOW); setfillstyle (1,YELLOW); pieslice(x,y,45,315,40);}
void Pacman_Izq (int x, int y){ setcolor(YELLOW); setfillstyle (1,YELLOW); pieslice(x,y,210,150,40);}
void Pacman_Arr (int x, int y){ setcolor(YELLOW); setfillstyle (1,YELLOW); pieslice(x,y,120,60,40);}
void Pacman_Aba (int x, int y){ setcolor(YELLOW); setfillstyle (1,YELLOW); pieslice(x,y,315,240,40);}void Fantasma (){ int x=500; int y=400; setcolor(RED); setfillstyle (1,RED); pieslice(x,y,0,360,35);
setcolor(BLACK); //BOCA setfillstyle (1,BLACK);
12
![Page 13: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/13.jpg)
pieslice(x+3,y,0,360,25); setcolor(RED); setfillstyle (1,RED); pieslice(x+3,y-5,0,360,27);
setcolor (WHITE); //OJO IZQ setfillstyle(1,WHITE); pieslice(490,395,0,360,12); setcolor (BLACK); setfillstyle(1,BLACK); pieslice(490,395,0,360,5);
setcolor (WHITE); //OJO DER setfillstyle(1,WHITE); pieslice(520,395,0,360,12); setcolor (BLACK); setfillstyle(1,BLACK); pieslice(520,395,0,360,5);
}
UR5
#include<iostream>#include<conio2.h>#include<cstdlib>#include<stdlib.h>#include<windows.h>
using namespace std;
int main (){ int x,y,n; clrscr(); srand(time(NULL)); for(n=1;!kbhit();n++) { if(n>15) n=1;
else { textcolor(n); x=rand()%80; y=rand()%25; gotoxy(x,y); cout<<"*"; Sleep(10); } } return 0;}
13
![Page 14: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/14.jpg)
Arreglos de caracteres
char name [10] 0 1 2 3 4 5 6 7 8 9
name
name [4]=getch();ocin>>name[4];
UR6#include <iostream>#include <conio2.H>
using namespace std;
int main (){ //int i; //i=0 char name [10]; system("cls"); /* */ name[0]='A'; name[1]='N'; name[2]='A'; cout<<"Nombre: "<<name[0]<<name[1]<<name[2]; getch(); return 0;}
14
‘\n’ Salto de línea
‘\r’ Enter
‘\a’ Pitido
‘\b’ barra de retroceso
![Page 15: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/15.jpg)
UR6_1#include <iostream>#include <conio2.H>
using namespace std;
int main (){ int i; i=0; char name [10]; clrscr(); cout<<"\n\n\t Escribe un nombre:"; do { name[i]=getche(); }while (name [i++]!='\r'); cout<<"\n\n\tEl nombre es: "; i=0; do { cout<<name[i]; }while (name [i++]!='\r'); getch(); return 0;}
UR7
#include <iostream>#include <conio2.h>
using namespace std;
int main (){ char name[10]; char papel[10]; char sapel[10]; char nombre[50]; system("cls"); cout<<"\n\tNombre: "; cin>>name;
15
![Page 16: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/16.jpg)
cout<<"\n\tApellido Paterno: "; cin>>papel; cout<<"\n\tApellido Materno: "; cin>>sapel; cout<<"\n\tEl primer nombre es: "<<name<<" "<<papel<<" "<<sapel<<endl; cin.ignore(); cout<<"\n\tDame otro nombre: "; cin.get(nombre,50); cout<<"\n\tEl segundo nombre es: "<<nombre; getch (); return 0;}
Cadenas de caracteresLa diferencia de arreglo y cadena es el NULL
Son un conjunto de caracteres de manera secuencial, al final debe existir un carácter especial llamado nolo (NULL) ‘\0’.
C++
cin>> name; // sin espacios en blanco.cin.get(name,10); //con espacios.
C
gets(name);scanf(“%s”,name);
name[0]=’A’name[1]=’N’name[2]=’A’name[3]=’\0’
16
‘A’ ‘N’ ‘A’ ‘\0’
![Page 17: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/17.jpg)
Programa en clase para 2 puntos
#include <iostream>#include <conio2.h>
using namespace std;
Int main ();{ int i=0; char usu[10]; char pass[10]; gotoxy(15,20); cout<<”usuario”; cin.get(usu,10); cout<<”\n\n\tpassword: ” while((pass[i]=getch())!= ‘\r’) i++; cout<<”\nusu’”<<usu<<”pass\n\n”<<endl; for(i=0; i<10; i++) cout<<pass[i]; return 0;
}
UR8
#include <iostream>#include <conio2.h>
using namespace std;
int main (){ int i=0; char usu[10]; char pass[10]; cout<<"\n\n\tUsuario: "; cin.get(usu,10); cout<<"\n\n\t\tPassword: "; /*while(pass[i]=getch() !='\r') i++;*/ for(i=0;i<10;i++) cin>>pass[i];
17
![Page 18: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/18.jpg)
cout<<"\n\tUsuario: "<<usu<<"\n\n\tPassword: "; for(i=0;i<10;i++) cout<<pass[i]; getch(); return 0;}
UR9#include <iostream>
#include <graphics.h>
using namespace std;
int main( ){
initwindow( 640 , 480 , "WinBGIm" );setfillstyle(1,RED);
bar(300,100,450,150);
int i;int x=300;int y=100;
i=0; char name [10]; cout<<"\n\n\t Escribe un nombre:"; do { setcolor(BLUE); moveto(x,y); name[i]=getch(); name[i+1]='\0'; outtext(name); // x+=10; }while (name [i++]!='\r');
getch();
closegraph( );return( 0 );
}
18
![Page 19: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/19.jpg)
UR10
Arreglos de números
Puede ser float, double y nombre que sea.
Int vect[10]; 2 bytes por celda
Float w[5] ; 4 bytes por celda
Double [3]; 8 bytes por celda
UR11
#include <iostream>#include <conio2.h>#define f 4
using namespace std;
int main (){ float calif [30][4]; char names [30][50]; float suma=0; char l; int i,n,j; clrscr(); cout<<"Cuantos nomeres quieres? "; cin>>n; cin.get(l);
for(i=0; i<n; i++) { cout<<"Dame el nombre "<<i+1<<": "; cin.get(names[i],50); cin.get(l); } for(i=0; i<n; i++)
{ suma=0; for(j=0; j<3; j++) { cout<<"\nDame calificacion "<<i+1<<": "; cin>>calif[i][j]; suma=suma+calif[i][j]; } calif[i][j]=suma/3; }
clrscr(); cout<<"\nLos datos proporcionados son:"; j=3; for(i=0; i<n; i++) { cout<<"\n\nNombre: "<<names[i]<<endl; cout<<"\nCalificacion final: "<<calif[i][j]; cout<<"\n"; }
getch(); return 0;}
19
![Page 20: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/20.jpg)
UNIDAD I Tipos Estructurados: struct
Sintaxis:
Struct nomstruct{ int d; int a; char m[10];}nomvar;
Estructura es un conjunto (más de 1) de datos de diferente o igual tipo
nombar.d=10;cin>>nomvar.m;nombar.a=2013;cinget(nomvar.names [0],50);
UI1
#include <iostream>#include <conio2.h>using namespace std;
struct flecha{ int d,a; char m[20];}h;
int main(){ fecha f; clrscr(); cout<<”Dame una fecha: ”; cout<<”Dia: ”; cin>>f.d; cout<<”\n mes: ”;
cin>>f.m; cout<<”\nAnhos: ”; cin>>f.a; cout<<”\nDame la fecha de hoy: ”; cout<<”\nDia: ”; cin>>h.d; cout<<”\n mes: ”; cin>>h.m; cout<<”\nAnho: ”; cin>>h.a; clrscr(); cout<<"Hoy es:"<<h.d<<"/"<<h.m <<"/"<<h.a<<endl; cout<<"otra fecha es: "<<f.d<<"/" <<f.m<<"/"<<f.a<<endl; getch(); return 0;}
20
![Page 21: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/21.jpg)
Estructuras anidadas
Una estructura anidada es una estructura o más dentro de otrasintaxis:
Struct una{ int x,y;}h;
h.x;h.y;
Struct dos{ char name[50]; Una dentro;}
Struct dos{ char name[50]; struct una { int x,y; }dentro;}cajota;
UI2
#include<iostream>#include<conio2.h>#include<string.h>
using namespace std;
struct datos{ char name[50],dir[80]; char email[80], tel[30]; int edad;}agenda;
void introduce (void);void cambio (void);void eliminar (void);
void introduce (void);{
cout<<"\n7.Regresar"; rc=getch();
switch(rc) { case '1': clrscr(); cout<<"Nombre: "; cin.get(agenda.name,50); break;
case '2': clrscr(): cout<<"Direccion: "; cin.get(agenda.dir,80); break;
case '3': clrscr(); cout<<"Telefono: "; cin.get(agenda.tel,30); break;
21
![Page 22: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/22.jpg)
char l; //para quitar el enter cout<<"Itroduce los datos"<<endl; cout<<"nombre: "; cin.get(agenda.name,50); cout<<"Direccion: "; cin.get(l);// para limpiar el buffer del teclado cin.get(agenda.dir,80); cout<<"Telefono: "; cin.get(l); cin.get(agenda.tel,30); cout<<"email: "; cin.get(l); cin.get(agenda.email,80); cout<<"Edad: "; cin>>agenda.edad;}
void cambios (void){ char rc; if(cont!=0) { cout<<"Que cambio deseas?"<<endl; cout<<"\n1.Nombre"; cout<<"\n2.Direccion"; cout<<"\n3.Telefono"; cout<<"\n4.Email"; cout<<"\n5.Edad"; cout<<"\n6.Todos";
int main (){ char op; int r; clrscr(); cout<<"*** Menu ***"<<endl; cout<<"\n1. Introducir datos"; cout<<"\n2. Cambios"; cout<<"\n3. Borrar "; cout<<"\n4. Salir"; cin>>r;// op=getch();
switch (r) { case '1': clrscr(); introduce(); break;
case '4': clrscr(); cout<<"Email: "; cin.get(agenda.email,80); break;
case '5': clrscr(); cout<<"Edad: "; cin>>agenda.edad; break;
case '6': clrscr(); introduce(); break;
case '7': break;
default: cout<<"opcion no valida";
} } else cout<<"no hay datos"; getch();}
void borrar (void){}
22
![Page 23: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/23.jpg)
case '2': clrscr(); cambios(); break;
case '3': clrscr(); borrar(); break;
case '4': break;
default: cout<<"Opcion no valida"; } getch(); return 0;
23
![Page 24: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/24.jpg)
UI3
#include<iostream>#include<conio2.h>#include<string.h>
using namespace std;
struct personales{ char name[50], dir[80], tel[30]; int edad;};
struct prof{ personales pers; char cat[30],materia[30]; float salario;}docente;
struct alumno{ personales al; char bol[30],carrera[30]; char gpo[20],salón[20]; float prom;}alumno;
void introProfe (void);void introAlum (void);void muestraProfe (void);void muestraAlum (void;)
int main (){ clrscr(); introProfe(); introAlum(); muestraProfe(); muestraAlum(); getch(); return 0;}
void introProfe (void){ char l; cout<<”Nombre profesor: ”; cin.get(docente.pers.name,50); cout<<”\nDireccion: ”; cin.get (l); cin.get(docente.pers.ir,80); cout<<”\n Tel: ”; cin.get (l); cin.get(docente.pers.tel,30); cout<<”\n Edad: ”; cin>>docente.pers.edad; cout<<”\nCategoria: ”; cin.get(l); cin.get(docente.cat, 30);
cout<<”\n Promedio: ”; cin>>alumno.prom;}
void muestaProf (void){ clrscr(); cout<<”\nLos datos del profesor son: ”; <<”\nNombre: ”<<docente.pers.name <<”\nDireccion: ”<<docente.pers.dir <<”\nTelefono: ”<<docente.pers.tel <<”\nEdad: ”<<docente.pers.edad <<”\nCategoria: ”<<docente.cat <<”\nMateria: ”<<docente.materia <<”\nSalario: ”<<docemte.salario; getch();
24
![Page 25: Apuntes de POO](https://reader035.vdocuments.net/reader035/viewer/2022062500/563db8c5550346aa9a96c973/html5/thumbnails/25.jpg)
cout<<”\n salario: ”; cin>>docente.salario; }
void introAlum (void){ char l; cout<<”Nombre del alumno: ”; cin.get(l); cin.get(alumno.name, 50); cout<<”\nDireccion: ”; cin.get(l); cin.get(alumno.al.dir,80); cout<<”\n Telefono: ”; cin.get(l); cin.get(alumno.al.tel,30); cout<<”\n edad: ”; cin>>alumno.al.edad; cout<<”\n Boleta: ”; cin.get(l); cin.get(alumno.bol,30); cout<<”\n Carrera: ”; cin.get(l); cin.get(alumno.carrera,30); cout<<”\nGrupo: ”; cin.get(alumno.gpo,20); cout<<”\n Salon: ”; cin.get(l); cin.get(alumno.salon,20);
}
void muestraAlum (void){ clrscr(); cout<<”\nDatos alumno: ”; cout<<”\nNombre: ”<<alumno.al.name <<”\nDireccion: ”<<alumno.al.dir <<”\nTelefono: ”<<alomno.al.tel <<”\nEdad: ”<<alumno.al.edad <<”\nBoleta: ”<<alumno.bol <<”\nCarrear: ”<<alumno.carrera <<”\nGrupo: ”<<alumno.gpo <<”\nSalon: ”<<alumno.salon <<”\nPromedio: ”<<alumno.prom;}
25