PROGRAMACIÓN
PROGRAMACIÓN
Curso 0: Programación
Alberto Sánchez <
[email protected]>
Alberto Sánchez <
[email protected]>
Escuela Técnica Superior de Ingeniería Informática
1
Índice
PROGRAMACIÓN
PROGRAMACIÓN
Introducción a la programación
Lenguaje C
Programación estructurada
Programación estructurada
Variables
Operadores
Estructuras de control
Estructuras de datos
Entrada/Salida
Entrada/Salida
Funciones
Aplicaciones modulares
Escuela Técnica Superior de Ingeniería Informática
2
Definiciones
PROGRAMACIÓN
PROGRAMACIÓN
Ordenador: máquina sin inteligencia propia, cuya finalidad es
O d
lid d
interpretar el código (instrucciones) que se les proporciona
i t li
fi
d
á
i
i
i
i
Lenguaje máquina: lenguaje que la computadora "entiende" y
y
p
g
j
g
j q
es capaz de ejecutar (Os y 1s)
q
Lenguaje de programación: medio de comunicación entre el
programador y el ordenador. El programador escribe en algún
programador y el ordenador El programador escribe en algún
lenguaje de programación y utiliza las herramientas provistas
(compiladores, etc.) por ese lenguaje para transformarlo en
lenguaje máquina.
lenguaje máquina
Programa: secuencia de órdenes a ser ejecutadas por el
ordenador escrito en algún lenguaje de programación
Algoritmo: secuencia de instrucciones que permiten obtener
un resultado en particular. Ej: receta de cocina
Escuela Técnica Superior de Ingeniería Informática
3
Índice
PROGRAMACIÓN
PROGRAMACIÓN
Introducción a la programación
Lenguaje C
Programación estructurada
Programación estructurada
Variables
Operadores
Estructuras de control
Estructuras de datos
Entrada/Salida
Entrada/Salida
Funciones
Aplicaciones modulares
Escuela Técnica Superior de Ingeniería Informática
4
Características del lenguaje C
PROGRAMACIÓN
PROGRAMACIÓN
C es uno de los lenguajes de programación más
extendidos hoy en día
Historia de C:
Historia de C:
1970 Bell desarrolla un nuevo S.O. para PDP‐11 ‐> UNICS ‐>
UNIX. Difícil de programar en PDP‐11
p g
1972 Dennis Ritchie diseña el lenguaje de programación C
Fabricantes crean sus propios compiladores ‐> pérdida de
p p
p
p
portabilidad
1980 Estandarización de C. ANSI C
1983 surge C++, versión de C orientada a objetos (Bjarne
Stroustrup)
Escuela Técnica Superior de Ingeniería Informática
5
Características de C
PROGRAMACIÓN
PROGRAMACIÓN
Sencillez
Estructurado: su esquema de programación es
imperativo vs. Orientado a objetos (C++, Java, …).
Consiste en escribir una secuencia de instrucciones una
C
detrás de la otra, las cuales se ejecutarán en orden.
i d i
ibi
i t
t
i
Compilado. Las órdenes son transformadas a lenguaje
Compilado Las órdenes son transformadas a lenguaje
máquina que se almacena en un archivo ejecutable.
Potente. Aunque es un lenguaje de alto nivel, tiene
Potente. Aunque es un lenguaje de alto nivel, tiene
capacidades de bajo nivel
Un lenguaje es de bajo nivel cuanto más cercano esté al código
máquina.
Un lenguaje que es de alto nivel cuanto más cercano esté del
lenguaje humano.
lenguaje humano.
Escuela Técnica Superior de Ingeniería Informática
6
Índice
PROGRAMACIÓN
PROGRAMACIÓN
Introducción a la programación
Lenguaje C
Programación estructurada
Programación estructurada
Variables
Operadores
Estructuras de control
Estructuras de datos
Entrada/Salida
Entrada/Salida
Funciones
Aplicaciones modulares
Escuela Técnica Superior de Ingeniería Informática
7
Programación estructurada
PROGRAMACIÓN
PROGRAMACIÓN
La programación estructurada sigue tres reglas:
Secuencia: las instrucciones del código se leen una detrás
de otra
Iteración: según cierta condición, un número de
t
i
instrucciones puede repetirse un numero determinado de
i
veces
i d d
d t
d
ti
Decisión: según ciertas condiciones se ejecutan o no un
Decisión: según ciertas condiciones se ejecutan o no un
conjunto de instrucciones
Escuela Técnica Superior de Ingeniería Informática
8
Estructura de un programa
PROGRAMACIÓN
PROGRAMACIÓN
En la programación estructurada tiene que existir un inicio y un fin
perfectamente definido de acuerdo al diagrama de flujo del
pe ecta e te de
do de acue do a d ag a a de ujo de
programa
Un programa bien estructurado debería tener algún subprograma
Un programa bien estructurado debería tener algún subprograma
que capture cualquier error dentro del programa
Escuela Técnica Superior de Ingeniería Informática
9
Primer programa
PROGRAMACIÓN
PROGRAMACIÓN
#i nc l ude <s t di o. h>
#i nc l ude <s t di o. h>
i nt mai n( )
{{
pr i nt f ( “ Hol a mundo\ n” ) ;
r et ur n 0;
}
}
#include : es una directiva de preprocesador. Lo que
q
hace es copiar todo el código del archivo stdio.h y
pegarlo en esa línea.
p p
int main(): es la función que hace de punto de
entrada del programa. Todo programa en C debe
tener una función main.
Escuela Técnica Superior de Ingeniería Informática
10
Primer programa
PROGRAMACIÓN
PROGRAMACIÓN
#i nc l ude <s t di o. h>
#i nc l ude <s t di o. h>
i nt mai n( )
{{
pr i nt f ( “ Hol a mundo\ n” ) ;
r et ur n 0;
}
}
printf : es una llamada a una función de biblioteca,
printf : es una llamada a una función de biblioteca,
que imprime un string en la pantalla.
Hola mundo\n : es un string constante. El caracter
“Hola mundo\n”: es un string constante El caracter
‘\n’ indica un salto de línea.
return: es el valor de retorno de la función.
d l
ió
t
f
l
l
d
t
Escuela Técnica Superior de Ingeniería Informática
11
Primer programa
PROGRAMACIÓN
PROGRAMACIÓN
#i nc l ude <s t di o. h>
#i nc l ude <s t di o. h>
i nt mai n( )
{{
pr i nt f ( “ Hol a mundo\ n” ) ;
r et ur n 0;
}
}
Las sentencias acaban en ;
Las sentencias acaban en ‘;’
Las llaves { } se utilizan para definir bloques de código
que forman el cuerpo de determinadas sentencias,
que forman el cuerpo de determinadas sentencias
en este caso una función.
Escuela Técnica Superior de Ingeniería Informática
12
Comentarios
PROGRAMACIÓN
PROGRAMACIÓN
Comentario: líneas de texto que el compilador o el
intérprete no consideran como parte del código, con
lo cual no están sujetas a restricciones de sintaxis.
Sirven para aclarar partes de código en posteriores
lecturas y, en general, para anotar cualquier cosa que
el programador considere oportuno.
Es una prioridad documentar el código fuente ya que
al momento de depurar ahorra mucho tiempo de
análisis para su corrección o estudio.
Escuela Técnica Superior de Ingeniería Informática
13
Comentarios
PROGRAMACIÓN
PROGRAMACIÓN
#i nc l ude <s t di o. h>
p
/ * Punt o de ent r ada
del pr ogr ama * /
/
i nt mai n( )
{
g
/ / Ll amada a pr i nt f
/ / Ll amada a pr i nt f
pr i nt f ( “ Hol a mundo\ n” ) ;
r et ur n 0;
}
}
Se pueden introducir comentarios dentro del código.
Se pueden introducir comentarios dentro del código.
Con // se introduce un comentario de una sola línea.
Con /* y */ se introducen comentarios multilínea.
i t d
ltilí
*/
t
i
C
/*
Escuela Técnica Superior de Ingeniería Informática
14
Proceso de construcción
PROGRAMACIÓN
PROGRAMACIÓN
Preprocesado: Las directrices que comienzan por #
son directrices del preprocesador. Son interpretadas
por el preprocesador, normalmente con
sustituciones.
Compilación: El código fuente ya preprocesado se
Compilación: El código fuente ya preprocesado se
transforma en código máquina.
Enlazado: se integra todo el código objeto de las
Enlazado: se integra todo el código objeto de las
distintas unidades compiladas en un solo programa
ejecutable.
ejecutable
Escuela Técnica Superior de Ingeniería Informática
15
Proceso de construcción
PROGRAMACIÓN
PROGRAMACIÓN
El compilador que se utiliza habitualmente en
entornos UNIX (como Linux) es gcc (GNU C Compiler)
Sintaxis:
Sintaxis:
gcc archivo.c –o archivo: Preprocesa, compila y enlaza
archivo.c generando el ejecutable archivo
g
j
gcc archivo.c –c –o archivo.o: Preprocesa y compila
archivo.c generando el fichero objeto archivo.o
gcc archivo.o –o archivo: Enlaza archivo.o y genera el
ejecutable archivo
Entornos de compilación completos: Visual Studio,
Dev C++
Escuela Técnica Superior de Ingeniería Informática
16
Índice
PROGRAMACIÓN
PROGRAMACIÓN
Introducción a la programación
Lenguaje C
Programación estructurada
Programación estructurada
Variables
Operadores
Estructuras de control
Estructuras de datos
Entrada/Salida
Entrada/Salida
Funciones
Aplicaciones modulares
Escuela Técnica Superior de Ingeniería Informática
17
Variables y constantes
PROGRAMACIÓN
PROGRAMACIÓN
i
P
d
d
i
i d i
El ordenador sigue una serie de instrucciones. Pero
El
esas instrucciones tienen que operar sobre una serie
de datos. El ordenador típico sólo procesa una
de datos El ordenador típico sólo procesa una
instrucción a la vez, por lo que necesita 'espacios de
memoria donde guardar o depositar, a modo de
memoria' donde guardar o depositar a modo de
cajones, los diversos datos
Comentarios de: Curso 0: Programación (0)
No hay comentarios