Академический Документы
Профессиональный Документы
Культура Документы
PROGRAMACION DE COMPUTADORAS
Dev-C++ es un software de libre distribucin sujeto a los trminos de la Licencia Pblica General (GPL)
que facilita la escritura de programas en lenguaje C++ para brindar las facilidades de creacin de
programas (ejecutables *.exe), se apoya en diversos compiladores, entre ellos MinGW (Minimalist Gnu
Windows), el cual es tambin software libre bajo la licencia GNU.
Las caractersticas de Dev-C++ son:
Entraremos a hacer una breve descripcin de cada una de las partes que conforman el entorno de
trabajo.
5.1.1
Editor
El Editor es la parte donde escribiremos los programas fuente. Este se comporta como cualquier otro
editor, sin embargo, ofrece una serie de ayudas que nos apoyarn al momento de escribir un programa.
Son los tpicos comandos de Windows (abrir, guardar, copiar y pegar) Tambin tenemos una serie de
conos en las barras de herramientas que no son ms que una parte de las opciones que tenemos en los
mens, se puede dejar el ratn encima de un icono durante unos segundos y aparecer una ayuda
emergente. Explicativa de lo que se ejecuta cuando se hace clic sobre la figura.
5.1.3
Area de edicin
Aqu aparecern los Archivo de cdigo que se abran. Se Pueden tener abierto ms de un Archivo a la
vez, y seleccionarlo por medio del men Windows.
5.1.4
Tipos de archivo
La extensin para cada archivo depende de la funcin que tenga. Algunos sern puestos
automticamente por el sistema, otros sern seleccionados por nosotros al momento de guardar el
archivo:
Como se puede ver an la grfica, habr una extensin para archivos de tipo C y otras para archivos de
tipo C++.
Cabecera (.h):
Contienen definiciones y declaraciones compartidas por varios archivos fuente, as como las
correspondientes a las funciones estndar de las libreras.
Ejecutables (.exe):
Se almacena en un nico archivo todo el cdigo mquina encadenando todos los archivos objeto
asociados al programa, ya en un formato ejecutable. Es el programa que se ejecutar en la
computadora.
5.1.5
Proceso de compilacin
5.1.6
Compilacin y Ejecucin
5.1.7
Depuracin
La depuracin es la tcnica que se utiliza para ejecutar el programa paso a paso. Se puede llevar a cabo
para dos tareas, conocer el funcionamiento de un programa del que se tiene el cdigo fuente, o
encontrar errores en un programa que hasta ahora estamos desarrollando.
Durante el proceso de depuracin, se puede hacer correr el programa hasta una lnea en particular y a
partir de all, seguir ejecutando paso a paso. Una de las bondades de este proceso, es que se puede ir
evaluando el estado de las variables que intervienen en el programa.
Comenzar la depuracin
1. Colocar el cursor sobre la primera instruccin de main.
2. Dar click de ratn sobre la parte ms izquierda de una lnea de cdigo (sobre el nmero de
lnea), pulsar el botn izquierdo del ratn en dicha posicin, o en cualquier otro lugar de
la lnea pulsar el botn izquierdo y en el men, tomar Aadir/Quitar punto de interrupcin
(F4). Esto har que quede marcada la instruccin, indicando que se ha insertado un punto
de interrupcin (la lnea quedar marcada en rojo) que obligar al depurador a detenerse en
este punto. Para eliminar los puntos de ruptura se realiza la misma operacin que para
marcarlos.
3. Pulsar F5, con lo que comenzar la ejecucin paso a paso del programa, indicndose en azul
cul ser la siguiente lnea que se ejecutar. Adems aparecer una ventana de MS-DOS
para que se realicen las entradas y salidas que el programa necesite durante su depuracin.
Control de la depuracin.
Siguiente Paso: Ejecuta la siguiente instruccin del programa (la marcada en color azul).
Cuando dicha instruccin contiene una llamada a una funcin/mtodo, dicha
funcin/mtodo se ejecuta completamente tras seleccionar Siguiente Paso. Esta posibilidad
es muy til cuando estamos seguros de que esa funcin/mtodo no contiene ningn tipo de
error.
Avanzar Paso a Paso: Ejecuta la siguiente instruccin del programa. Si dicha instruccin
contiene una llamada a una funcin o mtodo el ndice de ejecucin (lnea marcada en azul)
se situar en la primera sentencia de dicha funcin/mtodo para ejecutarlo paso a paso.
Saltar Paso: Ejecuta instrucciones hasta alcanzar el siguiente punto de interrupcin. Cuando
no hay puntos de interrupcin situados despus de la sentencia actual, se ejecutarn todas
las instrucciones hasta finalizar el programa.
Parar ejecucin: Detiene la ejecucin paso a paso, sin necesidad de llegar al final del
programa.
5.2 Ejemplos
Vamos a tomar como referencia un ejercicio que hayamos resuelto en PseInt:
1. Construya un diagrama de flujo y pseudocdigo que, al recibir como dato el
precio de un producto importado, incremente 11% del mismo si es inferior a
$1,500 y que adems escriba el nuevo precio del producto.
Datos de entrada
El precio del producto.
Datos de salida
El nuevo precio del producto.
Definicin de variables
precio: Variable de tipo real que representa el precio del producto.
npr: Variable de tipo real que almacena el nuevo precio del producto.
Pseudocdigo
Proceso incrementoprecio
//Incrementoprecio.psc
//El programa, al recibir como dato el precio de un producto
//importado,
//incrementa 11% el mismo si ste es inferior a $1500.
Definir precio, npr como real;
Escribir "Introduzca el precio del producto:";
Leer precio;
Si precio < 1500 Entonces
npr <- precio * 1.11;
Escribir "Nuevo precio: ",npr;
FinSi
FinProceso
Diagrama de flujo
Prueba de escritorio
Salida
10
Las lneas 1 a 5, son los mismos comentarios que tenamos en nuestro programa en PseInt.
La lnea 7, es el encabezado obligatorio para todo programa en C++, y es el que permite que los
mtodos de entrada y salida (cin/cout) se puedan utilizar. Al usar la directiva #include estamos
dicindole al compilador que busque e intrprete todos los elementos definidos en el archivo
que acompaa la directiva (en este caso, iostream ). Para evitar sobrescribir los elementos ya
definidos al ponerles igual nombre, se crearon los espacios de nombres o namespace del
singular en ingls.
En este caso hay un espacio de nombres llamado std , que es donde se incluyen las definiciones
de todas las funciones y clases que conforman la biblioteca estndar de C++. No importa que
esto sea un poco confuso, considerar por ahora que esa lnea es obligatoria para nuestro
programa en C++.
11
La lnea 8, es un encabezado para utilizar funciones de Entrada y Salida de C, pero que en C++
no es necesario, sin embargo, la dejamos por si necesitamos alguna funcin de ese lenguaje.
En la lnea 10, al incluir la sentencia using namespace std le estamos diciendo al compilador
que usaremos el espacio de nombres std por lo que no tendremos que incluirlo cuando usemos
elementos de este espacio de nombres, como pueden ser los objetos cout y cin, que
representan el flujo de salida estndar (tpicamente la pantalla o una ventana de texto) y el flujo
de entrada estndar (tpicamente el teclado). Al igual que la lnea 7, consideremos esta lnea
obligatoria en todos nuestros programas.
La lnea 12 tambin es obligatoria y es el comienzo de nuestro programa. Esta lnea la
analizaremos ms adelante cuando veamos la lnea 21, sin embargo, se ver con mucho ms
detalle durante el curso, cuando veamos mtodos.
La lnea 13 equivale a nuestro Definir de PseInt. En C++, los tipos de datos Reales, se pueden
definir de dos formas: float o double. El segundo tipo de datos, supera al primero en la
capacidad numrica que puede almacenar, por eso su nombre double, que deja translucir que
es de doble capacidad.
Compare las lneas 15 a 20 con su pseudocdigo en PseInt y trate de entender la equivalencia.
La lnea 21 est relacionada con la forma que se haya escrito la lnea 12. Volvamos atrs a esa
lnea. Note que empieza con una sentencia int, lo que significa que el main debe retornar un
Entero (por eso int, abreviatura de Integer en Ingls). Al colocar return(0), estamos indicando
que el mtodo main retornar un entero 0. Si se omite esta lnea, el compilador sacar un error.
La lnea 22 termina con una llave que cierra. Habr notado durante todo el programa, que hay
llaves que abren y otras que cierran. Con respecto a lo realizado en sus programas de PseInt,
cmo puede interpretar estas llaves?
Para terminar, les hago notar que las lneas en blanco, no son obligatorias, son para hacer ver el
cdigo con mayor claridad.
2. Realizar un algoritmo que por medio de la estructura repetitiva Mientras obtenga el mayor
valor que se haya introducido de una serie de 10 nmeros ingresados por el teclado.
Variables a utilizar
-
Datos de entrada:
-
El usuario va a introducir los valores los cuales se van almacenando en la variable num.
12
Datos de salida:
-
Procedimiento:
-
Pseudocdigo
Proceso mientras_ejemplo2
Definir contador, num, valor_mayor
Como Entero;
13
Diagrama de flujo
14
5.3.1
15
Con /* (slash y asterisco), en este caso se debe cerrar con la pareja opuesta */.
5.3.2
5.3.3
Uso Correcto
#include <iostream>
#include <stdlib.h>
int main()
{ /* inicio del programa */
cout<<"Hola mundo \n;
system ("PAUSE");
return 0;
}
16
5.3.4
Olvidar el signo punto y coma (;) despus de una instruccin que lo requiera
Uso Incorrecto
#include <iostream>
#include <stdlib.h>
int main()
{ /* inicio del programa */
cout<<"Hola mundo \n
system ("PAUSE");
return 0;
}
Uso Correcto
#include <iostream>
#include <stdlib.h>
int main()
{ /* inicio del programa */
cout<<"Hola mundo \n;
system ("PAUSE");
return 0;
}
5.3.5
5.3.6
5.3.7
5.3.8
17
18