Está en la página 1de 9

LENGUAJE DE PROGRAMACIN C++

Conceptualizacin: Para esta unidad se selecciono el lenguaje de


programacin C++, por ser uno de los ms difundidos, a dems por su gran
bibliografa, esto no quiere decir que no se pueda utilizar otros compiladores,
como es el caso de C estndar, o turbo C; a dems se trabajar, bajo el
supuesto que el sistema operativo es Windows 9x ; lo que no significa que no
se puede trabajar bajo Linux, (C++ bajo Linux), donde se darn unas pautas
para su trabajo.
Para iniciar tomaremos la siguiente lecturaque servir de base para esta
unidad:
lectura

style='position:absolute;left:0;text-align:left;z-index:-1' from="198pt,56.45pt"
to="297pt,74.45pt" wrapcoords="-164 0 -164 900 13582 14400 19800 23400 20455
23400 21600 21600 20618 16200 15382 14400 10964 0 -164 0"><!--[if !vml]-->
<!--[endif]-->
coordsize="21600,21600" o:spt="75" o:preferrelative="t"
path="m@4@5l@4@11@9@11@9@5xe"
filled="f" stroked="f">
o:href="http://www.research.att.com/~bs/Bjarne.jpg"/><!--[if !vml]--><!--[endif]--
>Desde 1980 se utilizaron versiones anteriores del lenguaje C++ que se
denominaban a s mismas C con clases. Estas primeras versiones surgieron
debido a que Bjarne Stroustrup<!--[if !supportFootnotes]-->[1]<!--[endif]--> tuvo
necesidad de realizar simulaciones manejadas por eventos y el lenguaje con el
que podra haber resuelto su problema (Simula 67) no era lo suficientemente
eficiente por lo que decidi crear un lenguaje ad hoc con sus necesidades.
En este punto el diseador tuvo que elegir cul sera la manera de generar el
nuevo lenguaje de programacin: Si utilizando como base un lenguaje conocido
o empezando desde cero la implementacin del mismo, por lo que decidi
utilizar como base el lenguaje C debido a las siguientes caractersticas que lo
hicieron atractivo: Es un lenguaje verstil, conciso y de nivel relativamente bajo,
lo que lo hace adecuado para la mayora de las tareas de desarrollo de
sistemas adems de que es un lenguaje muy portable y tiene cabida en el
ambiente de programacin UNIX; el C era un lenguaje ampliamente utilizado
por muchos programadores y ya existan muchsimos sistemas implementados
en l, adems de que era un lenguaje lo suficientemente estudiado para que en
ese momento se tuviese un conocimiento amplio sobre sus fortalezas y
debilidades. Al mismo tiempo, como deba ser un lenguaje que pudiese
utilizarse para la simulacin de sistemas, incorpora muchas caractersticas de
Simula 67 como el concepto de clase, las clases derivadas y las funciones
virtuales.
C++, no solamente incorpora caractersticas de C y Simula 67. Por ejemplo:

De Algol68: se copia la capacidad para sobrecargar operadores y la libertad
para poder hacer declaraciones en cualquier parte del cdigo.
De Ada y parcialmente de ML se tom el mecanismo para resolver excepciones
y el recurso de patrones.
Por otra parte, el lenguaje C++ incorpora la reutilizacin de cdigo, la cual
consiste en que teniendo bloques de cdigo (clases), estos pueden utilizarse
en varias partes de un sistema o en distintos sistemas. Esto lo hace mucho
mas conveniente que el lenguaje C y a su vez posibilita a los programadores el
poder realizar sistemas de mayor tamao y complejidad con menor esfuerzo.
Inicialmente C++ nace como una herramienta generada para que el autor y sus
amigos no tuviesen que programar en ensamblador o C, la cual deba
permitirles hacer mas fcil y agradable la escritura de programas de buena
calidad para el programador individual. De tal manera que no surge como un
proyecto en forma, ni se gener un grupo de trabajo para disear C++,
bsicamente el lenguaje se enriqueca y se transformaba de acuerdo a las
necesidades y sugerencias que los amigos del autor y algunos usuarios le
hacan llegar.
Al inicio existieron muchas versiones no oficiales del C++ y no fue sino hasta
1987 que se advirti la necesidad de estandarizarlo de manera formal y para
ello se hizo un esfuerzo de establecer comunicacin entre los realizadores de
compiladores de C++ y lo principales usuarios mediante correo electrnico,
correo convencional y reuniones en conferencias a cerca de C++. Dicho
esfuerzo culmina con la creacin del grupo X3J16 de ANSI que en 1989 se
reuni para crear el estndar de C++ tal y como lo conocemos hoy en da.
<!--[if !supportFootnotes]-->


<!--[endif]-->
<!--[if !supportFootnotes]-->[1]<!--[endif]--> Consultar ms sobre Bjarne Stroustrup :
http://www.research.att.com/~bs/homepage.html
El lenguaje de programacin C++ vincula muchas caractersticas de de Simula
67 dado a que el autor pretenda:


Dado que el autor deseaba realizar programas en
diversas plataformas como Unix

Dado que C++, es un lenguaje totalmente nuevo

dado que Simula maneja :clase, las clases derivadas y
las funciones virtuales.

Dado que simula hereda de C, por consiguiente es muy
fcil su adaptabilidad
de las caractersticas importantes de C++ es la posibilidad de reutilizar
cdigo, esto significa que:


Permite la Portabilidad a diferentes sistemas operativos

Esta caracterstica no tiene relevancia en la
programacin

Se generan Programas ms rpido y a menor esfuerzo

Se hace necesario que se programe bajo libreras y
clases

Se puede decir que Unix es:


Editor de programas

Lenguaje de Programacin

el predecesor de C++

sistema operativo


Ciclo While
La sentencia de control while se encarga de repetir un bloque de cdigo mientras se
cumpla una condicin. El bloque de cdigo se debe de encontrar entre llaves, excepto si
es una sola lnea.
La forma general de esta instruccin es la siguiente:
while (condicin a cumplir)
{
acciones a ejecutar;
}
Un ejemplo de ste lo podemos ver en el clculo del promedio de 10 nmeros,
pensemos que son las calificaciones del semestre. Mirando rpidamente la forma de
estructurar nuestro programa (algo que se debe de hacer siempre, y antes de sentarse
frente a nuestro ordenador), podemos pensar en la siguiente solucin:
/****************************************
Declarar variables e inicializarlas
Mientras (no se hagan 10 iteraciones){
Leer una calificacin
Sumarla al total
Determinar que se ha hecho una iteracin
}
calcular el promedio
mostrar el promedio
/*********************************
El programa queda como sigue
versin C++
El programa queda como sigue versin
C#

#include <iostream.h>
int main()
{
int calificacion, suma=0, iteracion=1;
float promedio;
while(iteracion<=10)
{
cout<<"teclea tu calificacion
"<<iteracion<<endl;
cin>>calificacion;
suma+=calificacion;
++iteracion;
}
promedio=(float)suma/(iteracion1);
cout<<"el promedio de calificaciones es: "
<<promedio<<endl;
getch();
return 0;
}
using System;
using System.Collections.Generic;
using System.Text;
namespace suma
{
class Program
{
static void Main(string[] args)
{
int calificacion, suma=0, iteracion=1;
float promedio;
while (iteracion <= 10)
{
Console.Write("Teclea tu calificacin ");
calificacion = int.Parse(Console.ReadLine());
suma += calificacion;
++iteracion;
}
promedio = suma / iteracion;
Console.Write("El promedio de calificaciones
es: {0}",promedio);
Console.ReadKey();
}
}
}


El programa es sencillo, quiz una parte que pudiese causar dudas es el clculo del
promedio. Lo que sucede es que se realiza un cast para convertir temporalmente la
variable suma de int a float (solo para el caso C++), as se har la divisin y se tendr un
resultado decimal cuando sea necesario.
Hasta aqu nuestro programa va bien, pero puede mejorar, podemos tener un mejor
control del programa y hacer que el usuario decida cuantas calificaciones va a
introducir. Podemos hacer que el usuario simplemente teclee un -1 cuando acabe de
escribir sus calificaciones, as, en lugar de comparar el nmero de iteraciones,
comprobar si la calificacin es igual a -1 para salirse.

De acuerdo A lo lindo en la Pagina Anterior, se puede realizar el ejercicio
sugerido al final agregando o cambiando la siguiente linea de Codigo:


while(calificacion==1)

while(calificacion !=-1 )

while(calificacion!=10)

while(calificacion <>1 )

La expresin realizar un cast , se refiere a:


es una palabra reservada

convertir temporalmente una variable de un tipo
determinado en otra para poder realizar procesos

es una forma de determinar los posibles errores

es importante para realizar operaciones matemticas
de cualesquier indole

en el programa anterior al realizar la ejecucin para encontrar un
promedio, este no genere el promedio real, el posible error es:


++iteracion no debe ser de esa forma si no iteracion++

la formula como se calcula el promedio esta mal
diseada

El acumulador suma como esta escrito no acumula
suma+=calificacion

la variable iteracion debe iniciar en 0 y no en 1 como
esta en este momento

pagina 3
Funciones en C++

Primero la definicin: Una funcin es una seccin de
cdigo independiente, con nombre, que ejecuta una tarea
especfica y opcionalmente devuelve un valor al
programa que la llam. Ahora veamos las partes de la
definicin:

Una funcin tiene un nico nombre, al utilizar ste
nombre en otras partes del programa se pueden ejecutar
los enunciados contenidos en la funcin. A esto se le
conoce como llamar a la funcin. Una funcin puede ser
llamada desde otra funcin.

Una funcin es independiente. Una funcin puede
ejecutar sus tareas sin interferencia en de otras
partes del programa.

Una funcin ejecuta una tarea especfica. Esta es la
parte fcil de la definicin. Una tarea es un trabajo
discreto que su programa debe ejecutar como parte de su
desempeo general, por ejemplo mandar una lnea de
texto a impresin, ordenar una lista hacer un clculo
matemtico.

Una funcin opcionalmente devuelve un valor al
programa que la llam. Cuando un programa llama a una
funcin se ejecutan los enunciados contenidos en sta,
si si programa lo requiere, stos enunciados pueden
devolver un valor al programa que llam a la funcin.

Cuando un programa llama a una funcin, la ejecucin
del cdigo salta a la posicin inicial definida por el
nombre de la funcin, el programa ejecuta los
enunciados contenidos en sta y posteriormente el
programa que llam a la funcin contina en la lnea de
cdigo siguiente. Una funcin bin diseada ejecuta una
tarea especfica y fcil de entender. Es recomendable
ante una tarea complicada, dividirla en mltiples
funciones y entonces llamarlas a su debido momento.
Declaracin y definicin de funciones

Para utilizar una funcin en un programa se requiere en
primer lugar declararla y despus definirla. La
declaracin de la funcin le indica al compilador el
nombre, el tipo de dato devuelto por la funcin y los
parmetros pasados a la funcin. A la declaracin de
una funcin se le llama tambin el prototipo de la
funcin. Cuando un programa llama a una funcin, el
programa puede enviar hacia la funcin informacin en
la forma de uno o ms argumentos. Los argumentos son
datos que la funcin puede necesitar para realizar su
trabajo. Cuando la funcin termina su trabajo, la
ejecucin del programa regresa a la lnea siguiente a
la llamada a la funcin. Las funciones pueden enviar
informacin al programa en la forma de un valor
devuelto.

El prototipo de una funcin provee al compilador con
informacin de una funcin que ser definida
posteriormente en el programa. El prototipo incluye, en
este orden, el tipo de valor que la funcin devolver,
el nombre de la funcin, el cual debe ser significativo
del trabajo realizado por la funcin, y el tipo de
variables utilizadas como argumentos que sern pasados
a la funcin. Opcionalmente se puede incluir el nombre
de las variables utilizadas como argumentos. El
prototipo de una funcin, como todo enunciado
ejecutable en un programa C++ debe terminarse con un
smbolo de punto y coma.

La definicin de una funcin es en s la funcin misma,
est compuesta en su primer lnea de cdigo por el
encabezado que debe ser idntico al prototipo de la
funcin pero en ste caso no se utiliza el punto y
coma, adems, al contrario del prototipo, donde es
opcional incluir el nombre de las variables utilizadas
como argumentos, en el encabezado de la funcin se debe
incluir el nombre de las variables. Enseguida del
encabezado est el cuerpo de la funcin que contiene,
encerrados entre llaves, los enunciados ejecutables
propios del trabajo a ejecutar por la funcin. Si la
funcin devuelve un tipo de valor, ste se debe
especificar al final del cuerpo de la funcin.

Con toda la informacin reunida hasta este punto,
estamos en condicin de escribir un programa que
demuestre el prototipo y definicin de una funcin.
Personalmente, primero escribo la definicin de la
funcin y despus copio el encabezado de la misma para
formar el prototipo, agregandole un punto y coma al
final del enunciado.

#include <iostream.h>

// Prototipo de funciones

void resta(int valor1, int valor2);

int multiplica(int, int);

// Funcin principal

int main() { int numero1, numero2, resultado; cout <<
"Introduzca dos numeros"

<< endl; cin >> numero1 >> numero2;resta(numero1,
numero2); // llama a la funcin "resta" resta(numero2,
numero1);resultado = multiplica(numero1, numero2);cout
<< "La multiplicacion de los dos valores es: "<<
resultado << endl;

return 0;

} // Funcin resta

void resta(int valor1, int valor2)



{ int sustraccion;// variable local sustraccion =
valor1 - valor2; cout << "La resta de los dos valores
es: "<< sustraccion << endl;

}

// Funcin multiplica

int multiplica(int valor1, int valor2)

{ int local;// variable locallocal = valor1 * valor2;
return local;

}
Tomado de: http://www.modelo.edu.mx/univ/virtech/prograc/cplus2.htm

Para utilizar una funcin en un programa se requiere en primer lugar
declararla y despus definirla.
A la declaracin de una funcin se le denomina:


Prototipo

C++ no se requiere realizar esta operacin

Paso de Parametros

Argumento

en el cdigo presentado en la pagina anterior el prototipo de la funcin
resta est especificada la palabra clave void lo que indica que:


la funcin resta no realiza ningn proceso

la funcin resta no estar disponible a lo largo le
programa

la funcin resta no devuelve valor alguno al programa
que la llame

la funcin resta necesita terminar con la instruccin
return

Para utilizar una funcin en un programa en C++ con
solo definirla es suficiente?


Verdadero

Falso

Cuando se define la funcin como tal est debe terminar en punto y
coma?



verdadero

Falso

El prototipo de una funcin que informacin provee al compilador?


el tipo de dato que devuelve la funcin

la velocidad de ejecucin del programa

la cantidad de variables globales

el tamao de la funcin

También podría gustarte