utpl-lÓgica de la programaciÓn-ii bimestre-(octubre 2012-febrero 2013)
TRANSCRIPT
Lógica de la ProgramaciónLógica de la Programación
TITULACIÓN: Escuela de Ciencias de la Computación
BIMESTRE: Segundo
NOMBRES: René Rolando Elizalde Solano
SECCIÓN 1
Algoritmos orientados a datos y miniespecificaciones
2
Aspectos clave Un algoritmo orientado a datos
especifica las operaciones que se debe realizar con los datos.
Su finalidad es hacer conocer al desarrollador los datos que estarán involucrados.
Un algoritmo orientado a datos puede traducirse a miniespecificación.
3
Ejemplo: Se pregunta la edad de un estudiante (edad,i[1-n])
Aspectos clave (2)
Para poder representar la información a usar en los algoritmos orientados a datos tenemos:(Nombre Variable, SímboloTipo [Dominio])
(edad,i[1-n])
4
Aspectos clave (2)
La asignación de una variable se la realiza de la siguiente manera.
NombreVariable ← Expresión
edad ← 10
Se puede usar lo siguiente: (edad,i[1-n]) ← 10
5
Aspectos clave (3)
La representación simbólica de una petición de datos es la siguiente:
>> NombreVariable
Ejemplo:
>> edad
SE USA PUNTA DE FLECHA DOBLE HACIA LA DERECHA
6
Aspectos clave (3)
La forma en que se presenta simbólicamente la muestra de datos es la siguiente:
<< Expresión
Ejemplo
<< edad
ó
<< “la edad de la persona es” + edad
SE USA PUNTA DE FLECHA DOBLE HACIA LA IZQUIERDA
7
Ejemplo
Se desea construir un programa para calcular el sueldo de una persona en función de las horas trabajadas y el valor de la hora.
8
Algoritmo del análisis
1. Inicio
2. Se pregunta el total de horas trabajadas.
3. Se pregunta el costo por hora.
4. Se calcula el valor a pagar multiplicando las horas trabajadas por el costo hora.
5. Se muestra el valor a pagar.
6. Fin
9
Traducción a orientado a datos
1. Inicio
2. Se pregunta las horas trabajadas(Horas,i[1-n])
3. Se pregunta el costo horas (cHora,i[1-n])
4. Se calcula el total (total, i[1-n]) multiplicando el costo por las horas.
5. Se muestra el total
6. Fin.
10
Traducción a mini especificación
1. Inicio
2. (horas,i[1-n])
3. (cHora,i[1-n])
4. (total,i[1-n])
5. << “Indique el total de horas trabajo”
6. >> horas
7. << “Indique el costo hora”
8. >> cHora
11
Traducción a mini especificación (2)
9. total = horas * cHora
10. << “Debe pagar “ + Total
11. Fin
12
SECCIÓN 2
Estructuras de decisión y control
13
Aspectos clave
Estructuras de decisión: estructura de código en la cual una expresión lógica determina la ejecución por ÚNICA VEZ de un bloque
La clásica de las estructuras de decisión es la condicional ( Simple y Compuesta)
14
Aspectos clave
Condicional SIMPLE
Si ExpresiónLógica Entonces
Ejecutar parte del algoritmo si la Expresión es Verdadera
Fin Si
Si edad >= 18 Entonces
<< “Es mayor de edad”Fin Si
15
Aspectos clave
Condicional Compuesta
Si ExpresiónLógica Entonces
Ejecutar parte del algoritmo si la expresión es Verdadera
De lo Contrario
Ejecutar parte del algoritmo si la expresión es Falsa
Fin Si
16
Aspectos clave
Condicional Compuesta
Si edad >= 18 Entonces
<< “Es mayor de edad”De lo Contrario
<< “Es menor de edad”Fin Si
17
Aspectos clave ContadoresTécnicas de cambio de estado en donde una
variable puede contar las veces en que su estado cambia.
Variable ← Variable + 1
Ejemplo
i ← i + 1
i ← i + 1
i ← i + 1
ÚTIL CUANDO YA QUE PERMITE CONOCER CUANTAS VECES UN PROGRAMA HA PASADO
POR UNA DETERMINADA LÍNEA
18
Aspectos clave Acumuladores• Técnicas de cambio de estado en donde una
variable tiene la posibilidad de acumular un valor al valor que ya posee
Variable ← Variable + Expresión
Ejemplo
i ← i + 10
i ← i + 5
i ← i + 3
ÚTIL CUANDO YA QUE PERMITE REALIZAR SUMATORIAS DE VALORES
19
Aspectos clave
Estructuras de Control
Es la estructura de código que permite que una expresión lógica determine la ejecución reiterada de un bloque de código
20
Aspectos clave
Bucle de comparación al INICIO: Se ejecutará siempre y cuando la expresión lógica sea VERDADERA (True)j ← 1
Mientras j <= 10 Entonces
<< “Al pasar por aquí el valor de i es: ” + j
j ← j + 1Fin Mientras
21
Aspectos clave Estructuras de Control• Bucle de comparación al FINAL: Se
ejecutará hasta que la expresión lógica sea VERDADERA (True)
j ← 1
Inicio
<< “Al pasar por aquí el valor de i es: ” + j
j ← j + 1Hasta que j > 10
22
Aspectos clave (2) Una estructura anidada es aquella que
se encuentra dentro de otra estructura de control.
Las pruebas de escritorio permiten verificar el funcionamiento correcto del algoritmo.
23
SECCIÓN 3
Diagramas de flujo
24
SECCIÓN 3
25
Ayudan a visualizar la lógica del programa.
Facilitan la comunicación con otras personas.
Existen equivalencias entre los símbolos y las operaciones de un algoritmo.
Ejemplo
26
Ejemplo
27
28
Practiquemos con preguntas
Pregunta 1
Las siguientes son sentencias en miniespecificación. ¿Cuál declarción establece una la variable v1 como entera con valores del 1 al 1000, excepto los múltiplos de 5?
a. (v1, i[1-n])
b. (v1, i[1-1000])
c. (v1, i[{1-1000}, !{5,10,15,..}])
d.(v1,b[{1-1000}, !{5,10,15,..}])
29
Pregunta 2
¿Cuántas veces se ejecuta el código dentro del siguiente bucle? Siendo N = 3
Mientras (N < 2) Entonces
<< “Este es un bucle”
Fin mientras
a.2
b.0
c. 1
d. Infinito
30
Pregunta 3
En un bucle de comparación al inicio es posible que:
a.Se ejecutan al menos una vez.
b.No se ejecuten las sentencias nunca.
c. Solo ciertas sentencias se ejecuten.
d. Se ejecuten secuencialmente.
31
Pregunta 4
¿Cuál sentencia se ejecuta si lado vale 2?
Si lado >=1 Entonces
AreaCuadrado = lado^2
De lo contrario
<< “El lado no puede ser menor a uno”
Fin si
32
Pregunta 4
a. << “El lado no puede ser menor a uno”
b. >> “El lado no puede ser menor a uno”
c. AreaCuadrado lado^2
d. Ninguna.
33
Pregunta 5
Siendo x una variable entera ¿Cuál de las siguientes sentencias permite su uso como acumulador?
a. x = x ^ 2
b. x = x *y
c. x = x – y
d. x = x + 3
34
Pregunta 6
¿Qué tipo de sentencia representa el siguiente diagrama?
a. Flujo secuencial
b. Una flujo condicional
c. Un bucle de comp. al inicio.
d. Un bucle de comp. al final.
35
PROGRAMA: Tutoría Lógica de la Programación Titulación: Informática
Fecha: 3 de Enero de 2013
Docente: Ing. René Rolando Elizalde Solano
Hora Inicio: 18:00 Hora Final:19:00
GUIÓN DE PRESENTACIÓN
Puntos de la Presentación
Intervienen Duración Aprox. en minutos
Material de Apoyo
Saludo inicial y presentación de la materia
Ing. René Rolando Elizalde Solano
• 5 Sin material.
-Desarrollo del contenido:- Presentación de temas-Resolución de preguntas
Ing. René Rolando Elizalde Solano
• 45 minutos Diapositivas (cambios cada 5 seg.), Cámara documentos.
- Preguntas- Despedida
Ing. René Rolando Elizalde Solano
•10 minutos Correo, teléfono, ext, horario de tutoría.