You are on page 1of 23

Programacin

11 de noviembre de 2011
2011

/Con
Programacin
Introduccin
Este documento contiene aspectos generales sobre programacin
estructurada, sin embargo, son lo suficientemente slidos para poder crear las
bases necesarias para la incursin en programacin sobre plataformas web,
abriendo as la puerta para el siguiente nivel de lenguajes de programacin.

Introduccin a la Programacin
www.cotzureu.com| www.ia2web.com Enrique Brn
AFC IA2WEB
11/11/2011
1 Contenido
1 Contenido ........................................................................................................................................... 2
2 Cronograma de Actividades ................................................................................................................ 3
3 Introduccin ....................................................................................................................................... 4
3.1 Preparacin del entorno de trabajo ............................................................................................... 4
4 Introduccin a la programacin en C ................................................................................................... 5
5 Variables en C++ ................................................................................................................................. 8
5.1 Tipos de variables .......................................................................................................................... 8
6 Constantes .......................................................................................................................................... 9
7 Instrucciones de Entrada ..................................................................................................................... 9
8 Instrucciones de Salida........................................................................................................................ 9
9 Estructuras de Programacin ............................................................................................................ 13
9.1 Estructuras de Decisin ............................................................................................................... 13
9.1.1 IF ......................................................................................................................................... 13
9.1.2 Switch-Case ......................................................................................................................... 14
9.2 Estructuras Repetitivas ................................................................................................................ 15
9.2.1 While ................................................................................................................................... 15
9.2.2 Do While .............................................................................................................................. 15
9.2.3 For ....................................................................................................................................... 16
10 Funciones ......................................................................................................................................... 18
10.1 Instruccin Return ....................................................................................................................... 18
10.2 Tipos de Funciones ...................................................................................................................... 18
11 Vectores y Arrays .............................................................................................................................. 19
12 Punteros ........................................................................................................................................... 22
13 Programacin Orientada a Objetos ................................................................................................... 22

Introduccin a la Programacin
www.cotzureu.com| www.ia2web.com
2 Cronograma de Actividades
Primer Semestre

Actividad 06 13* 20 27* 03 10*


Introduccin
Introduccin Programacin en C++
Programacin
Estructuras de Programacin
Estructuras de Decisin
Estructuras Repetitivas
Funciones
Punteros y Arrays
Programacin Orientada a Objetos

Introduccin a la Programacin
3 www.cotzureu.com| www.ia2web.com
3 Introduccin

3.1 Preparacin del entorno de trabajo


En primer lugar deberas decidir en qu carpeta de tu ordenador quieres grabar tus programas.
Personalmente me referir continuamente a la carpeta C:\TuCarpeta, es decir, cuando encuentres en el
manual TuCarpeta, debers sustituirla por el nombre real de tu carpeta.

En segundo lugar deberas decidir el compilador de C/C++ que deseas usar, los ejemplos aqu mostrados
fueron testeados sobre Borland C++ 5.02, pero la mayora deberan funcionar igual en gcc.

Por ltimo, debes tener en cuenta que en ningn caso programaremos utilizando las caractersticas propias
del entorno, es decir: aunque utilices un compilador de C en entorno Windows por ejemplo, todos los
programas que hars utilizando este manual, en principio funcionan igual en el entorno MS/DOS o UNIX, por
citar dos muy conocidos.
Sera materia de otro curso el estudio del entorno de desarrollo e interfaz grfico de tu compilador de
C/C++

Introduccin a la Programacin
4 www.cotzureu.com| www.ia2web.com
4 Introduccin a la programacin en C
Introduccin Terica

Creador:Dennis Ritchie (Laboratorios Bell) el 1972, cuando trabajaba junto con Ken Thompson en el diseo
delsistema operativo UNIX.
El C se cre como herramienta para programadores, en consecuencia su principal objetivo es ser
unlenguaje til, no necesariamente sencillo.

Caractersticas:El C es un lenguaje de programacin de alto nivel (alto nivel quiere decir cercano al
lenguajehumano), pero con caractersticas de bajo nivel (bajo nivel= prximo al lenguaje mquina).
Es de ALTO NIVEL porque es racional, estructurado y fcil de aprender.
Es de BAJO NIVEL porque permite trabajar con bits, registros de la C.P.U. y posiciones de memoria.

Por qu el C?: El lenguaje C es poderoso y flexible: la mayor parte del sistema operativo UNIX est
escrito en C.
Incluso estn escritos en C los compiladores e intrpretes de otros lenguajes.El lenguaje C es amistoso
porque es lo suficientemente estructurado para ejercer buenos hbitos deprogramacin. Es el lenguaje de
programacin ms utilizado por el programador de sistemas.

Estructura de un programa en C:El C es un lenguaje compilado, vamos a ver qu es esto grficamente:

Cdigo Compilar
Cdigo Linkear
Programa
Fuente Objeto Ejecutable

Cdigo Fuente: es el programa que nosotros escribimos, se graba con la extensin CPP, o H en caso de las
libreras.
Cdigo Objeto: es el programa fuente pero traducido a lenguaje mquina (sucesin de ceros y unos), se
graba con la extensin OBJ
Programa Ejecutable: es el programa objeto ms las libreras del C, se graba con la extensin EXE. Y no
necesita el programa que hemos utilizado para crearlo, para poder ejecutarlo. Para crear el ejecutable en
C++, solamente se debe presionar al mismo tiempo las teclas Ctrl+F9.
El cdigo objeto que genera un compilador de C, es casi tan eficiente (rpido) como si lo hubiramos
escrito en lenguaje ENSAMBLADOR (lenguaje de programacin ms cercano al lenguaje mquina).

Introduccin a la Programacin
5 www.cotzureu.com| www.ia2web.com
Primer programa

Para aprender a programar, se debe practicar, este, como todos los programas de este documento, debe
ser compilado en el Borland para ver su funcionamiento.

Libreras

Inicio programa,
funcinmain

Llaveparainicio
de cdigo

Sentenciaparamos
trarmensajes en
pantalla Ilustracin 1

Llavepara fin Funcin para detener el programa hasta


de cdigo que presionen una tecla

Ahora estudiaremos el cdigo lnea por lnea:


1. Se indica al compilador que se utilizaran sentencias que estn incluidas en la librera iostream.h,
funciones como couty cin.
2. Se indica al compilador que se utilizaran sentencias que estn incluidas en la librera conio.h, en
este caso nicamente la sentencia getch.
3. Lnea vaca para separa la declaracin de libreras del inicio de la funcin principal
4. Se declara la funcin principal main como vaca (void) porque el programa no devuelve ningn valor
como resultado.
5. Se indica que inicia el cdigo del programa colocando el signo de llave de apertura
6. La sentencia cout<<permitemostrar un mensaje en pantalla, todo lo que est dentro de comillas se
mostrar en pantalla, excepto el \n del final, el cual indica que despus de dicho texto se debe
cambiar de lnea, como se puede apreciar en la Ilustracin2donde se muestra el programa ya
ejecutado, el cursos _ aparece en la siguiente lnea.
7. La funcin getch(); permite hacer una pausa en la ejecucin del programa hasta que el usuario
presione una tecla. Como se logra apreciar tambin en la lnea 6, se indica el final de la instruccin
agregando ;punto y coma.
8. Se indica la finalizacin del cdigo con una llave de cierre

Ilustracin2

Introduccin a la Programacin
6 www.cotzureu.com| www.ia2web.com
Antes de continuar, se muestra a continuacin la lista de palabras reservadas de C y C++, las cuales no
podemos utilizar como nombres de variables o de nuestras propias funciones:

Introduccin a la Programacin
7 www.cotzureu.com| www.ia2web.com
5 Variables en C++
El concepto de variables ya fue trabajado en el mdulo de algoritmos, de tal manera que aqu solo explicar
aspectos especficos de C++, que son los siguientes:
C++ identifica maysculas y minsculas, es decir, si tenemos una variable llamada Nombre, no ser
correcto tratar de utilizarla escribiendo nombre o cualquier otra variante de escritura.
Las variables pueden declararse prcticamente en cualquier lugar del cdigo, con sus respectivas
limitantes, por ejemplo, una variable debe ser declarada antes de ser utilizada.
Las variables solo son accesibles dentro de la funcin donde fue declarada, excepto las declaradas
globalmente.

5.1 Tipos de variables


Tipos de variables numricas:
Float = Nmero real, requiere 4 bytes valores entre -990000000 y 99000000, es impreciso.
Double =Cualquier nmero real, requiere el doble de memoria y tiempo del procesador para
almacenar el mismo nmero que con float, es ms preciso.
Int = Cualquier nmero entero.
Tipos de variables alfanumricas:
Char = un carcter, el tamao de memoria es de 1 byte por cada caracter.
Tipos de variables lgicas:
Bool = true o false
Sintaxis: tipo nombre_varibale;
Ejemplo:

Ilustracin 3

Es decir, primero se escribe el tipo de dato que almacenar la variable y luego el nombre de la variable y se
finaliza con un ; punto y coma.
Para el caso de los datos tipo char tambin se debe especificar cuantos caracteres como mximo
almacenar la variable, en caso contrario solo permitir almacenar 1 caracter, de tal manera que la
declaracin cambiara dependiendo cuantos espacios dejaremos disponibles para lo que se debe guardar, la
cantidad de espacios se debe escribir despus del nombre de la variable dentro de corchetes [ ], en la
Ilustracin 4 se declara una variable tipo char, llamada nombre y que acepta como mximo 10 caracteres.

Ilustracin 4

Introduccin a la Programacin
8 www.cotzureu.com| www.ia2web.com
6 Constantes
Una constante es un lugar en la memoria con un dato que no va a cambiar en ningn momento dentro del
programa, por ejemplo, suelen definirse como constantes valores deporcentaje del IVA, el valor de PI, el
porcentaje para calcular el IGSS, etc.
Aunque con este tema se puede profundizar ms, para este curso solamente veremos 2 formas declaracin.
Una forma es utilizando la palabra reservada const, la otra es definiendo un valor especfico, utilizando la
directiva#define, esta es la manera antigua.La sintaxis es la siguiente:
const tipo nombre=valor;
#define nombre valor;
Particularmente recomendara utilizar #define cuando se desee declarar constantes tipo char, como se ve
en el ejemplo:

Ilustracin 5

Como se puede notar en la Ilustracin 5, la palabra reservada no requiere colocar el tipo de dato para la
constante, tampoco el signo = para hacer la asignacin y si fuese un valor numrico, tampoco necesitara las
comillas.

7 Instrucciones de Entrada
Ahora veremos ms detalladamente la sentencia cin>>, cabe mencionar que no es la nica para capturar o
recibir datos ingresados por el usuario, pero es la ms sencilla y fue incluida especficamente en C++, puesto
que en C no exista.
Esta funcin permite capturar los datos que el usuario ingrese desde el teclado y los almacena dentro de la
variable que se indique despus de los signos >>
Su sintaxis es la siguiente:

Ilustracin 6

8 Instrucciones de Salida
Aqu ampliar la sentencia cout<<, que al igual que la sentencia cin>>, tiene otras alternativas como
printf, pero que no ser utilizada.
La sentencia cout permite mostrar mensajes en pantalla y valores contenidos dentro de las variables que
tengamos declaradas, su sintaxis es la siguiente:

Ilustracin 7

Como se puede apreciar en la Ilustracin 7, lo que est dentro de comillas, es el mensaje que se mostrar,
luego se cierran las comillas y hay dos signos < menor que los cuales indican que la sentencia no ha
terminado y a continuacin est una variable, de la cual se mostrar su contenido, otro ejemplo de una
aplicacin vlida est a continuacin:

Introduccin a la Programacin
9 www.cotzureu.com| www.ia2web.com
Ilustracin 8

La diferencia en este cdigo es que no se realiz un cambio de lnea, puesto que no existe dentro de
comillas la \n que es la instruccin que realiza esta accin.

Ejercicios propuestos

1. La empresa X ha solicitado un programa para calcular el valor que debe pagar de IGSS cada
empleado, as como el salario neto que recibir. Utilizando los temas vistos hasta el momento,
escriba el programa. Tome en cuenta que el pago del IGSS corresponde al 4.83%
2. La empresa Y ha solicitado un programa para calcular el valor del IVA que se debe pagar sus
productos, as como el precio final de venta. Utilizando los temas vistos hasta el momento, escriba
el programa, considere que el IVA corresponde al 12% sobre el costo del producto.
3. Los empleados de la empresa Z reciben un salario por horas trabajadas, las horas ordinarias son
pagadas a Q45.00 y las extraordinarias a Q65.00, escriba un programa que reciba la cantidad de
horas trabajadas de los empleados, tanto ordinarias como extraordinarias y muestre el total que
debe recibir como salario el empleado, sin descontar el pago de IGSS.
4. La empresa XYZ necesita un sistema para realizar el pago de nmina, el cual debe tener en cuenta
las siguientes reglas para generar un salario final.
a) Todos los trabajadores tienen un salario base de Q. 1850.00
b) Todos los trabajadores tienen una bonificacin de Q. 350.00
c) El IGSS se debe calcular solamente sobre el salario base.
d) Todos los trabajadores hicieron 8 horas extras, las cuales se les pagan a Q65.00 c/u.
e) Calcular el salario a recibir.

Introduccin a la Programacin
10 www.cotzureu.com| www.ia2web.com
Introduccin a la Programacin
11 www.cotzureu.com| www.ia2web.com
Introduccin a la Programacin
12 www.cotzureu.com| www.ia2web.com
9 Estructuras de Programacin

9.1 Estructuras de Decisin


Este tipo de estructuras permiten tomar decisiones dependiendo de los valores que estn siendo
procesados dentro de nuestro programa, por ejemplo, si un alumno obtuvo menos de 61 puntos en una
evaluacin, se debe mostrar un mensaje indicando que ha perdido, en caso contrario, debe indicar que ha
ganado, este es solo uno de los muchos casos de decisin que tendremos que implementar.
En C++ existen 2 funciones que permiten la toma de decisiones:
IF
Switch - Case
Ambas funciones fueron explicadas en el mdulo de algoritmos, aqu, veremos su implementacin en C++.

9.1.1 IF
Permite la ejecucin condicional de una sentencia.

Sintaxis:

Ilustracin 9

Como se puede ver en la Ilustracin 10, se pueden utilizar llaves para encerrar las instrucciones que se
quieran realizar, o tambin pueden omitirse, con la diferencia que si no incluye llaves, solo se ejecutar la
lnea ms prxima a la instruccin.

Ilustracin 10

Introduccin a la Programacin
13 www.cotzureu.com| www.ia2web.com
9.1.2 Switch-Case
Esta sentencia es una generalizacin de las sentencias if...else. En el caso de las sentencias if, la expresin
que se evala como condicin es booleana, lo que quiere decir que slo hay dos valores posibles, y por lo
tanto, slo se puede elegir entre dos sentencias a ejecutar.
En el caso de la sentencia switch, la expresin a evaluar ser entera o 1 char, por lo tanto, el nmero de
opciones es mucho mayor, y en consecuencia, tambin es mayor el nmero de diferentes sentencias que se
pueden ejecutar.
Sintaxis:

switch (expresin entera)


{
case<expresin_constante1: sentencias1
break;
...
caseexpresin_constanten: sentenciasn
break;
default : sentencia
}
Ejemplo: En este caso se implementa un tpico men, se puede notar la sentencia break para finalizar la
ejecucin en bloque, es decir, si no se coloca el break, el programa seguir ejecutando todos los case que
se encuentren abajo del que cumple la condicin.

Ilustracin 11
Introduccin a la Programacin
14 www.cotzureu.com| www.ia2web.com
9.2 Estructuras Repetitivas
9.2.1 While
Es la sentencia de bucle ms sencilla, y sin embargo es tremendamente potente. En C++ se usa la palabra
reservada while (que significa "mientras"), y la sintaxis es la siguiente:
while (<condicin>) <sentencia>
Si se desea ejecutar ms de una lnea de sentencias, se deben encerrar entre llaves como se aprecia en la
Ilustracin 12, el programa se ejecutarmientras el usuario presione 1 en la pregunta inicial.

Ilustracin 12
Se puede apreciar la inclusin en la lnea 12 de la funcin clrscr(); para limpiar pantalla, cuando vuelva a
iniciarse el ciclo.

9.2.2 Do While
A diferencia del bucle while, la evaluacin de la condicin se realiza despus de ejecutar la sentencia, de
modo que sta se ejecutar al menos una vez.

Sintaxis:

do <sentencia> while(<condicion>);

Si se desea ejecutar ms de una lnea de sentencias, se deben encerrar entre llaves. Como se aprecia en la
Ilustracin 13.

Introduccin a la Programacin
15 www.cotzureu.com| www.ia2web.com
Ilustracin 13

9.2.3 For
Permite repetir un fragmento de cdigo determinadas veces, su sintaxis es:

El programa de la Ilustracin 14 calcula los nmeros pares hasta el 10

Ilustracin 14
Por partes:
x=0 Indica el inicio del ciclo. Puede ser cualquier variable y cualquier valor de inicio.
x<=10 Indica el fin del ciclo. Cuando la condicin deja de cumplirse el ciclo termina. Cuando el ciclo
no es menor o igual a 10 el ciclo termina.
x=x+2 Indica que la variable x aumenta de dos en dos. Para aumentar de uno en uno: x++, de tres:
x+=3 x=x+3.
Introduccin a la Programacin
16 www.cotzureu.com| www.ia2web.com
Ejercicios propuestos

1. Escriba un programa en Borland C++ que permita ingresar 10 nmeros y calcule el promedio de los
mismos.
2. Hacer un programa que imprima los nmeros del 0 al 100

Ayuda: Recuerda utilizar una variable contador para ir incrementando su valor de uno en uno
mediante un bucle hasta llegar a 100.

3. Hacer un programa que imprima los nmeros de 100 al 0, en orden decreciente.


Ayuda: Utilizar una variable inicializada en 100 e ir reduciendo en 1 hasta llegar a 0.

4. Hacer un programa que imprima los nmeros pares entre 0 y 100

5. Hacer un programa que imprima la suma de los 100 primeros nmeros.


Ayuda: La misin a realizar es doble; por un lado, hay que generar los nmeros naturales y por otro,
a medida que se generan se suman.
Para la primera operacin necesitamos un contador que aumente de uno en uno, y para la segunda,
un sumador que vaya realizando la suma del nmero generado.
La impresin de la suma se realiza fuera del bucle y una vez realizada la misma, porque solamente
hay que imprimir el resultado final y no los distintos resultados intermedios.

6. Hacer un programa que imprima los nmeros impares hasta el 100 que imprima cuantos hay.

7. Hacer un programa que imprima los mltiplos de 5 que hay entre 1 y 500.

8. Hacer un programa que reciba un nmero por teclado menor que 100, e imprima la suma y cuantos
nmeros pares hay inferiores al recibido.

Introduccin a la Programacin
17 www.cotzureu.com| www.ia2web.com
10 Funciones
Una funcin es un mdulo de un programa separado del cuerpo principal, que realiza una tarea especfica y
que puede regresar un valor a la parte principal del programa u otra funcin o procedimiento que la
invoque. La sintaxis general de una funcin es:
Tipodato Nomfun(parametros)
{
Sentencias;
return [dato| variable | expresin];
}
Donde tipodato especifica el tipo de dato que regresara la funcin.
La instruccin RETURN es quien regresa un y solo un dato a la parte del programa que la est llamando o
invocando, sin embargo es de considerar que return puede regresar:
a) Un dato = return 3.1416;
b) Una variable = return area;
c) Una expresin algebraica (no ecuacin o formula) = return x + 15/2;
La lista de parmetros formales es una lista de variables separadas por comas , que almacenaran los valores
que reciba la funcin, estas variables actan como locales dentro del cuerpo de la funcin.
Aunque no se ocupen parmetros los parntesis son requeridos.

10.1 Instruccin Return


Dentro del cuerpo de la funcin deber haber una instruccin return cuando menos para regresar el valor,
esta instruccin permite regresar datos.
Recordar adems que cuando se llame una funcin deber haber una variable que reciba el valor que
regresara la funcin, es decir generalmente se llama una funcin mediante una sentencia de asignacin, por
ejemplo resultado=funcion(5, 3.1416);
Es permitido poner ms de un return en el cuerpo de instrucciones sobre todo en condiciones, pero solo un
return se ejecutar, ejemplo:

10.2 Tipos de Funciones


Existen 3 clases usuales de retorno, las primeras son de tipo computacional que son diseadas para realizar
operaciones con los argumentos y regresan un valor basado en el resultado de esa operacin.
Las segundas funciones son aquellas que manipulan informacin y regresan un valor que indican la
terminacin correcta o la falla de esa manipulacin.
Las terceras son aquellas que no regresan ningn valor, es decir son estrictamente procedurales.
Esto quiere decir que en general toda operacin o calculo en un programa deber convertirse a una o
muchas funciones y el resto debern ser procedimientos.

Introduccin a la Programacin
18 www.cotzureu.com| www.ia2web.com
Ejemplo: Un programa para calcular el salario de una persona, utilizando una funcin construida por el
programador.

Anlisis de las lneas ms importantes


Lnea 5, declaracin de la funcin y por comodidad, se incluyeron los nombres de las variables que
se utilizarn.
Lnea 25, implementacin de la funcin, se puede diferenciar porque despus del parntesis de
cierre no hay un punto y coma ;
Lnea 26, como si fuese otro programita, se abren llaves para identificar el inicio de la funcin.
Lnea 28, se declara una funcin local, llamada liquido, igual que la global, la diferencia es que la
global se utilizar en el programa principal cuando se muestre el resultado, y sta de la funcin solo
servir para realizar el clculo y retornarlo al programa principal.
Lnea 31, se realiza el envo del clculo realizado, hacia la variable ubicada en la lnea 19, esta
variable es la global.
11 Vectores y Arrays
Los vectores pueden ser de una o ms dimensiones, los de 1 dimensin se conocen como unidimensionales
y de dos bidimensionales, sucesivamente para ms dimensiones, las matrices solo tiene 2 dimensiones, es
decir, son bidimensionales.
Un arreglo en C++ es un conjunto de datos que se almacenan en memoria de manera contigua con el mismo
nombre. Para diferenciar los elementos de un arreglo se utilizan ndices despus del nombre del arreglo y
encerrados por []. El elemento 5 (quinto) de un arreglo, es representado por el ndice [4], ya que los

Introduccin a la Programacin
19 www.cotzureu.com| www.ia2web.com
ndices comienzan en 0. Esto significa que un arreglo de 10 elementos tendra los ndices del 0 al 9:
[0...9]

La lnea 8 asigna un valor y vindolo grficamente sera algo como:

La lnea 11 sera algo como:

Ejemplo prctico:

Introduccin a la Programacin
20 www.cotzureu.com| www.ia2web.com
Introduccin a Matrices
Las matrices aparecen por primera vez hacia el ao 1850, introducidas por J.J. Sylvester
El desarrollo inicial de la teora se debe al matemtico W.R. Hamilton en 1853.
En 1858, A. Cayley introduce la notacin matricial como una forma abreviada de escribir un sistema de m
ecuaciones lineales con n incgnitas.
Las matrices se utilizan en el clculo numrico, en la resolucin de sistemas de ecuaciones lineales, de las
ecuaciones diferenciales y de las derivadas parciales. Adems de su utilidad para el estudio de sistemas de
ecuaciones lineales, las matrices aparecen de forma natural en geometra, estadstica, economa,
informtica, fsica, etc
La utilizacin de matrices (arrays) constituye actualmente una parte esencial de los lenguajes de
programacin, ya que la mayora de los datos se introducen en los ordenadores como tablas organizadas en
filas y columnas: hojas de clculo, bases de datos.
Las matrices son realmente vectores bidimensionales, es decir, para indicar una posicin, se debe establecer
el ndice sobre el cateto X y sobre el cateto Y. Por tanto, su representacin grfica es una tabla.

Para declarar este tipo de arrays, se hace de igual manera que los vectores unidimensionales, es decir:

Tipo Nombre Casillas disponibles en cada dimensin


Aunque en este caso coincide el nmero disponible y hace una tabla cuadrada, no un requisito, es decir,
podemos definir ms campos de un extremo o de otro.
Para casos prcticos podramos utilizar esto por ejemplo:

Su representacin grfica sera:

Si quisiramos ingresar datos, las instrucciones seran:

El resultado grficamente sera:

Introduccin a la Programacin
21 www.cotzureu.com| www.ia2web.com
12 Punteros
La declaracin de punteros utiliza un asterisco *, que en este caso acta como calificador de tipo, en una
sintaxis muy parecida a la utilizada en la declaracin de objetos normales. En este captulo nos referimos
exclusivamente a declaracin de punteros a objetos.
La sintaxis general de la declaracin de puntero a objeto es:
tipo_objeto * nombre_puntero

13 Programacin Orientada a Objetos


La Programacin Orientada a Objetos (POO) permite realizar grandes programas mediante la unin de
elementos ms simples, que pueden ser diseados y comprobados de manera independiente del programa
que va a usarlos. Muchos de estos elementos podrn ser reutilizados en otros programas.
A estas piezas, mdulos o "componentes", que interactan entre s cuando se ejecuta un programa, se
les denomina objetos. Estos objetos contienen tanto datos como las funciones que actan sobre esos datos.
De ordinario, cada uno de estos objetos corresponde a algn elemento que debe utilizar el programa.
Algunos de estos elementos representan entidades del mundo real (matrices, personas, cuentas de banco,
elementos mecnicos o elctricos, ...) y otros pueden ser componentes del ordenador (tanto de software
como de hardware: otro programa, un fichero de disco, una impresora conectada en una puerta serie, una
ventana abierta en la pantalla, ...). Tambin pueden ser estructuras de datos: colas, pilas, ...
Durante la ejecucin del programa, los objetos interactan pasndose mensajes y respuestas.
Es fundamental darse cuenta de que un objeto no necesita conocer el funcionamiento interno de los dems
objetos para poder interactuar con ellos (igual que el hombre no necesita conocer cmo funciona por
dentro un televisor o un ordenador para poder utilizarlos), sino que le es suficiente con saber la forma en
que debe enviarle sus mensajes y cmo va a recibir la respuesta (al hombre le puede ser suficiente con
saber cmo funcionan el interruptor, el dial del volumen y los botones de cambio de canal para utilizar un
televisor).
Sucede a menudo que hay que utilizar varios ejemplares anlogos de un determinado elemento u objeto
(por ejemplo varias ventanas en la pantalla del PC, varios usuarios, varios clientes, varias cuentas corrientes
de un banco, etc.). La definicin genrica de estos objetos anlogos se realizar mediante la clase. As, una
clase contiene una completa y detallada descripcin de la informacin y las funciones que contendr cada
objeto de esa clase. Las clases de C++ se pueden ver como una generalizacin de las estructuras de C. Por
ejemplo, en el siguiente cdigo:

Alumno alum1={"Luis Perez", 72};


Alumno alum2={"Juan Lpez", 78};

Introduccin a la Programacin
22 www.cotzureu.com| www.ia2web.com
se definen las variables miembro que va a tener la estructura Alumno y luego se crean dos variables alu1 y
alu2 de esa estructura. En C++ los objetos son las variables concretas que se crean de una determinada
clase. A veces se llaman tambin instances o data objects. Las clases de C++ son como una generalizacin de
las estructuras de C.

En C++ las clases son verdaderos tipos de datos definidos por el usuario y pueden serutilizados de igual
manera que los tipos de datos propios del C++, tales como int o float. Los objetos son a las clases como las
variables a los tipos de variables. Un objeto tiene su propio conjunto de datos o variables miembro, aunque
no de funciones, que aunque se aplican a un objeto concreto son propias de la clase a la que pertenece el
objeto.

Este concepto lo ampliar en PHP.

Introduccin a la Programacin
23 www.cotzureu.com| www.ia2web.com

You might also like