Vous êtes sur la page 1sur 30

INSTITUTO POLITCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERA MECNICA Y


ELECTRICA
UNIDAD ZACATENCO
INGENIERIA EN COMUNICACIONES Y ELECTRONICA
LABORATORIO DE COMPUTACION
APUNTES DE CLASE
GRUPO: 2CM2
ALUMNO:
AlCANTARA SANCHEZ ALDO YAIR
PROFESORA:
GONZALEZ SANCHEZ AMERICA

Apuntes repaso y primera


unidad
Estructura bsica de los programas en C++
Librerias
Definicion de constantes/macros
Definicion de variables globales
Definicin/declaracin de funciones de usuario
Macro.- es un pedazo de cdigo representado por una variable:
#define p printf
Las constantes son:
#define pi 3.141592, se pueden usar ambos trminos y son constantes, :
const float m=10.99;
Las variables globales se declaran antes del main(), ejemplo:
char n;
int x;
float t;
double vector;
int main()
{
//codificacin
}
En C++ se puede usar tanto el commando printf como el comando cout, pero
para usar este ltimo se debe declarar debajo de las libreras el comando:
using namespace std;.
Las variables tambin se llaman identificadores, inicializar es dar un valor
inicial: int a=0;.

Tipos de sistemas

Tipos de
datos/S.
O
char %c

16 bits

32 bits

64 bits

1 byte

1 byte

1 byte

int

%d

2 bytes

4 bytes

8 bytes

float &f

4 bytes

4 bytes

4 bytes

double
%ld
t_char

8 bytes

8 bytes

8 bytes

2 bytes

Sistema binario: es un sistema de numeracin en el que los nmeros se representan


utilizando solamente las cifras cero y uno (0 y 1).equivale a un byte.
Sistema decimal: El sistema de numeracin decimal utiliza como base el 10, es decir,
que sus agrupaciones se forman de 10 en 10. Es un sistema posicional, ya que las
cifras adquieren un valor relativo de acuerdo con el lugar donde se encuentren
(0,1,2,3,4,5,6,7,8,9).
Sistema octal: El sistema de numeracin octal es un sistema de numeracin en base 8, una
base que es potencia exacta de 2 o de la numeracin binaria. Esta caracterstica hace que la
conversin a binario o viceversa sea bastante simple. El sistema octal usa 8 dgitos (0, 1, 2, 3, 4, 5, 6,
7) y tienen el mismo valor que en el sistema de numeracin decimal.
Sistema hexadecimal: Este sistema es de base 16, lo que significa que para cada columna es
posible escoger uno de entre 16 dgitos. stos son O, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E y F. Para
contar en el sistema hexadecimal se inicia en la primera columna a la izquierda del punto
hexadecimal y se cuenta desde O hasta F. Una vez que se llena la primera columna, se pone en cero
a ella y se suma uno a la segunda columna. Despus del 18, 19, lA, 1B, 1C, 1D, lE, lF siguen el 20, 21,
y as sucesivamente. Despus del 9FFF sigue el A000, etc.

En C++ una variable se puede inicializar en cero sin usar el igual: int x(0);
Para finalizar una lnea de la codificacin se puede usar:
<<endl
\n
<<\n;
Las variables tipo char se declaran con comilla sencilla: char n =Juan;

Estructura de las funciones de usuario


Funciones de usuario: son procedimiento(un pedazo de codigo) creados por
el usuario con cierto formato.
Sintaxis
Tipo nomfun (lista de parmetros o argumento, void)
{
//codificacin
}
Ejemplo:
#include<stdio.h>
int main()
#include<iostream>
{
using namespace std;
suma();
void suma();
return 0;
{
}
//declaracion de la funcion
void suma()
}
{
Ejemplo 2:
//declaracion de la funcion
void suma();
}

Ejemplo:
Char suma();//devuelve un tipo
character
Int main()
{ char car;
Car=suma();
Return 0;
}
Char suma()
{char cad;
Return (cad);
}
Otro ejemplo
int suma(int x)//regresa un entero
{int y,s;
y=20;
s=y+x;
return(s);/*regresa el valor al main
donde fue llamada la function de
usuario*/
}
int main()
{int x, sum;
x=10;
sum=suma(x);
return 0;
}

Ejemplo
void suma(int x,int y)
{int s;
s=x+y;
}
int main()
{a=20
suma(10,a);
return 0:
}
Otro ejemplo:
//libreras
int suma(int a,int b);
int main()
{int x , y ,s;
cout<<dame el valor de x:;
cin>>x;
cout<<dame el valor de y:;
cin>>y;
s=suma(x,y);
cout<<la suma de
<<x<<+<<y<<es:<<s;
return 0;
}
int suma(int a, int b)
{int s;
s=a+b;
return 0;
}

Arreglos de datos
Un conjunto de datos (mas de uno) de datos del mismo tipo arreglos de
char/carcteres, secuencialmente.
nombr
Tipo nomVal[tamao];
e
char nombre [50]:
0
49
Directamente:
nombre[0]=A;
nombre[2]=
nombre[0]=
nombre[1]=n;
A;
A;
nombre[2]=a;
cout<<nombre[0];
printf(%c,nombre[1]);
ejemplo:
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{char name[20];
name[0]=;
name[1]=;
name[2]=;
cout<<el valor;
getch ();
return 0;
}
Pr1:
//pide nombre y apellido
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
char name[20],apell[30];
cout<< "dame tu nombre:
";
cin>>name;

cout<< "dame tu apellido:


";
cin>>apell;
printf("\n El nombres es:
%s", name);
cout<<"\n EL apellido es:
"<<apell;
getch();
return 0;
}

Pr2:
//imprime un nombre
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
char name[20];
name[0]='A';
name[1]='l';
name[2]='d';
name[3]='o';
name[4]='y';
name[5]='a';
name[6]='i';
name[7]='r';
cout<<"EL VALOR DE NAME ES: ";
cout<<name[0]<<name[1]<<name[2]<<name[3]<<name[4]<<name[5]<<n
ame[6]<<name[7];
getch();
return 0;
}
cin: es para capturer o recibir datos proporcionado por el usuario hasta
introducer enter.
getch(): Es para recibir un carcter, sin terminar con enter. No muestra en
pantalla.
getche():espera un carcter sin enter pero lo muestra en pantalla.
cin>>name;//cadena de caracteres
Caracteres especiales:
\n= salto de lnea
\lr= enter.
\b=borrado
\a=emite un pitido
\0=carcter nulo(NULL)
\t=tabulador

Cada caja es de 4 bytes

Arreglos numricos
Sintaxis:
int vec[5];
553
vec[0]=
Cadenas
A;
Cadenas de carcterer: son iguales que los arreglos de caracteres pero al
final debe llevar un carcter especial llamado nulo (NULL).
Sintaxis:
char name[50];
A [0] N
A
[49]
Pr3:
//pide que introduscas un nombre
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
char name[20];
cout<<"DAME TU NOMBRE";
cin>>name[0];
name[0]=getche();
name[1]=getche();
name[2]=getche();
name[3]=getche();
name[4]=getche();
name[5]=getche();
name[6]=getche();
name[7]=getche();
getch();
return 0;
}
Pr4:
// Pide nombre, edad y calificaciones para sacar promedio de estas y lo
imprime

#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
char name[20],apel[30];
int edad;
float calif[3],prom;
cout<<"Dame tu nombre: ";
cin>>name;
cout<<"Dame tu edad: ";
cin>>edad;
cout<<"Dame tu calif1: ";
cin>>calif[0];
cout<<"Dame tu calif2: ";
cin>>calif[1];
cout<<"Dame tu calif3: ";
cin>>calif[2];
prom=(calif[0]+calif[1]+calif[2])/3;
cout<<"\n
cout<<"\n
cout<<"\n
cout<<"\n
cout<<"\n
cout<<"\n
cout<<"\n
getch();
return 0;

Los datos proporcionados son: "<<endl;


Nombre: "<<name<<endl;
Edad: "<<edad<<endl;
Calif1: "<<calif[0]<<endl;
Calif2: "<<calif[1]<<endl;
Calif3: "<<calif[2]<<endl;
Promedio: "<<prom<<endl;

}
Ciclos: sirven para repetir/iterar una o ms instrucciones.
Existen 3 tipos:
for
while
do while
sintaxis del for
for(condicin inicial;condicin final; incremento)//para mas de una instruccin
se usan llaves
sintaxis del while
condicin inicial
while(condicin final)
{instrucciones;

//Incremento o decremento
}//cierre del while
Sintaxis de do while:
Condicion inicial
do{
/*incremento o decremento
Instrucciones*/
}while(condicin final);

Formas de anlisis o metodologas para el


entendimiento de los ciclos.
Diagrama de flujo:

Pseudocodigo:

Pr5:
//desplegar numeracion con for
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
Pr6:
//Desplegar numeracion con while
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
int i;
i=1;//i=0
while(i<=100)
cout<<i++<<",";//++i
getch();
return 0;
}
Pr7:
//despliega numeracin con do while
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
int i;
i=1;
do
{
cout<<i++<<",";
} while(i<=100);
getch();
return 0;
}

int i;
for(i=1;i<=100;i++)
cout<<i;
getch();
return 0;
}

Pr8:
//Desplegar numeracion con while pares
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
int main()
{
int i;
i=2;
while(i<=100)
{cout<<i<<",";//++i
i=i+2;//i+=2;
}
getch();
return 0;
}
Estructura if: sirven para realizar preguntas, estas deben estar hechas dee
manera que la respuesta sea un si o un no
Sintaxis
if(pregunta)
respuesta verdadera
else
respuesta falsa
switch: es un switcheador/seleccionador de varias condiciones
sintaxis
switch(carcter o entero)
{
case 1: ;
break;
case A: ;
break;
}
Pr9:
//mueve asterisco con switch y topes
#include<stdio.h>
#include<conio2.h>
int main()

{
char f;
int x,y;
x=40;
y=12;
gotoxy(x,y);
printf("*");
do
{
getch();
f=getch();
clrscr();
switch(f)
{
//arriba
case 72: if (y>1)
{
gotoxy (x,y--);
printf("*");
}
else
{
gotoxy(x,y);
printf("*");
}
break;
//abajo
case 80: if (y<25)
{
gotoxy (x,y++);
printf("*");
}
else
{
gotoxy(x,y);
printf("*");
}
break;
//izquierda
case 75: if (x>1)
{
gotoxy (x--,y);

printf("*");
}
else
{
gotoxy(x,y);
printf("*");
}
break;
//derecha
case 77: if (x<80)
{
gotoxy (x++,y);
printf("*");
}
else
{
gotoxy(x,y);
printf("*");
}
break;
}//fin del switch
}
while(f!=27);
return 0;
}

Unidad 1
Programacin orientada a objetos
Estructuras: un conjunto de datos (ms de uno) de diferente tipo creadas por el
usuario. Datos personalizados.
Sintaxis:
Struct fecha //en vez de fecha va cualquier nombre
{char name[50];
char tel[50];
int edad;
}caja;//nombre de la estructura

Ejemplo:
Programa u1p1
//muestra fecha con estructura
#include <iostream>
#include <conio.h>
using namespace std;
struc fecha
{
int d;
char m [20];
int a;
}f;
void pidefecha (void)
{
cout<<"dame una fecha:"<<endl;
cout<< "Dia";
cin >> f.d;
cout<< "\n Mes:";
cin >> f.m;
cout<< "\n Ao";
cin >> f.a;
}
void muestrafecha (void)
{
cout <<"la fecha proporcionada fue :"<<f.d<<"/"<<f.m<<"/"<<f.a;
}
int main ()
{
pidefecha ();
muestrafecha ();
getch();
return 0;
}
Programa 1.1
U1p1_1
//pide fecha con funciones
#include<iostream>
#include<conio.h>
using namespace std;
struct fecha
{
int d;

char m;
int a;
} f;
void pidefecha(void)
{
cout<<"Dame una fecha:"<<endl;
cout<<"Dia:";
cin>>f.d;
cout<<"\n Mes:";
cin>>f.m;
cout<<"\n Ao:";
cin>>f.a;
}
void muestrafecha(void)
{
cout<<"La fecha proporcionada fue:"
<<f.d<<"/"<<f.m<<"/"<<f.a;
}
int main()
{
pidefecha();
muestrafecha();
getch();
return 0;
}
Programa u1p1.2
uip1_2
#include<iostream>
#include<conio.h>
using namespace std;
struct fecha
{
int d;
char m;
int a;
} f;
void pidefecha(void)
{
cout<<"Dame una fecha:"<<endl;
cout<<"Dia:";
cin>>f.d;
cout<<"\n Mes:";
cin>>f.m;

cout<<"\n Ao:";
cin>>f.a;
}
void muestrafecha(void)
{
cout<<"La fecha proporcionada fue:"
<<f.d<<"/"<<f.m<<"/"<<f.a;
}
int main()
{
fecha hoy,cumple;
muestrafecha();

getch();
return 0;
}
Programa u1p2
uip2
//lo mismo pero dentro del main...
#include <iostream>
#include <conio.h>
using namespace std;
struc fecha
{
int d;
char m [20];
int a;
}f;
void pidefecha (void)
{
cout<<"dame una fecha:"<<endl;
cout<< "Dia";
cin >> f.d;
cout<< "\n Mes:";
cin >> f.m;
cout<< "\n Ao";
cin >> f.a;
}
void muestrafecha (void)
{
cout <<"la fecha proporcionada fue :"<<f.d<<"/"<<f.m<<"/"<<f.a;
}

int main ()
{
fecha hoy, cumple;
pidefecha ();
muestrafecha ();
cout<< "dame la fecha de hoy :";<< endl;
cout << "Dia:";
cin >> hoy.d;
cout <<"\n mes :";
cin>>hoy.m;
cout<< "\ao: ";
cin >> hoy.a ;
getch();
return 0;
}
Estructuras anidadas: son una estructura dentro de la otra.
u1p3
//estructura dentro de otra
#include <iostream>
#include <conio.h>
using namespace std;
struct fecha
{
int d,m,a;
};
struct datos
{
char name [50];
char dir[80];
char tel [20];
char email[30];
int edad;
fechacumple;
}agenda;
void pidedatos (void)
{
cout<<"dame tu nombre:";
cin>>agenda.name;
cout<<"dame tu direccion:";
cin>> agenda.dir;
cout<<"dame tu telefono:";
cin >> agenda,tel;

cout << "dame tu email:";


cin>> agenda.email;
cout << "dame tu edad:";
cin>>agenda edad;
cout<<"dame tu fecha de cumpleaos:";
cout<<"\n dia";
cin >> agenda.cumple.d;
cout <<"\n mes";
cin>>agenda.cumple.m;
cout<<"\n ao";
cin>>agenda.cumple.a;
}
void muestradatos (void)
{
cout<< "los datos son:\n"
<< "nombre:"<<agenda.name<<endl
<<"direccion:"<<agenda.dir<<endl
<< "telefono:"<<agenda.tel<< endl
<<"email:"<<agenda.email<<endl
<<"edad:"<<ageda.edad<<endl
<<"cumpleaos:";<<agenda.cumple.d<< "/"<<agenda.cumple.m
<<"/"<<agenda.cumple.a;
{
int main()
{
pidedatos();
muestradatos();
getch();
return 0;
}
Programa u1p3_1
//DATOS AGENDA ANIDADA CON MENU
#include<iostream>
#include<conio.h>
#include<stdlib.h>
using namespace std;
struct fecha
{
int d,m,a;
};
struct datos
{

char name[50];
char dir[80];
char tel[20];
char email[30];
int edad;
fecha cumple;
}agenda;
void pideDatos(void)
{
cout<<"\nDame tu nombre ";
cin>>agenda.name;
cout<<"Dame tu direccion: ";
cin>>agenda.dir;
cout<<"Dame tu telefono: ";
cin>>agenda.tel;
cout<<"Dame tu email: ";
cin>>agenda.email;
cout<<"Dame tu edad: ";
cin>>agenda.edad;
cout<<"\nDame tu fecha de cumpleaos: ";
cout<<"\nDia: ";
cin>>agenda.cumple.d;
cout<<"\nMes: ";
cin>>agenda.cumple.m;
cout<<"\nAo: ";
cin>>agenda.cumple.a;
}
void muestraDatos(void)
{
cout<<"\n\tLos datos son: \n"
<<"Nombre:"<<agenda.name<<endl
<<"Direccion:" <<agenda.dir<<endl
<<"Telefono: "<<agenda.tel<<endl
<<"Email:"<<agenda.email<<endl
<<"Edad:"<<agenda.edad<<endl
<<"Cumpleaos: "
<<agenda.cumple.d<<"/"<<agenda.cumple.m<<"/"<<agenda.cumple.a;
}
void cambios (void)
{ char rc;

do{
cout<<"*****CAMBIOS*****"<<endl;
cout<<"1.Nombre."<<endl;
cout<<"2.Direccion."<<endl;
cout<<"3.Telefono."<<endl;
cout<<"4.Email."<<endl;
cout<<"5.Edad."<<endl;
cout<<"6.Fecha."<<endl;
cout<<"7.Regresar al MENU principal."<<endl;
cout<<"Que cambio desea realizar?"<<endl;
rc=getch();
switch (rc)
{
case '1': cout<<"Dame tu Nombre:";
cin>>agenda.name;
break;
case '2': cout<<"Dame tu Direccion:";
cin>>agenda.dir;
break;
case '3': cout<<"Dame tu Telefono";
cin>>agenda.tel;
break;
case '4': cout<<"Dame tu Email";
cin>>agenda.email;
break;
case '5': cout<<"Dame tu Edad";
cin>>agenda.edad;
break;
case '6': cout<<"Dame tu Cumpleaos:";
cout<<"Dia:";
cin>>agenda.cumple.d;
cout<<"Mes:";
cin>>agenda.cumple.m;
cout<<"Ao:";
cin>>agenda.cumple.a;
break;
case '7': break;
default: cout<<"\n Opcin Invalida\n";

}
muestraDatos();
getch();
}
while(rc!='7');
}
int main()
{
system("color 2f");
// int r;
char r;
do
{
cout<<"1. Introduce.";
cout<<"\n2. Muestra.";
cout<<"\n3. Cambios.";
cout<<"\n4. Salir.";
cout<<"\nElige una opcin: ";
r=getch();

switch (r)
{
case '1': pideDatos();
break;
case '2': muestraDatos();
break;
case '3': cambios();
break;
case '4': break;
default: cout<<"\n Opcion NO valida...";
}
}while(r!='4');
cout<<"\nPresione una tecla para continuar...";
getch();
return 0;
}
Programa u1p4
//suma dos complejos con estructuras
uip4
#include<iostream>

#include<conio2.h>
using namespace std;
struct complejo
{
float r,i;
}A,B,C;
void pedir(void);
void suma(void);
int main()
{
pedir();
suma();
getch();
return 0;
}
void pedir(void)
{
cout<<"Dame parte real de A: ";
cin>>A.r;
cout<<"Dame la parte imaginaria de A: ";
cin>>A.i;
cout<<"Dame el valor real de B: ";
cin>>B.r;
cout<<"Dame el valor imaginario de B: ";
cin>>B.i;
}
void suma(void)
{
C.r=A.r+B.r;
C.i=A.i+B.i;
cout<<"La suma de\n "<<A.r<<" + "<<A.i<<"i"<<endl
<<B.r<<" + "<<B.i<<"i"<<endl
<<C.r<<" + "<<C.i<<"i"<<endl;
}
Programa U1p4_1
U1P4_1
//Suma de dos numeros complejos con Estructura U1P4_1
#include<iostream>
using namespace std;
struct complejo
{
float r,i;
};
complejo suma(complejo A,complejo B);
complejo pedir();

int main()
{
complejo A,B,C;
cout<<"Dame el numero complejo A: \n";
A=pedir();
cout<<"\nDame el numero complejo B: \n";
B=pedir();
C=suma(A,B);
cout<<"\nLa suma es: \n"<<A.r<<"+"<<A.i<<"i"<<endl
<<B.r<<"+"<<B.i<<"i"<<endl
<<C.r<<"+"<<C.i<<"i"<<endl;
system("pause");
return 0;
}
complejo pedir()
{
complejo Aux;
cout<<"\nDame parte real: ";
cin>>Aux.r;
cout<<"\nDame parte imaginaria: ";
cin>>Aux.i;
return(Aux);
}
complejo suma(complejo A,complejo B)
{
complejo C;
C.r=A.r+B.r;
C.i=A.i+B.i;
return(C);
}

Clases en C
Son un conjunto (mas de uno) de datos de diferente tipo, creados por el
usuario, adems mas funciones. Todas las clases tipo struct se concideran
publicas,Struct
lo quename
se alcanza con el punto son publicas.
int
Clas
e

Pedir
()

doub
le
Suma
()

Datos miembro
de la clase o
atributos
Funciones
miembro de la
clase o
metodos

Programa u1p5:
//suma dos numeros complejos con
clases tipo struct (clases en c)

#include<iostream>
#include<conio2.h>

using namespace std;


struct complejo // clase
{ float r,i;
void pedir()
{ cout<<"Dame parte real: ";
cin>>r;
cout<<"Dame parte imaginaria:
";
cin>>i;
}
void suma(complejo A,complejo B)
{ r=A.r+B.r;
i=A.i+B.i;
}
};//cierre de la clase
int main()

Programa u1p5_1:
/*suma dos numeros complejos con
clases tipo struct (clases en c) con
funciones*/
#include<iostream>
#include<conio2.h>
using namespace std;
struct complejo // clase
{ float r,i;
void pedir()
{ cout<<"Dame parte real: ";
cin>>r;
cout<<"Dame parte imaginaria:
";
cin>>i;
}
void suma(complejo A,complejo
B)
{ r=A.r+B.r;
i=A.i+B.i;
}
void muestraTodo(complejo
A,complejo B)
Programa u1p5_2

{ complejo A,B,C;
cout<<"Dame el numero complejo
A: \n";
A.pedir();
cout<<"Dame el numero complejo
B: \n";
B.pedir();
C.pedir(A,B);
cout<<"La suma en:
\n"<<A.r<<"+"<<A.i<<"i"<<endl
<<B.r<<"+"<<B.i<<"i"<<endl
<<r<<"+"<<i<<"i"<<endl;
getch();
return 0;
}

{cout<<"Lasuma en:
\n"<<A.r<<"+"<<A.i<<"i"<<endl
<<B.r<<"+"<<B.i<<"i"<<endl
<<r<<"+"<<i<<"i"<<endl;
}
};//cierre de la clase
int main()
{ complejo A,B,C;
cout<<"Dame el numero complejo
A: \n";
A.pedir();
cout<<"Dame el numero complejo
B: \n";
B.pedir();
C.pedir(A,B);
C.muestraTodo(A,B);
getch();
return 0;
}

/*suma dos numeros complejos con


clases tipo struct (clases en c) con
funciones*/
#include<iostream>
#include<conio2.h>
using namespace std;
struct complejo // clase
{ float r,i;
void pedir()
{ cout<<"Dame parte real: ";
cin>>r;
cout<<"Dame parte imaginaria:
";
cin>>i;
}
void suma(complejo A,complejo
B)
{ r=A.r+B.r;
i=A.i+B.i;
}
void muestraTodo(complejo
A,complejo B)
{cout<<"Lasuma en:
\n"<<A.r<<"+"<<A.i<<"i"<<endl
Programa u1p5_3
/*suma dos numeros complejos con
clases tipo struct (clases en c) con
funciones en struct solo llamadas
usando el operador scope*/
#include<iostream>
#include<conio2.h>
using namespace std;
struct complejo // clase
{ float r,i;
void pedir();
void suma(complejo A,complejo B);
void muestraTodo(complejo
A,complejo B);
void muestra();
};//cierre de la clase
complejo::void pedir()
{ cout<<"Dame parte real: ";
cin>>r;

<<B.r<<"+"<<B.i<<"i"<<endl
}
void muestra()
{cout<<r<<"+"<<i<<"i"<<endl;
}
};//cierre de la clase
int main()
{ complejo A,B,C;
cout<<"Dame el numero complejo
A: \n";
A.pedir();
cout<<"Dame el numero complejo
B: \n";
B.pedir();
C.suma(A,B);
A.muestra();
B.muestra();
C.muestra();
getch();
return 0;
}
cout<<"Dame parte imaginaria:
";
cin>>i;
}
complejo::void suma(complejo
A,complejo B)
{ r=A.r+B.r;
i=A.i+B.i;
}
complejo::void
muestraTodo(complejo A,complejo
B)
{cout<<"Lasuma en:
\n"<<A.r<<"+"<<A.i<<"i"<<endl
<<B.r<<"+"<<B.i<<"i"<<endl
<<r<<"+"<<i<<"i"<<endl;
}
complejo:: void muestra()

{cout<<r<<"+"<<i<<"i"<<endl;
}
int main()
{ complejo A,B,C;
cout<<"Dame el numero complejo
A: \n";
A.pedir();
cout<<"Dame el numero complejo
B: \n";
Programa auxiliar:
#include<iostream>
using namespace std;
int a;//variable global
void prueba()
{ int f;//variable local de la funcion
int a;//variable local de la funcion
a=20;//a local de la funcion
::a=100;//a globlal del programa }

B.pedir();
C.suma(A,B);
A.muestra();
B.muestra();
C.muestra();
getch();
return 0;
}

int main()
{ int b;
a=25;
return 0;
}

Clases en C++
Programa u1p6
/*suma dos numeros complejos con
clases de c++ (class)*/
#include<iostream>
#include<conio2.h>
using namespace std;
class complejo // clase
{ public:
float r,i;
void pedir();
void suma(complejo A,complejo B);
void muestraTodo(complejo
A,complejo B);
void muestra();
};//cierre de la clase
complejo::void pedir()
{ cout<<"Dame parte real: ";
cin>>r;
cout<<"Dame parte imaginaria:
";
cin>>i;
}
complejo::void suma(complejo
A,complejo B)
{ r=A.r+B.r;
i=A.i+B.i;
}
complejo::void
muestraTodo(complejo A,complejo
B)
{cout<<"Lasuma en:
\n"<<A.r<<"+"<<A.i<<"i"<<endl
<<B.r<<"+"<<B.i<<"i"<<endl
<<r<<"+"<<i<<"i"<<endl;
}
complejo:: void muestra()
{cout<<r<<"+"<<i<<"i"<<endl;
}

int main()
{ complejo A,B,C;
cout<<"Dame el numero complejo
A: \n";
A.pedir();
cout<<"Dame el numero complejo
B: \n";
B.pedir();
C.suma(A,B);
A.muestra();
B.muestra();
C.muestra();
getch();
return 0;
}

Programa u1p6_1
/*suma dos numeros complejos con
clases tipo class con private y
public*/
#include<iostream>
#include<conio2.h>
using namespace std;
class complejo // clase
{ private:/*es privada aun cuando
no se declara el private por default*/
float r,i;
public:
void pedir();
void suma(complejo A,complejo B);
void muestraTodo(complejo
A,complejo B);
void muestra();
};//cierre de la clase
complejo::void pedir()
{ cout<<"Dame parte real: ";
cin>>r;
cout<<"Dame parte imaginaria:
";
cin>>i;
}
complejo::void suma(complejo
A,complejo B)
{ r=A.r+B.r;
i=A.i+B.i;
}

complejo::void
muestraTodo(complejo A,complejo
B)
{cout<<"Lasuma en:
\n"<<A.r<<"+"<<A.i<<"i"<<endl
<<B.r<<"+"<<B.i<<"i"<<endl
<<r<<"+"<<i<<"i"<<endl;
}
complejo:: void muestra()
{cout<<r<<"+"<<i<<"i"<<endl;
}
int main()
{ complejo A,B,C;
cout<<"Dame el numero complejo
A: \n";
A.pedir();
cout<<"Dame el numero complejo
B: \n";
B.pedir();
C.suma(A,B);
A.muestra();
B.muestra();
C.muestra();
getch();
return 0;
}

Constructor y destructor
Son funciones miembro de la clase que llevan el mismo nombre de la clase.
A todas las variables declaradas tipo clase se le nombra o conoce como
objeto.
Tanto el constructor como el destructor, nunca devuelven algn tipo, ni siquiera
void.
Estas se ejecutan solas, cuando se crea el objeto (variable).
El destructor adems, lleva un carcter especial llamado tilde (~).
Programa u1p7;
#include<iostream>
#include<conio2.h>

using namespace std;


class fecha
{ int d,m,a;// son privadas
public:
fecha();//constructor
~fecha(); //destructor
};
fecha::fecha()
{ cout<<"Hola soy constructor"<<endl;
getch();
}
fecha::~fecha()
{ cout<<"Hola soy destructor"<<endl;
getch();
}
int main()
{ fecha f,h;
cout<<"Texto desde el main...";
/*cout<<"Texto desde el main...";
cout<<"Texto desde el main...";*/
getch();
return 0;
}
Programa u1p7_1:

#include<iostream>
#include<conio2.h>
using namespace std;
class fecha
{ int d,m,a;// son privadas
public:
fecha();//constructor
~fecha(); //destructor
};
fecha::fecha()
{ cout<<"Dame la fecha: "<<endl;
cout<<"Dia"; cin>>d;
cout<<"Mes"; cin>>m;
cout<<"Ao"; cin>>a;
}
fecha::~fecha()
{ cout<<"La fecha es:"<<d<<"/"<<m<<"/"<<a;
getch();
}
int main()
{ fecha f,h;
cout<<"Texto desde el main...";
getch();
return 0;
}

Vous aimerez peut-être aussi