Curso Técnicas de Programación
Dictado en la USAT
por Ing. Enrique Barrueto


Acceso a las paginas: 1  2  3  4  5  6  7  8  9  S1  S2  SoluciónPrácticas
S4  ExamenParcial   S30Repetitivas Ejem Manejo de Archivos Demo Matemáticas 
Ejem Funciones Ejem Facturacion


Solucionario Exam.Parcial 2002-2
Ejercicios Variados

Trabajo de fin de ciclo


Menu de Tecnicas con Arrays


Pasos para elaborar un programa:
1.- Entender el Problema
2.- Elaborar un Pseudocodigo
3.- Programarlo en C
4.- Compilar el programa
5.- Enlazar las partes con las librerias
6.- Probar
7.- Si tiene fallas volver al paso 1
8.- Publicar



Anatomia de un Programa:
En este punto describiremos los elementos que conforman un programa típico desde el punto de vista de la programación en lenguaje C.

Un programa de computadora en un lenguaje estructurado tiene un esquema que se puede describir para todos los casos, independientemente del lenguaje que se seleccione. Este esquema general, de todo programa de computadora, tiene dos grupos de instrucciones:

Que conforman el grupo de líneas de un programa, desde el algoritmo más simple, con una entrada de información, un proceso de la misma y una salida de resultados.

En los lenguajes de alto nivel un algoritmo sencillo, conformado por unas cuantas instrucciones, se denomina procedimiento o programa principal, en el lenguaje C equivale a un modulo denominado función principal, según se muestra a continuación:


#include<stdio.h> /* esta es la cabecera */
Main()
/* Función principal */
{

int a,b,c;  
/*Declaraciones ejecutables */

/*INSTRUCCIONES EJECUTABLES (Lectura, proceso y despligue de resultados);*/
printf("hola mundo\n");
return 0;

}

 ENCABEZAMIENTO       #include<stdio.h>
Las líneas anteriores a la función main() se denominan ENCABEZAMIENTO (HEADER) y son informaciones que se le suministran al Compilador.
La primera línea del programa está compuesta por una directiva: " #include " que implica la orden de leer un archivo de texto especificado en el nombre que sigue a la misma ( <stdio.h> ) y reemplazar esta línea por el contenido de dicho archivo.
En este archivo están incluidas declaraciones de las funciones luego llamadas por el programa ( por ejemplo printf() ) necesarias para que el compilador las procese. Por ahora no nos preocupemos por el contenido del archivo ya que más adelante, en el capítulo de funciones, analizaremos exhaustivamente dichas declaraciones.
Hay dos formas distintas de invocar al archivo, a saber, si el archivo invocado está delimitado por comillas (por ejemplo "stdio.h") el compilador lo buscará en el directorio activo en el momento de compilar y si en cambio se lo delimita con los signos <.......> lo buscará en algun otro directorio, cuyo nombre habitualmente se le suministra en el momento de la instalación del compilador en el disco ( por ejemplo C:\TC\INCLUDE). Por lo general estos archivos son guardados en un directorio llamado INCLUDE y el nombre de los mismos está terminado con la extensión .h.
La razón de la existencia de estos archivos es la de evitar la repetición de la escritura de largas definiciones en cada programa.
Nótese que la directiva "#include" no es una sentencia de programa sino una orden de que se copie literalmente un archivo de texto en el lugar en que ella está ubicada ,por lo que no es necesario terminarla con "; ".

FUNCION     main()
Dejemos de lado por el momento el análisis de la primer linea del programa, y pasemos a la segunda.
La función main() indica donde empieza el programa, cuyo cuerpo principal es un conjunto de sentencias delimitadas por dos llaves, una inmediatamente después de la declaración main() " { ", y otra que finaliza el listado " } ". Todos los programas C arrancan del mismo punto: la primer sentencia dentro de dicha función, en este caso printf ("......").
En el EJEMPLO 1 el programa principal está compuesto por sólo dos sentencias: la primera es un llamado a una función denominada printf(), y la segunda, return, que finaliza el programa retornando al Sistema Operativo.
Recuérdese que el lenguaje C no tiene operadores de entrada-salida por lo que para escribir en video es necesario llamar a una función externa. En este caso se invoca a la función printf(argumento) existente en la Librería y a la cual se le envía como argumento aquellos caracteres que se desean escribir en la pantalla. Los mismos deben estar delimitados por comillas. La secuencia \n que aparece al final del mensaje es la notación que emplea C para el caracter "nueva linea" que hace avanzar al cursor a la posición extrema izquierda de la línea siguiente. Más adelante analizaremos otras secuencias de escape habituales.
La segunda sentencia (return 0) termina el programa y devuelve un valor al Sistema operativo, por lo general cero si la ejecución fué correcta y valores distintos de cero para indicar diversos errores que pudieron ocurrir. Si bien no es obligatorio terminar el programa con un return, es conveniente indicarle a quien lo haya invocado, sea el Sistema Operativo o algún otro programa, si la finalización ha sido exitosa, o no. De cualquier manera en este caso, si sacamos esa sentencia el programa correrá exactamente igual, pero al ser compilado, el compilador nos advertirá de la falta de retorno.
Cada sentencia de programa queda finalizada por el terminador "; ", el que indica al compilador el fin de la misma. Esto es necesario ya que, sentencias complejas pueden llegar a tener más de un renglón, y habrá que avisarle al compilador donde terminan.
Es perfectamente lícito escribir cualquier sentencia abarcando los renglones que la misma necesite, por ejemplo podría ser:

printf("Hola mundo \n");

 

COMENTARIOS      /*    bla bla bla bla....     */
La inclusión de comentarios en un programa es una saludable práctica, como lo reconocerá cualquiera que haya tratado de leer un listado hecho por otro programador ó por sí mismo, varios meses atrás. Para el compilador, los comentarios son inexistentes, por lo que no generan lineas de código, permitiendo abundar en ellos tanto como se desee.
En el lenguaje C se toma como comentario todo caracter interno a los simbolos: /* */ . Los comentarios pueden ocupar uno o más renglones, por ejemplo:


/* este es un comentario corto */
/* este otro
		es mucho
		más largo
		que el anterior */


Todo caracter dentro de los símbolos delimitadores es tomado como comentario incluyendo a " * " ó " ( " , etc.

SiguienteSiguiente Página