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
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
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.
 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
(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:
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.
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
ALGORITMO DE DIAGRAMA DE FLUJO
Diagrama de flujo para hallar el área de un triángulo
rectángulo.
SEGUNDA FASE DEL CICLO DE PROGRAMACION
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.
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.
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.
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.
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.
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.
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.
Tarea programacion 1
Tarea programacion 1
Tarea programacion 1

Tarea programacion 1

  • 1.
    SOLUCIONAR PROBLEMAS PORMEDIO 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 elproblema.  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 juegoel 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 hallarel 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 lasagrupen 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 conjuntode 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: Determinarlas 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 DIAGRAMADE 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 algoritmopara 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 querealizamos 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 GENERALESUN 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 clarolo 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.
  • 14.
    EL PEUSUCODIGO: Esta compuestopor 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 LOSDIAGRAMAS 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.
  • 17.
    El diagrama deflujo es una herramienta grafica valiosa para la representación esquemática de la secuencia de instrucciones de un algoritmo o los de un proceso.