lunes, 8 de septiembre de 2014

estructura de un programa





funciones y estructuras

Funciones

Una funcion es una parte de un programa (subrutina) con un nombre, que puede ser
invocada (llamada a ejecucion) desde otras partes tantas veces como se desee. Un bloque
de codigo que puede ser ejecutado como una unidad funcional, opcionalmente puede recibir
valores o bien se ejecuta y devuelve un valor. Desde el punto de vista de la organizacion,
podemos decir que una funci´on es algo que permite un cierto orden en una mara˜na de algoritmos.
Como resumen de lo anterior podemos concluir que el uso de funciones se justifica
en dos palabras: organizaci´on y reutilizaci´on del c´odigo.
Son utilizadas para descomponer grandes problemas en tareas simples y para implementar
operaciones que son comunmente utilizadas durante un programa y de esta manera reducir
la cantidad de c´odigo. Cuando una funci´on es invocada se le pasa el control a la misma, una
vez que esta termina su tarea sede el control al punto desde el cual fue llamada.
Las funciones se declaran y se definen exactamente igual que en C, estas puede utilizar
prototipo (prototype). Un prototipo es un modelo limitado de una entidad m´as completa que
aparecer´a despu´es. En el caso de funciones, la funci´on es la entidad completa que vendr´a despu
´es, y la declaraci´on de dicha funci´on es el prototipo. El prototipo da un modelo de interface
a la funci´on.
La de claraci´on de una funci´on tiene el siguiente cuerpo:
tipo-de-retorno nombre-de-funci´on(par´ametros)
{
declaraciones
proposiciones
}
Si la funci´on no retorna un valor el tipo de retorno es void. Si la funci´on no tiene
par´ametros se escribe myfunc(void).

 Estructuras

Una estructura es un grupo de variables relacionadas de manera l´ogica, las cuales pueden
ser de diferentes tipos y declaradas en una sola unidad, donde la unidad es la estructura.
Estas son una especie de h´ıbrido entre las estructuras de C y las clases de C++, de hecho
1
podr´ıan ser sustituidas por clases definidas ya que disponen de tres tipos de modificadores de
acceso: p´ublico, privado y protegido, y el considerarlas como tales, permite un mayor control
de acceso de las estructuras.
En C++ se forma una estructura utilizando la palabra reservada struct, seguida por un
campo etiqueta opcional, y luego una lista de miembros dentro de la estructura. La etiqueta
opcional se utiliza para crear otras variables del tipo particular de la estructura.
struct campo_etiqueta{
tipo_miembro miembro_1;
tipo_miembro miembro_2;
:
tipo_miembro miembro_n;
};
Un punto y coma finaliza la definici´on de una estructura puesto que ´esta es realmente
una sentencia C++ .

estrucutra de un programa

Para darnos una idea chequemos el siguiente programa
//Mi primer programa en C++
# include <iostream>
using namespace std;
int main (){
count << "hello World";
return 0;
}
El programa anterior es tipico de los programadores aprendices, el resultado de su impresi
on en pantalla es la frase:
”hello World”
Es uno de los mas simples programas que pueden estar escritos en C + +, pero ya contiene
los componentes fundamentales que todos los programas escritos en C + +. Vamos a ver
lınea por lınea en el codigo lo que hemos escrito:
//Mi primer programa en C++
Se trata de una lınea de comentario. Todas las lıneas que comiencen con dos signos barra
se consideran comentarios y no tienen ning´un efecto sobre el comportamiento del programa.
El programador puede usar para incluir breves explicaciones o alegaciones dentro del c´odigo
fuente en s´ı. En este caso, la l´ınea es una breve descripci´on de lo que es nuestro programa.
# include <iostream>
Las l´ıneas que comienza con un s´ımbolo de sostenido # son directivas para el preprocesador.
En este caso, la directiva # include <iostream>le dice al preprocesador que incluya
el iostream est´andar de archivo. Este archivo espec´ıfico (iostream) incluye las declaraciones
de la norma b´asica de entrada y salida de la biblioteca de C++.
using namespace std;
Todos los elementos del modelo de librer´ıa de C++ se declaran dentro de lo que se denomina
un espacio de nombres. Por lo tanto, para poder acceder a su funcionalidad declaramos

con esta expresi´on que vamos a utilizar estas entidades. Esta l´ınea es muy frecuente en los
programas que utilizan la biblioteca est´andar, y de hecho ser´a incluido en la mayor´ıa de los
c´odigos.
int main ()
Esta l´ınea se corresponde con el comienzo de la definici´on de la funci´on principal. La
funci´on principal es el punto por donde todos los programas inician su ejecuci´on, independientemente
de su ubicaci´on dentro del c´odigo fuente. No importa si hay otras funciones
con otros nombres definidos antes o despu´es de las instrucciones que figuran dentro de esta
funci´on, ya que por definici´on ser´a siempre la primera en ser ejecutada. Por esa misma raz´on,
es esencial que todos los programas tengan una funci´on principal. Lo que se contiene dentro
de las llaves que delimitan la funci´on es lo que hace cuando se ejecuta.
count <<"hello World";
Esta l´ınea es una declaraci´on de C++, en t´erminos simples es una expresi´on que produce
alg´un efecto. De hecho, esta declaraci´on lleva a cabo la ´unica acci´on que genera un efecto
visible en nuestro programa. Representa el flujo de salida y su objetivo es insertar una
secuencia de caracteres ( ”hello World”) en el flujo de salida est´andar (pantalla)
return 0;
Esta declaraci´on hace que la funci´on pricipal termine. Un c´odigo de retorno es 0, cuando
la funci´on principal interpreta de manera general que el programa trabaj´o como se esperaba,
sin ning´un error durante su ejecuci´on. Esta es la forma m´as habitual para poner fin a un
programa C++ en la consola.