Sesión 06: Introducción a la
Programación (2)
Departamento de Ingeniería Electrónica y de
Telecomunicaciones
Facultad de Ingeniería
2015-1
Presentación del curso
Universidad de Antioquia
Informática I
Repaso
PROGRAMADOR (Ideas)
Lenguaje Humano
(Mi idea es…)
Alto nivel
Lenguaje de
Programación
INICIO
ESCRIBA(“ingrese a”)
LEA(a)
ESCRIBA(“ingrese b”)
LEA(b)
c  a + b
ESCRIBA(“La suma:”,c)
FIN_INICIO
Bajo nivel
Presentación del curso
10001100011
10010101001
00101010001
01111001010
Universidad
de Antioquia
Lenguaje de Máquina
(1000110)
MÁQUINA
Informática I
Repaso
Problema
Metodología
Programa
Presentación del curso
1
• Entender el problema
2
• Diseñar un plan
3
• Implementar el plan
4
• Revisar el plan
Universidad de Antioquia
Informática I
A continuación…
Introducción a los Algoritmos
Estructura de los Algoritmos
Componentes Básicos
Diagrama de Flujo
Presentación del curso
Universidad de Antioquia
Informática I
Algoritmo
• Un algoritmo es un conjunto de instrucciones claras para
solucionar un problema en una cantidad de tiempo finita y
usando una cantidad finita de datos.
• Procesa unas variables de entrada y obtiene unas variables
de salida
Variable
Definiciones
• Es un zona de memoria que almacena un valor y es
referenciada por un identificador (el nombre de la variable)
• Un valor es una secuencia de bits que es interpretada de
acuerdo a su tipo de dato (entero, punto flotante, carácter,
etc). Este valor puede ser variable o constante en la zona
de memoria donde se almacena.
Presentación del curso
Universidad de Antioquia
Informática I
Elementos Principales
El algoritmo provee
la lógica y los datos
o variables de
entrada proveen los
valores.
Variables de
entrada
Presentación del curso
Algoritmo:
Instrucciones
Universidad de Antioquia
Variables de
salida
Informática I
Formas de expresión
Los algoritmos pueden ser expresados de muchas
maneras,
incluyendo
al
lenguaje
natural,
pseudocódigo, diagramas de flujo y lenguajes de
programación entre otros. Las descripciones en lenguaje
natural tienden a ser ambiguas y extensas.
Problema
?????
Presentación del curso
Computador
a… Mata a
Flanders
Universidad de Antioquia
Algoritmo
Informática I
Objetivo de los Algoritmos
El método aplicado para la resolución de problemas
mediante programas.
Problema
Tarea que se desea
resolver.
Presentación del curso
Algoritmo
Descripción ordenada de
la secuencia de pasos
(sin ambigüedades) que
conducen a la solución
de
problema
dado
(Análisis del problema y
desarrollo del algoritmo).
Universidad de Antioquia
Programa
Expresar el algoritmo
como un programa en el
lenguaje
de
programación adecuado.
Ejecución y validación
del
programa
de
computadora.
Informática I
Ejemplo 1
– Encender mi computador e iniciar desde
Linux
Solución
¿Que debo hacer?
1. Revisar la alimentación eléctrica
2. Está conectado el PC?
3.
4.
2.1 No, Conectar el equipo y encender CPU.
2.2 Si, Encender CPU
.
Encender monitor
Aparece el GRUB?
4.1 Si, seleccionar el S.O Linux
4.2 No,
4.2.1 Revisar secuencia de booteo en la BIOS
4.2.2 Todo correcto (rezar y cruzar dedos
para que arranque la PC).
Presentación del curso
Universidad de Antioquia
Informática I
Ejemplo 1 (cont.)
5. Vuelvo a preguntar por paso 4.
6. Carga el GRUB?
7.
6.1. Si, Selecciono LINUX y disfruto.
6.2. No, Revisar, y reinstalar.
Fin
Presentación del curso
Universidad de Antioquia
Informática I
Ejemplo 2
Un estudiante se encuentra en su casa (durmiendo) y debe ir a
la universidad (a tomar la clase de Informatica!!)
¿Que debe hacer el estudiante?
Presentación del curso
Universidad de Antioquia
Informática I
Ejemplo 2 (cont.)
Presentación del curso
Universidad de Antioquia
Informática I
Ejemplo 2 (cont.)
Presentación del curso
Universidad de Antioquia
Informática I
Ejemplo 3
– Soy un conductor de bus y necesito saber cuánto
debo devolver al pasajero en caso de que pague con
cualquier valor. El pasaje cuesta $1800
Caso 1: Paga con 1800
No devuelvo nada
Caso 2: Paga con 2000
Devuelvo 200
Caso 3: Paga con 5000
Devuelvo 3200
Caso 4: Paga con 10000
Devuelta = pago - 1200
Devuelvo 8200
Caso 5: Paga con 20000
Devuelvo 18200
Caso 6: Paga con 50000
Devuelvo 48200
Otros:
Verificar Pago
Presentación del curso
Universidad de Antioquia
Informática I
Ejercicios
Una persona va manejando un Auto y se le chuza una
llanta ¿qué debe hacer esta persona para poder
continuar su viaje?
Se quiere calcular el área de un triangulo Rectángulo para
una base y una altura general. Escriba un procedimiento
para hallar esta área
Presentación del curso
Universidad de Antioquia
Informática I
A continuación…
Introducción a los Algoritmos
Estructura de los Algoritmos
Componentes Básicos
Diagrama de Flujo
Presentación del curso
Universidad de Antioquia
Informática I
Estructura de los Algoritmos
Análisis: Se establece el problema, entendiendo
de manera clara lo que se desea obtener (Paso 1).
Después, se selecciona un modelo matemático y
se explica el algoritmo de manera verbal,
posiblemente con ilustraciones y omitiendo
detalles. Se definen las entradas, salidas y el
proceso a seguir (Paso 2).
Presentación del curso
Universidad de Antioquia
Informática I
Estructura de los Algoritmos
Descripción del algoritmo. Se usa Algoritmos
para describir la secuencia de pasos que
encuentran la solución. Ejemplo: Diagramas de
flujo, Pseudocódigo (Paso 3)
Verificación: Seguimiento paso a paso del
algoritmo para verificar que cumple con lo
deseado (Paso 4).
Presentación del curso
Universidad de Antioquia
Informática I
Estructura de los Algoritmos
Implementación en lenguaje de programación:
Se muestra el algoritmo expresado en un lenguaje
de programación específico o algún objeto capaz
de llevar a cabo instrucciones (Paso 5).
Presentación del curso
Universidad de Antioquia
Informática I
Estructura de los Algoritmos
SALIDA
ENTRADA
INSTRUCCIONES
1
5
• Inicio
2
• Datos de Entrada
3
• Procesamiento de los datos
4
• Datos de Salida
• Fin
Presentación del curso
Universidad de Antioquia
Informática I
A continuación…
Introducción a los Algoritmos
Estructura de los Algoritmos
Componentes Básicos
Diagrama de Flujo
Presentación del curso
Universidad de Antioquia
Informática I
Componentes Básicos
• Variables: Espacios de trabajo reservados para guardar
datos (valores). El valor de una Variable puede cambiar en
algún paso del Algoritmo o permanecer invariable.
– Datos de entrada y de salida
– Variables auxiliares
• Una variable puede representar un número decimal, un
numero entero, un conjunto de números, palabras...
Variable
Presentación del curso
Valor
apellido
López
saldo
20000
tamaño
8.5
Universidad de Antioquia
Informática I
Componentes Básicos
Tipos de datos
simples
• Numéricos (Enteros, reales).
• Lógicos (booleanos).
• Alfanuméricos (Carácter, cadenas).
Alfanuméricos:
Conjunto
finito y ordenado que el
computador reconoce
Enteros: Representan los
números enteros, no poseen
parte decimal, ejemplo: 5, 6,
-15, -100,1000,…
Reales:
Representan
números reales, poseen
parte decimal, ejemplo:
0.08, 3.14, 3.7452, -8.003,
3.0.
Booleanos: Aquellos que
pueden tomar dos posibles
valores; falso (false) o
verdadero (true).
Presentación del curso
Universidad de Antioquia
Informática I
Componentes Básicos
• Constantes: Consisten en datos que, luego
de ser asignados, no cambian en ninguna
instrucción del Algoritmo. Utilizadas por
ejemplo
para
almacenar
constantes
matemáticas (pi).
Constante
Presentación del curso
Valor
PI
3,14
PULGADA
2,54
Universidad de Antioquia
Informática I
Componentes Básicos
• Identificadores: son nombres que se dan
a los elementos utilizados para resolver un
problema y poder diferenciar unos de
otros. Pueden estar formados por una
combinación de letras y números.
Nombre
(identificador)
Presentación del curso
Valor
apellido
López
saldo
20000
Size1
8.5
Size2
10.5
Universidad de Antioquia
Informática I
Componentes Básicos
• Palabras reservadas (primitivas): Todos
los lenguajes de programación definen
unas palabras para nombrar sus
comandos,
instrucciones
y
funciones(Matematicas,…).
• PROCESOS: Se llama procesos a todas
las instrucciones contenidas en un
algoritmo.
Presentación del curso
Universidad de Antioquia
Informática I
Componentes Básicos
• OPERADORES MATEMATICOS: Son símbolos que
sirven para manipular o transformar datos. Aritméticos,
Logicos, relacionales.
Operación
Operador
Ejemplo
Resultado
Potencia
^
2^4
16
Multiplicación
*
2*34
68
División
/
24/3
8
Módulo
%
7%3
1
Suma
+
3+4
7
Resta
-
5-2
3
Raiz quadrada
Asignacion
Presentación del curso
()
=
(16)
X=3
Universidad de Antioquia
4
Informática I
Componentes Básicos
En una instrucción los operadores
ejecutan en un orden Predeterminado.
se
1. Paréntesis (se ejecutan primero los más internos)
2. Signo
3. Potencias y Raíces (potencia y rc)
4. Productos y Divisiones ( *, / y %)
5. Sumas y Restas (+ y -)
6. …
Presentación del curso
Universidad de Antioquia
Informática I
Componentes Básicos
• EXPRESIONES: Para diseñar algoritmos que posteriormente
puedan ser traducidos a un lenguaje de programación, es
fundamental saber manejar muy bien los operadores y el orden en
el que estos se ejecutan. Las fórmulas deben escribirse en una sola
línea para que el computador las evalúe.
NOTACIÓN MATEMATICA
EXPRESIÓN
A=pi*(r^2)
raiz1=a^2+2*a*b+b^2
raiz1=(-b+
Presentación del curso
Universidad de Antioquia
(b^2-4*a*c))/(2*a)
Informática I
A continuación…
Introducción a los Algoritmos
Estructura de los Algoritmos
Componentes Básicos
Diagrama de Flujo
Presentación del curso
Universidad de Antioquia
Informática I
Diagrama de flujo
Esquema de
representación gráfico de
algoritmos.
Usa elementos gráficos
como rectángulos y
rombos.
Se pueden usar
operaciones matemáticas.
Presentación del curso
Universidad de Antioquia
Informática I
Diagrama de flujo
Inicio o fin del programa
Pasos, procesos o líneas de instrucción de programa de
computo
Operaciones de entrada
Toma de decisiones y Ramificación
Líneas de flujo
Pantalla, para mostrar datos
Presentación del curso
Universidad de Antioquia
Informática I
Ejemplo
• Escribir un algoritmo que se llame
triangulo, para hallar el área y perímetro
de un triángulo rectángulo dado su base y
su altura.
Presentación del curso
Universidad de Antioquia
Informática I
Ejemplo
ANÁLISIS DEL PROBLEMA
Formular el problema: Ya se encuentra claramente
planteado.
Resultados esperados: El área de un triángulo rectángulo.
Datos disponibles: Base, Altura, Hipotenusa, tipo de
triángulo. La incógnita es el área. El estudiante debe
preguntarse si sus conocimientos actuales de matemáticas
le permiten resolver este problema; de no ser así, debe
plantear una estrategia para obtener los conocimientos
requeridos.
Restricciones: Datos reales positivos.
Presentación del curso
Universidad de Antioquia
Informática I
Ejemplo
Procesos necesarios:
Pedir los datos y guardarlos en dos variables (base y altura);
Aplicar la fórmula para hallar el área base x altura ÷ 2 y
guardar el resultado en la variable area; desplegar el
resultado (area).
Como es un triangulo rectángulo, podemos obtener la
hipotenusa. Después, aplicar la fórmula para hallar el
perímetro L1 + L2 + L3 y guardar el resultado en la variable
perimetro; desplegar el resultado (perimetro).
Presentación del curso
Universidad de Antioquia
Informática I
Ejercicios
Pseudocódigo y Diagramas de flujo
• Realice el diagrama de flujo de
siguientes problemas.
los
1. Dado el perímetro de una circunferencia halle su radio.
2. Dada el área de un cuadrado muestre la longitud de su
diagonal
3. Dada la distancia de recorrido de un automóvil y el
tiempo que gasto en hacerlo, calcule la velocidad de
éste.
4. ¿Cómo dibujar una parábola en el plano cartesiano entre
[-10, 10]?
Presentación del curso
Universidad de Antioquia
Informática I
Bibliografia
• Joyanes A. Luis. Programacion en c.
Metodologia, algoritmos y estructura de datos.
McGrawHill. 2000
• Oviedo, Efrain. Lógica de Programación.
• www.google.com
Presentación del curso
Universidad de Antioquia
Informática I
Descargar

06_IntroduccionProgramacion(2)