Publicado el 27 de Noviembre del 2018
2.384 visualizaciones desde el 27 de Noviembre del 2018
1,6 MB
71 paginas
Creado hace 10a (12/09/2013)
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
TEMA 5.
FUNCIONES
Grado en Ingeniería en Tecnologías Industriales
Programación
a
r
i
M
.
L
.
J
,
s
a
i
s
e
l
g
I
.
A
.
J
,
o
r
e
m
o
R
-
z
e
m
ó
G
.
J
,
z
e
ñ
o
d
r
O
.
J
.
F
,
o
d
e
l
o
T
e
d
.
P
,
o
r
e
m
s
e
S
.
.
P
M
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
CONTENIDOS
5.1. PROGRAMACIÓN MODULAR
5.2. IMPLEMENTACIÓN DE FUNCIONES
5.3. LLAMADA A FUNCIONES
5.4. PASO DE PARÁMETROS A UNA FUNCIÓN: POR VALOR Y POR REFERENCIA
5.5. ÁMBITO DE DECLARACIÓN DE VARIABLES. VISIBILIDAD
5.6. BIBLIOTECAS DE FUNCIONES
5.7. ANEXOS
5.7.1. BIBLIOTECAS ESTÁNDAR DE C
5.7.2. BIBLIOTECAS DE FUNCIONES EN DEV-C++
2
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. PROGRAMACIÓN MODULAR
5.2. IMPLEMENTACIÓN DE FUNCIONES
5.3. LLAMADA A FUNCIONES
5.4. PASO DE PARÁMETROS A UNA FUNCIÓN: POR VALOR Y POR REFERENCIA
5.5. ÁMBITO DE DECLARACIÓN DE VARIABLES. VISIBILIDAD
5.6. BIBLIOTECAS DE FUNCIONES
5.7. ANEXOS
3.7.1. BIBLIOTECAS ESTÁNDAR DE C
3.7.2. BIBLIOTECAS DE FUNCIONES EN DEV-C++
5.1. PROGRAMACIÓN MODULAR
a
r
i
M
.
L
.
J
,
s
a
i
s
e
l
g
I
.
A
.
J
,
o
r
e
m
o
R
-
z
e
m
ó
G
.
J
,
z
e
ñ
o
d
r
O
.
J
.
F
,
o
d
e
l
o
T
e
d
.
P
,
o
r
e
m
s
e
S
.
.
P
M
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. Programación Modular
Programación modular
• Técnicas de programación para crear buenos programas
• Programación modular
• Programación estructurada
• ¿Qué es un buen programa?
• Funcionalmente correcto: Produce los resultados requeridos
• Legible: Fácilmente comprensible por cualquier programador
• Modificable: Diseñado de forma que la incorporación de
modificaciones sea sencilla
• Fácil de depurar: Diseñado de forma que la localización y corrección de
errores sea sencilla
• Bien documentado: Incluye comentarios y documentación
suplementaria que permite a otro programador comprender su
funcionamiento
4
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. Programación Modular
Programación estructurada
• Programación convencional:
• Elabora programas sin seguir ningún método de programación.
• Resultado: Programas muy largos y muy difíciles de mantener.
• Programación estructurada
• Todo programa tiene un único punto de inicio y un único punto de fin
• Uso de un número limitado de estructuras de control: secuenciales,
alternativas y repetitivas
• Prohibidos los saltos de una instrucción a otra
5
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. Programación Modular
Programación modular
• Programación modular:
• Se basa en la descomposición del problema en problemas más simples
(módulos) que se pueden analizar, programar y depurar
independientemente
• Un módulo es:
• Un conjunto de instrucciones que realizan una tarea concreta y/o
proporcionan unos determinados resultados, y que puede ser llamada
(invocada) desde el programa principal o desde otros módulos
• Módulo, subprograma o función son sinónimos
• En C, los llamamos funciones
• Ejemplos: funcionOrdenarLista, funcionCalcularMedia
6
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. Programación Modular
Ventajas de la programación modular
• Ventajas de la Programación Modular:
• Programas más estructurados y legibles.
• Programas más cortos y simples, debido a la división del problema
complejo en partes
• Los subprogramas son independientes
• Se pueden escribir, compilar y probar de forma independiente, por
lo que en un programa de gran tamaño pueden trabajar distintos
programadores.
• Se puede modificar un subprograma sin afectar al resto de del
programa, por lo que se pueden realizar cambios en un módulo sin
que sea necesario modificar (ni volver a probar) el resto
• Los subprogramas son reutilizables.
• Los módulos pueden ser utilizados en distintos programas que
hagan uso de la misma funcionalidad.
7
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. Programación Modular
Programación modular
• La adecuada división de un programa en subprogramas
constituye un aspecto fundamental en el desarrollo de
cualquier programa.
8
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. Programación Modular
Programación modular
• Un programa consta de:
• Programa principal: contiene operaciones fundamentales y las llamadas a
los subprogramas.
• Subprogramas (funciones) : programas independientes que resuelven un
problema particular
Programa Principal
INICIO
instrucción 1
instrucción 2
llamada a función 1
llamada a función n
instrucción n
FIN
Función 1
instrucción a
instrucción b
instrucción z
Función n
instrucción a
instrucción b
instrucción z
9
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. Programación Modular
Programación modular en C: Funciones
• C es un lenguaje que orientado a la programación modular
• Todo programa en C se compone de varios módulos
denominados funciones
• El programa principal en C es la función main
• Se puede ver como una función a su vez, llamada desde el sistema
operativo
• Las funciones son llamadas desde la función main o desde
otras funciones
10
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.1. PROGRAMACIÓN MODULAR
5.2. IMPLEMENTACIÓN DE FUNCIONES
5.3. LLAMADA A FUNCIONES
5.4. PASO DE PARÁMETROS A UNA FUNCIÓN: POR VALOR Y POR REFERENCIA
5.5. ÁMBITO DE DECLARACIÓN DE VARIABLES. VISIBILIDAD
5.6. BIBLIOTECAS DE FUNCIONES
5.7. ANEXOS
3.7.1. BIBLIOTECAS ESTÁNDAR DE C
3.7.2. BIBLIOTECAS DE FUNCIONES EN DEV-C++
5.2. IMPLEMENTACIÓN DE FUNCIONES
a
r
i
M
.
L
.
J
,
s
a
i
s
e
l
g
I
.
A
.
J
,
o
r
e
m
o
R
-
z
e
m
ó
G
.
J
,
z
e
ñ
o
d
r
O
.
J
.
F
,
o
d
e
l
o
T
e
d
.
P
,
o
r
e
m
s
e
S
.
.
P
M
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.2. Implementación de Funciones
Elementos fundamentales
• Los elementos fundamentales de una función son
• Su nombre, que se usa para llamarla (invocarla)
• Ejemplo: CalcularMedia
• El resultado que devuelve
• Ejemplo: media
• Los datos que usa para realizar su tarea
• Ejemplo: num1, num2, num3
• Llamados parámetros o argumentos
• Las instrucciones que realizan la tarea
12
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.2. Implementación de Funciones
Declaración de una función: Prototipo
• Prototipo
• Para poder usar una función, primero hay que declararla, igual que se
hace con las variables
• Para ello se usa una forma predefinida denominada prototipo
• El prototipo informa de la existencia de la función, que está
implementada más adelante
• Tiene que estar antes de que se utilice por primera vez esa función
• al comienzo del programa (después de los #define e #include)
• El prototipo de una función siempre termina con el carácter “;”.
13
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.2. Implementación de Funciones
Prototipo
• En el prototipo se especifica
• tipo: Tipo de dato que devuelve la función.
• nombre: Nombre asignado a la función.
• Autoexplicativo.
• Debería empezar por una letra minúscula.
• Si contiene varias palabras se marcarán poniendo la inicial de la
segunda y subsiguientes palabras en mayúsculas.
• lista de parámetros: Datos de entrada con los que trabaja la función
• Sintaxis del prototipo en C
tipo nombre (lista de parámetros);
14
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programación
Programación
Programación
5.2. Implementación de Funciones
Prototipo: Ejemplos
• Ejemplos de prototipos de funciones
int potencia (int base, int exponente);
float suma (float n1, float n2);
void mostrarDatos (int a, int b);
int leerDato(void);
15
Tema 2. Arquitectura del Ordenador: Hardware y software
Tema 1. Introducción
Tema 1. Introducción
Tema 5. Funciones
Programación
Programac
Comentarios de: Tema 5. Funciones (0)
No hay comentarios