ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Introducción a la Introducción a la ProgramaciónProgramación
Práctica P4: Introducción al Entorno Práctica P4: Introducción al Entorno de Programaciónde Programación
Profesorado:Profesorado:Antonio Carlos Domínguez BritoAntonio Carlos Domínguez BritoOscar Déniz SuárezOscar Déniz Suárez
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Lenguajes de ProgramaciónLenguajes de Programación
• Lenguaje Máquina: Los programas expresados en lenguaje máquina son directamente ejecutables por el procesador
Unidades Centrales
Entra-da
Sali-da
Memoria Principal
ALUUnidad deControl
111000 .
010110 …
…
101101 …
…
Programa en LenguajeMáquina (o en código binario, o en código ejecutable)
Datos Datos
Procesador
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Lenguajes de ProgramaciónLenguajes de Programación
• Lenguajes de Alto Nivel: Los programas expresados en lenguajes de alto nivel precisan ser traducidos a lenguaje máquina para poder ser ejecutados por el procesador
Unidades Centrales
Memoria Principal
ALUUnidad de
Control
111000 .
010110 …
…
101101 …
…
Traductor (Compilador o Intérprete)
Procesador
#include …
…
Int main( …)
{
…
}
Programa enLenguaje deAlto Nivel
111000 .
010110 …
…
101101 …
…
Programa Ejecutable
Fichero fuente
Fichero ejecutable
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Lenguajes de ProgramaciónLenguajes de Programación
• Lenguajes de Alto Nivel
• FORTRAN: orientado al cálculo científico
• COBOL: orientado hacía las aplicaciones de tipo comercial
• C: orientado a la programación de sistemas operativos y
aplicaciones de ingeniería
• C++: lenguaje derivado del C
• Java: lenguaje derivado del C++ de amplio uso en Internet
• Pascal y BASIC: orientados a la didáctica de la programación
• Ada: orientado a la programación de sistemas de tiempo real
(aviones, cohetes, satélites, barcos, …)
• Prolog y LISP: orientados hacía la inteligencia artificial
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Lenguaje CLenguaje C
• Algunos datos
• Fue creado en 1970 por Dennis Ritchie en los Laboratorios Bell
(Estados Unidos)
• Los principales sistemas operativos (Windows y UNIX) y todos
sus derivados han sido creados utilizando C como lenguaje de
programación
• Es un lenguaje de propósito general, aunque fue especialmente
diseñado para la programación de sistemas operativos
• Ha influenciado en numerosos lenguajes de programación (C++,
Java, …)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Lenguaje CLenguaje C
• El Lenguaje C es un lenguaje de programación compilado
Unidades Centrales
Memoria Principal
ALUUnidad de
Control
111000 .
010110 …
…
101101 …
…
Compilador(DevC++)
Procesador
#include …
…
Int main( …)
{
…
}
Programa en C
111000 .
010110 …
…
101101 …
…
Programa Ejecutable
Fichero fuente
Fichero ejecutable
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Lenguaje C: Proceso de Realización de Lenguaje C: Proceso de Realización de Programas Programas
(1) Edición programa fuente
(2) Compilación
¿error?
(3) Error de CompilaciónSí
No
.o
.o.o
……
Ficheros objeto
.c
.h
.c
.hmain.c
…
…
Ficheros fuente
.exePrograma ejecutable
(4) Enlazado
¿error?
(6) Error de Ejecución
(5) Ejecución
Sí
No.exe
Programa ejecutable final
¿error?
(5) Error de enlazado
Sí
No
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Lenguaje C: El Compilador Dev-C++Lenguaje C: El Compilador Dev-C++
• Bloodshed
Dev-C++ es el
compilador de
C/C++ que se
va a utilizar
(accesible en
www.bloodshed
.net y en la
página web de
la asignatura).
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Lenguaje C: Nuestro Primer ProgramaLenguaje C: Nuestro Primer Programa
#include <stdio.h>#include <stdlib.h>
int main(int argc, char *argv[]){ printf("¡Hola Mundo!\n"); system("PAUSE"); return 0;}
escritura en pantallacuerpo del programa
ficheros cabecera
espera por una pulsaciónde teclado
finalización de programa
cabecera de programa
• El programa Hola Mundo
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Creando un Proyecto con Dev-C++ (1)Creando un Proyecto con Dev-C++ (1)
• Una vez
abierto Dev-
C++ se nos
muestra su
interfaz
inicial.
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Creando un Proyecto con Dev-C++ (2)Creando un Proyecto con Dev-C++ (2)
• Creamos una
carpeta para el
proyecto.
• A
continuacióncreamo
s el proyecto en
Dev-C++.
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Creando un Proyecto con Dev-C++ (3)Creando un Proyecto con Dev-C++ (3)
• Dev-C++
es un
compilador
de C/C++,
es preciso
indicar que
el proyecto
es en
lenguaje C.
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Creando un Proyecto con Dev-C++ (4)Creando un Proyecto con Dev-C++ (4)
• Proyecto
recién
creado. Ficheros fuente incluidos en el proyecto
Área de edición de ficheros
fuente
main.c: fichero fuente principal del proyecto
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Editamos
nuestro
primer
fichero
fuente.
Creando un Proyecto con Dev-C++ (5)Creando un Proyecto con Dev-C++ (5)
añadimos esta instrucción, el resto ya lo ha creado Dev-C++ cuando se creó el proyecto
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Compila-
mos y ejecu-
tamos el
proyecto.
Creando un Proyecto con Dev-C++ (6)Creando un Proyecto con Dev-C++ (6)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Programa
en ejecu-
ción.
Creando un Proyecto con Dev-C++ (7)Creando un Proyecto con Dev-C++ (7)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Resultados de la compilación.
Creando un Proyecto con Dev-C++ (7)Creando un Proyecto con Dev-C++ (7)
programa ejecutable resultado de la compilación
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Lanzamos
el
fichero .dev
dentro del
directorio de
el proyecto
ya existente
que se va a
abrir.
Abriendo un Proyecto con Dev-C++ (1)Abriendo un Proyecto con Dev-C++ (1)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Una vez
lanzado
Dev-C++
abre el
proyecto.
Abriendo un Proyecto con Dev-C++ (2)Abriendo un Proyecto con Dev-C++ (2)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Instrucciones de lectura a través de teclado
Abriendo un Proyecto con Dev-C++ (3)Abriendo un Proyecto con Dev-C++ (3)
variables: reserva de memoria para almacenar el nombre y los apellidos
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• El progra-
ma Tu
Nombre en
ejecución.
Abriendo un Proyecto con Dev-C++ (4)Abriendo un Proyecto con Dev-C++ (4)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Abrimos el
proyecto
Depurando.
Depurando un Proyecto con Dev-C++ (1)Depurando un Proyecto con Dev-C++ (1)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Depurando un Proyecto con Dev-C++ (2)Depurando un Proyecto con Dev-C++ (2)
variables: reserva de memoria para almacenar valores numéricos
Instrucciones de cálculo numérico
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Añadimos
un punto de
ruptura
(breakpoint)
en la
primera
línea del
programa.
Depurando un Proyecto con Dev-C++ (3)Depurando un Proyecto con Dev-C++ (3)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Añadimos
un punto de
ruptura
(breakpoint)
en la
primera
línea del
programa.
Depurando un Proyecto con Dev-C++ (4)Depurando un Proyecto con Dev-C++ (4)
línea en la que la ejecución se parará
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Ejecuta-
mos en
modo
depuración.
Depurando un Proyecto con Dev-C++ (5)Depurando un Proyecto con Dev-C++ (5)
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Ejecuta-
mos en
modo
depuración.
Depurando un Proyecto con Dev-C++ (6)Depurando un Proyecto con Dev-C++ (6)
ejecución parada en esta instrucción
botón de ejecución paso a paso (depuración)
botón para observar el con- tenido de alguna variable
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Añadimos
“watches”
de cada
variable.
Depurando un Proyecto con Dev-C++ (7)Depurando un Proyecto con Dev-C++ (7)
“watches” añadidos
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Ejecución
“paso a
paso”.
Depurando un Proyecto con Dev-C++ (8)Depurando un Proyecto con Dev-C++ (8)
botón de ejecución paso a paso (depuración)
ejecución parada en esta
instrucción
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
• Ejecución
“paso a
paso”.
Depurando un Proyecto con Dev-C++ (9)Depurando un Proyecto con Dev-C++ (9)
botón de ejecución paso a paso (depuración)
ejecución parada en esta
instrucción
ULPGCE
scu
ela
Un
iver
sita
ria
Po
litéc
nic
a
Introducción a la Programación - Práctica P4
Ejercicios PropuestosEjercicios Propuestos
1. Utilizando el proyecto tu-nombre:
a) Modifique el fichero “main.c” de manera que el programa pregunte por su domicilio.
b) Realice una depuración del programa observando los valores que toman las distintas variables durante la ejecución paso a paso.
2. Utilizando el proyecto depurando:
a) Introduzca las variables “float” g, h, i y j. Introduzca instrucciones dando valores iniciales a las mismas, realice a continuación un cálculo con ellas, y añada dicho cálculo en la instrucción donde se calcula total.
b) Realice una depuración del programa observando los valores que toman las distintas variables durante la ejecución paso a paso.
Top Related