la unidad de s sesion edussssssssssssssscacio fisca
Tarea programacion 1
1. SOLUCIONAR PROBLEMAS POR MEDIO DE
ALGORITMOS.
Hay muchas estrategias para poder solucionar
problemas, esta guía es principalmente para emplear
dos estrategias: HEURESTICA Y ALGORITMICA.
Según Pólya (1957) cuando se resuelven problemas
Intervienen 4 operaciones mentales:
Entender el problema
Trazar un plan
Ejecutar el plan (Resolver)
Revisar
2. 1. Comprender el problema.
Leer el problema varias veces
Establecer los datos del problema
Aclarar lo que se va a resolver
Precisar el resultado que se desea lograr
Determinar la incógnita del problema
Organizar la información
Agrupar los datos en categorías
Trazar una figura o un diagrama
2. Hacer el plan
Escoger y difundir las operaciones a
ejecutar
Eliminar los datos inútiles
Descomponer el problema en otros mas
pequeños.
3. Ejecutar el plan
Ejecutar en detalle cada operación
Simplificar antes de calcular
Realizar un dibujo o un diagrama
4. Analizar la información
Dar una respuesta completa
Hallar el mismo resultado de otra manera
Verificar por apreciación que la respuesta
es adecuada
3. EJEMPLO:
En un juego el ganador obtiene una ficha roja; el
segundo, una ficha azul; y el tercero, una amarilla.
Al final de varias rondas, el puntaje se calcula de la
siguiente manera: Al cubo de la cantidad de fichas rojas
se adiciona al doble de las fichas azules y se descuenta
el cuadrado de la ficha amarillas.
Si Andrés llego 3 veces en primer lugar, 4 veces de
ultimo y 6 veces de intermedio ¿Qué puntaje obtuvo?
COMPRENDE:
Leer detenidamente el problema
¿Cuántos colores de fichas se reparten?
¿Cuántas fichas rojas, azules y amarillas obtuvo
Andrés?
¿Qué pregunta el problema?
PLANEA:
Para hallar el puntaje que tiene Andrés por sus
llegadas de primero, calcular el cubo de la
cantidad de fichas rojas.
Para hallar el puntaje por sus llegadas en
segundo lugar, calcular el doble de la cantidad
de fichas azules.
4. Para hallar el puntaje que pierde por sus
llegadas en ultimo lugar, calcular el cuadrado
de la cantidad de fichas amarillas.
Para hallar el puntaje total calcular la suma de
los puntajes por las fichas rojas y azules
restarle los puntos de las fichas amarillas.
RESUELVE:
Por tres fichas rojas: 33
= 27
Por seis fichas azules: 6 x 2 = 12 puntos
Por cuatro fichas amarillas: 42 =
16 puntos
Para obtener el lenguaje final de Andrés sumar los
puntos obtenidos con las fichas rojas y azules (27
+ 12 = 39 puntos) y de este resultado restar los
puntos representados por las fichas amarillas. (39-
16 = 23 puntos)
REVISA:
El puntaje que obtuvo Andrés fue de 23 puntos.
Verificar las operaciones y comparar los cálculos
con la solución estimada.
El anterior es un problema típico en clase de
matemáticas.
Es muy importante que los estudiantes reflexionen
sobre las actividades que realizan para solucionarlo
5. (metacognición) y las agrupen de acuerdo a las etapas
que contenga la estrategia de solución empleada.
Numerosos autores de libros sobre programación,
plantean cuatro frases para elaborar un procedimiento
que realice una tarea específica.
Estas frases concuerdan con las operaciones mentales
escritas por Pólya para resolver problemas:
Analizar el problema (entender el problema)
Diseñar un algoritmo (trazar un plan)
Traducir el algoritmo a un lenguaje de
programación (ejecutar el plan)
Depurar el programa (revisar)
FRASES PARA ELABORAR UN PROGRAMA DE
COMPUTADOR:
6. ALGORITMO:
Es un conjunto de pasos sucesivos y organizados en
secuencia lógica.
EJEMPLO:
Diseñar un algoritmo (peuseudocodigo y diagrama de
flujo) para hallar el área de un triangulo cuya base mide
3 cm la altura 4 cm y la hipotenusa 5 cm.
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 tipos de triangulo. La
incógnita es el área y todos los valores son
constantes. El valor de la hipotenusa se puede
omitir. El estudiante debe preguntarse si sus
conocimientos actuales de matemáticas les
permiten resolver este problema; de no ser así,
debe plantear una estrategia para obtener los
conocimientos requeridos.
7. Análisis del problema:
Determinar las restricciones:
Utilizar las medidas diarias.
Procesos necesarios:
Guardar en dos variables (BASE Y ALTURA) los
valores de bases y altura;guardar en una constante
(DIV) el divisor 2; aplicar la formula BASE*
ALTURA /DIV y guardar el resultado variable
AREA* comunicar el resultado (AREA)
ALGORITMO EN PSEUCODIGO:
1)Inicio
2)Asignar el numero 2 a la constante “div”
3)Asignar el numero 3 a la constante “base”
4)Asignar el numero 4 a la constante “altura”
5)Guardar en la variable “área” el resultado de
base*altura/div
6)Imprimir el valor de la variable “AREA”
7)Final
8. ALGORITMO DE DIAGRAMA DE FLUJO
Diagrama de flujo para hallar el área de un triángulo
rectángulo.
SEGUNDA FASE DEL CICLO DE PROGRAMACION
9. EJEMPLO:
1)Consideremos el algoritmo para hallar el numero
mayor de dos números enteros positivos dados
2)Obsérvese que no se especifica cuales son los dos
números, pero si se estable claramente una
restricción:
Debe ser enteros y positivos
ALGORITMO EN PSEUCODIGO:
1. Inicio
2. Leer los dos números (“a” y “b”). Avanzar al paso 3.
3. Comparar “a” y “b” para determinar cuál es mayor.
Avanzar al paso 4.
4. Si “a” y “b” son iguales, entonces ambos son el
resultado esperado y terminar el algoritmo.
5. Si “a” es menor que “b” , se deben intercambiar sus
valores.
10. EJEMPLO:
Un procedimiento que realizamos varias veces al
día. Consiste en lavarse los dientes.
Veamos la forma de expresar este procedimiento
como un algoritmo:
EJEMPLO:
El ejemplo de cambiar una bombilla fundida es uno
de los mas utilizados por sus sencilleces para
mostrar los pasos de un algoritmo.
11. EN TÉRMINOS GENERALES UN ALGORITMO DEBE
SER:
Realizable: él proceso del algoritmo debe de
terminar después de una cantidad finita de pasos.
Se dice que un algoritmo es inaplicable cuando se
ejecuta con un conjunto de datos iniciales y el
proceso resulta finito o durante la ejecución se
encuentra con un obstáculo insuperable sin arrojar
un resultado.
12. COMPRENSIBLE:
Debe ser claro lo que hace, de forma de quien los
ejecute los pasos (ser humano o máquina) sepa qué,
cómo y cuándo hacerlo.
Debe existir un procedimiento que determine el
proceso de ejecución.
Preciso:
El orden de ejecución de las instrucciones debe estar
perfectamente indicado.
Cuando se ejecuta varias veces, con los mismos datos
iniciales, el resultado debe ser el mismo siempre.
La precisión implica determinismo.
REPRESENTACIÓN DE ALGORITMOS:
Los algoritmos se pueden expresar de muchas
maneras, pero en esta guía se tratarán solo dos formas:
pseudocódigo y diagrama de flujo.
Pseudocódigo la secuencia de instrucciones se
representa por medio de frases o proporciones,
mientras que un diagrama de flujo se representa por
medio de gráficos.
13.
14. EL PEUSUCODIGO:
Esta compuesto por proposiciones informales en
español que permiten expresar detalladamente las
instrucciones, que llevan desde un estado inicial
(problema) hasta un resultado deseado (solución)
Por lo regular, los algoritmos se escriben por
refinamiento: se escribe en primera versión que luego
se descompone en varios sus problemas (el numero
depende de la complejidad del problema)
independientes entre sí.
ACTIVIDAD:
Basándose en la última actividad planteada en la
anterioridad, elaborar un algoritmo en pseudocodigo
para cada uno de los siguientes problemas:
Hallar un perímetro de un cuadrado cuyo lado
mide 5 cm.
Hallar el área de un cuadrado cuyo lado mide 5
cm
Hallar unos de los lados del rectángulo cuya área
es de 15 cm y uno de sus ángulos mide 3 cm.
Hallar el área y el perímetro de un circulo cuyo
radio mide 2 cm.
Hallar el área de un Pentágono regular de 6 cm de
lado y con 4 cm de apotema.
15. SIMBOLOGÍA DE LOS DIAGRAMAS DE FLUJO:
La estandarización de los símbolos para la elaboración
de diagramas de flujo tardo varios años.
Con el fin de evitar la utilización de símbolos diferentes
para representar procesos iguales.
16.
17. El diagrama de flujo es una herramienta grafica valiosa
para la representación esquemática de la secuencia de
instrucciones de un algoritmo o los de un proceso.