1. INTRODUCCION A LA
PROGRAMACION
“La buena programación no se aprende de
generalidades, sino viendo como los programas
significativos pueden hacerse claros, fáciles de leer,
fáciles de mantener y modificar , pensados para los
humanos eficientes y confiables; aplicando el sentido
común y buenas prácticas de programación. El estudio
cuidadoso y la imitación de buenos programas dirige
hacia una mejor escritura.”
SOFTWARE TOOLS IN PASCAL
Kernigham y Paluger
2. Programar una computadora significa dar una serie de
instrucciones a la máquina con una secuencia lógica, bajo un
lenguaje de programación, sea este de bajo, medio, alto
nivel o de cuarta generación, con el fin de sistematizar un
determinado proceso o dar solución a un problema.
Solo que algunas
veces, el
programador no
enfoca el problema
por el mejor camino,
y entonces surgen
los pequeños
obstáculos y dolores
de cabeza que
pueden alterar hasta
el más paciente de
los seres humanos.
¿Qué es programar?....
3. CONCEPTOS BÁSICOS Y METODOLOGÍA
PARA LA SOLUCIÓN DE PROBLEMAS POR
MEDIO DE COMPUTADORAS
OBJETIVO EDUCACIONAL:
Conocer la terminología relacionada con los algoritmos; así
como la importancia de aplicar técnicas adecuadas de
programación
Es por ello, que utilizamos lo que denominamos
ALGORITMOS
4. ¿Que es un algoritmo?:
Es un conjunto de pasos que permiten realizar con
perfección un problema determinado, el tiempo y el
espacio miden la mayor o menor eficacia del mismo.
INTRODUCCIÓN A LOS ALGORITMOS
Un algoritmo es en un sentido amplio una “secuencia
de pasos o etapas que conducen a la realización de
una tarea”. Los primeros algoritmos nacieron para
resolver problemas matemáticos.
Antes de escribir un programa de ordenador, hay que tener muy claro
el algoritmo, es decir, cómo se va a resolver el problema considerado.
Es importante desarrollar buenos algoritmos (correctos y eficientes).
Una vez que el algoritmo está desarrollado, el problema se puede
resolver incluso sin entenderlo.
5. Definición de
Algoritmo
La palabra algoritmo se deriva de la
traducción al latín de la palabra árabe
alkhowarizmi, nombre de un
matemático y astrónomo árabe que
escribió un tratado sobre manipulación
de números y ecuaciones en el siglo IX.
Un algoritmo es una serie de
pasos organizados que describe el
proceso que se debe seguir, para dar
solución a un problema especifico.
Tipos de Algoritmos
Cualitativos: Son aquellos en los que se
describen los pasos utilizando palabras.
Cuantitativos: Son aquellos en los que se
utilizan cálculos numéricos para definir
los pasos del proceso.
6. 1. Definición del
problema
Esta fase está dada por
el enunciado del
problema, el cual
requiere una definición
clara y precisa. Es
importante que se
conozca lo que se
desea que realice la
computadora; mientras
esto no se conozca del
todo no tiene mucho
caso continuar con la
siguiente etapa
2. Análisis del problema
Una vez que se ha
comprendido lo que se desea
de la computadora, es
necesario definir:
•Los datos de entrada.
•Cual es la información que se
desea producir (salida)
•Los métodos y fórmulas que
se necesitan para procesar los
datos.
Una recomendación muy
practica es el que nos
pongamos en el lugar de la
computadora y analicemos
que es lo que necesitamos que
nos ordenen y en que
secuencia para producir los
resultados esperados
Para la resolución de un algoritmoPara la resolución de un algoritmo
debemos seguir los siguientes pasos:debemos seguir los siguientes pasos:
7. 3. Diseño del
Algoritmo
Las características de un
buen algoritmo son:
Debe tener un punto
particular de inicio.
Debe ser definido, no
debe permitir dobles
interpretaciones.
Debe ser general, es
decir, soportar la
mayoría de las variantes
que se puedan presentar
en la definición del
problema.
Debe ser finito en
tamaño y tiempo de
ejecución.
4. Codificación
La codificación es la
operación de escribir la
solución del problema
(de acuerdo a la lógica
del diagrama de flujo o
pseudocódigo), en una
serie de instrucciones
detalladas, en un
código reconocible por
la computadora, la
serie de instrucciones
detalladas se le conoce
como código fuente, el
cual se escribe en un
lenguaje de
programación o
lenguaje de alto nivel.
Pasos para la resolución de un algoritmo :Pasos para la resolución de un algoritmo :
8. 5. Prueba y Depuración
Los errores humanos dentro de
la programación de
computadoras son muchos y
aumentan considerablemente
con la complejidad del
problema. El proceso de
identificar y eliminar errores,
para dar paso a una solución sin
errores se le llama depuración.
La depuración o prueba resulta
una tarea tan creativa como el
mismo desarrollo de la solución,
por ello se debe considerar con
el mismo interés y entusiasmo.
Resulta conveniente observar
los siguientes principios al
realizar una depuración, ya que
de este trabajo depende el éxito
de nuestra solución
6. Documentación
Es la guía o
comunicación escrita
es sus variadas
formas, ya sea en
enunciados,
procedimientos,
dibujos o diagramas.
A menudo un programa
escrito por una
persona, es usado por
otra. Por ello la
documentación sirve
para ayudar a
comprender o usar un
programa o para
facilitar futuras
modificaciones
(mantenimiento).
Pasos para la resolución de un algoritmo :Pasos para la resolución de un algoritmo :
10. Haga NRO =0
SUMAR
haga NRO = resultado de NRO +1
imprima contenido de NRO
si NRO = 5
cierto pare
falso vaya a SUMAR
Fin del programa
SIMBOLICA: SEUDOCODIGO
Programa para imprimir números del 1 al 5
11. Haga NRO = NRO+1
PARE
INICIO
Haga NRO =0
Imprima NRO
NRO = 5
NO
SI
GRAFICA:
DIAGRAMA
DE FLUJO
Programa para
imprimir números
del 1 al 5
12. 1. Precisión
El algoritmo debe indicar el
orden exacto de ejecución de
cada tarea
CARACTERISTICAS DE UN
ALGORITMO
2. Definitud o determinismo
Si se sigue el algoritmo dos o más veces con
los mismos datos de entrada, se deben
obtener los mismos datos de salida
3. Finitud
El algoritmo debe terminar en algún momento y
debe usar una cantidad de recursos finita
Dada una cantidad de datos de entrada de un algoritmo, se dice que la
cantidad de un recurso usada por dicho algoritmo para su ejecución
determina la complejidad del algoritmo respecto a tal recurso. Cuando se
implementa un algoritmo en un computador digital, los recursos con los
que se cuenta son tiempo de proceso y memoria. Por lo tanto, a un
algoritmo implementado en un computador digital se le pueden calcular
sus complejidades temporal y espacial
13. 1. Datos
Lo que el algoritmo recibe, procesa
y entrega como resultado
ESTRUCTURA BASICA DE UN
ALGORITMO
2. Instrucciones
Las acciones o procesos que el algoritmo
realiza sobre los datos
3. Estructuras de Control
Las que determinan el orden en que se
ejecutarán las instrucciones del algoritmo