1.878 visualizaciones desde el 1 de Septiembre del 2018
121,3 KB
10 paginas
Creado hace 16a (06/10/2008)
Programación de
Ordenadores
Ingeniería Química
David Pelta
Depto de Ciencias de la Computación e I.A.
Universidad de Granada
Índice
Resolución de Problemas con Ordenadores
Algoritmo
Metodología de la programación
Lenguajes de programación
Entornos integrados de desarrollo
1
Conceptos Básicos
La solución a un problema debe establecerse en
pasos
secuencia
de
términos
computacionales (programa).
)
una
(p g
de
p
Su
especificación
notaciones
lenguajes de programación.
sistemáticas
de
como
se
hace
a
través
conocidas
La programación es
l
la tarea de realizar
programas para resolver problemas mediante
ordenador.
bl
di
Existen metodologías que permiten que la
programación sea lo más eficaz en cuanto al
desarrollo y mantenimiento.
Los ordenadores son "tontos"
Ejecutan rapida y precisamente operaciones
t
i
i
t
Ej
lógicas y matemáticas
id
Cumplen obedientemente lo que les decimos
(no siempre igual a lo que queremos!)
Errores pequeños pueden provocar
graves
fallos
2
¿Qué es un Algoritmo?
Definición: método para resolver un problema
mediante una serie de pasos:
1. Precisos: (indicar el orden de ejecución en cada
paso).
)
2. Definidos (si el algoritmo se prueba dos veces, en
estas dos pruebas, se debe obtener el mismo resultado).
3. Finitos (el algoritmo tiene que tener un número
determinado de pasos).
Los
l
algoritmos
se
l
fó
fórmulas,
diagramas de flujo, y pseudo códigos. Está última
representación es la mas utilizada por su sencillez y
parecido al lenguaje humano.
pueden expresar
por
d
Mi Primer Algoritmo
Diseñe algoritmos para
Preparar una tortilla de patatas
Hacer una llamada telefónica
Preparar un cubata
Ordenar una lista de números
Buscar el alumno con nota más alta
3
Metodología de la Programación
La utilización de conceptos y técnicas adecuadas de
programación,
obtener
programas que cumplan los siguientes requisitos:
fundamental
para
es
Legibles: comprensibles por cualquier programador
Modificables:
modificaciones
Depurables:
estructura
localización y
permitir
debe
ser
fácil
la
su
debe
corrección de errores
Y como elementos adicionales se obtiene:
Y como elementos adicionales, se obtiene:
Reducción de los costos de mantenimiento.
Aumento de la productividad del programador.
Los
quedan mejor
programas
documentados
internamente.
Metodología de la Programación
Si no seguimos un método de programación
riguroso:
Los programas son rígidos y difíciles de adaptar
a nuevos requerimientos
Los
programadores
gastan mucho
tiempo
corrigiendo sus errores
La comunicación entre programadores es muy
La comunicación entre programadores es muy
difícil
Los programas y módulos son poco reusables
Existen deficiencias en la documentación
4
Resolución de problemas
con el Ordenador
Análisis de Requerimientos
Análisis de Requerimientos
Diseño
Implementación
El "ciclo de vida" del
software
Validación
Mantenimiento
Análisis de Requerimientos
Esta fase consta de dos partes orientadas a
responder QUE es lo que hay que hacer:
1. Definición
del
claramente que es lo que se quiere resolver
Problema:
identificar
2. Análisis del problema: se basa en identificar
La fuente y los tipo de datos para las entradas
Interacción de los datos y su transformación
Interacción de los datos y su transformación
Destino y formato de salida
El análisis se realiza empleando el
"natural"
lenguaje
5
Etapa de Diseño
En esta fase resolvemos el COMO se hace lo
especificado en el análisis de requerimientos:
"ideamos" un algoritmo
utilizamos "pseudocódigo" para su descripción
Aplicamos la técnica divide y vencerás:
la
resolución de un problema complejo se realiza
diviendo el problema en subproblemas
d l
A li
Aplicamos diseño descendente o modular
El diseño del algoritmo es independiente del
lenguaje de programación en el que se vaya a
codificar posteriormente
di ñ d
d t
Implementación y Validación
Implementación: se pasa del diseño obtenido en
la etapa anterior, a una descripción escrita en un
lenguaje de programación (un "dialecto" que
qu
pueda comprender el ordenador). Esta descripción
(programa) debe "compilarse" y "ejecutarse" para
pasar a la fase de validación.
p og a a ó
guaj
d a
d
(u
o
Validación: es el proceso de identificar y eliminar
errores para poder responder a dos preguntas:
errores para poder responder a dos preguntas:
Construimos el software correcto ? (contra el
usuario)
Lo construimos
especificación)
correctamente?
(contra la
6
Lenguajes de Programación (1)
Un lenguaje de programación es una herramienta
para producir
software. Se compone de un
conjunto de reglas, símbolos y signos que permiten
la comunicación con el ordenador.
Existen 3 categorías:
1) Lenguajes de máquina: "entendible" por el
ordenador.
Cadenas de ceros y unos
Cadenas de ceros y unos
Alta velocidad de ejecución
Muy complejo de utilizar
Los programas resultantes son difíciles de leer
Cada procesador tiene un lenguaje máquina
propio. No son transportables
Lenguajes de Programación (2)
2) Lenguajes ensambladores:
Utilizan códigos mnemotécnicos para representar
cadenas de 0's y 1's
y
Aumentan la comprensibilidad de los programas
Son dependientes del procesador
Cada instrucción, representa una operación del
ordenador
los
los
que
Surgen
a
traduce
programas en lenguaje de máquina para su
ejecución
"Ensambladores":
programas
ensamblador
software
en
7
Lenguajes de Programación (3)
3) Lenguajes de alto nivel
Proporcionan un repertorio de instrucciones
amplio, potente, y fácilmente asimilable
Los programas son mucho más legibles y claros
Los programas son mucho más legibles y claros
Son fáciles de aprender y mantener
Son transportables
Java, FORTRAN, C, C++, PASCAL, etc.
1. Tanto los lenguajes de alto nivel como los de
bajo nivel, no son entendibles directamente por
la máquina.
2. Necesitan ser
traducidos a instrucciones en
lenguaje de máquina
E
3. Es necesario disponer de un "traductor" o
interfase con el lenguaje de máquina para que
el programa sea ejecutable.
"t d t
di
d
i
"
Existen dos tipos fundamentales de traductores:
Compiladores
Interpretes
8
Compiladores
Software que traduce el programa inicial
(programa fuente) escrito en un lenguaje de
(programa fuente) escrito en un lenguaje de
alto nivel, a un programa (programa objeto)
en lenguaje de máquina factible de ser
ejecutado
Intérpretes
Analizan, traducen y ejecutan una a una las
instrucciones del programa fuente; no se
analiza una instrucción hasta que la anterior se
analiza una instrucción hasta que la anterior se
haya ejecutado. Los intérpretes no generan
programa objeto.
9
Entornos Integrados de
Desarrollo
Un "IDE" es un software que incorpora todas las
herramientas necesarias para el desarrollo de
herramientas necesarias para el desarrollo de
nuestros programas
Por herramientas entendemos:
Editor
Compilador
"Linker"
"Li k "
Depuración
Ejecución
En prácticas usaremos el Dev-C++
10
Links de descarga
http://lwp-l.com/pdf13318
Comentarios de: Tema 2 - Programación de Ordenadores - Ingeniería Química (0)
Comentarios de: Tema 2 - Programación de Ordenadores - Ingeniería Química (0)
No hay comentarios