You are on page 1of 40

Centro de Bachillerato Tecnolgico industrial y de servicios N 3

Aplic. Los pric. De Prog. En la Resolucin de Problamas.


Alumna: Leilani Cecilia Snches Mondragn
Profesor: Lenardo Gomes Guillermo Especialidad: Infrmatica Turno: Vespertino Ciclo escolar: 2011/ 2012

12

Indice Solucin de problema .. 2 Metodos o estrategias de tipo general. 2 Algoritmo Operaciones mentales utilizadas como estrategias para solucionar problemas ( segn POLYA) 5 Interpretacin dinmica y cclica de las etapas plateadas por POLYA (1959) PARA RESOLVER UN PROBLEMA . 6 Actividad para el alumno .. Anlisis del Probelma .. Elaboracin de un software de Aplicacin Analisis del problema Para hacer un algoritmo .. Diagrama de flujo . Diagrama de flujo ( Simbologa) Tipos de diagramas

Solucin de problemas
Problema es: a) Planteamiento de una situacin cuya respuesta desconocida debe obtenerse a travs de mtodos cientficos. b) Es la situacin en la cual se trata de alcanzar una meta y para lograrlo se debe hallar unos medios y unas estrategias. Mtodos o estrategias de tipo general

1.-Ensayo y error: Consiste en actuar hasta que algo funcione. Puede tomar mucho tiempo y no es seguro que se llegue a una solucin. Es una estrategia apropiada cuando las soluciones posibles son pocas y se pueden probar todas, empezando por la que ofrece mayor probabilidad de resolver el problema. 2.-Iluminacion: Implica la sbita conciencia de una solucin que sea viable. Es muy utilizado en el modelo de cuatro pasos Wallas (1921): Preparacin, incubacin, iluminacin y verificacin. 3.-Euristica: Se basa en la utilizacin de reglas empricas para llegar a una solucin. El mtodo es conocido como IDEAL y consta de 5 pasos: segn Bran Ford Stein (1984). a) Identificar el problema b) Definir y presentar el problema c) Explorar las estrategias viables d) Avanzar en las estrategias e) Lograr la solucin y volver para evaluar los efectos de las actividades. Este mtodo se aproxima mucho al ciclo utilizado para programar computadores. 4.-Algoritmos: Consiste en aplicar adecuadamente una serie de pasos detallados lgicos y ordenados que aseguran una solucin correcta. Por lo general, cada algoritmo es especfico de un dominio del conocimiento. La programacin de computadores se apoya en este mtodo. 5.-El modelo de procesamiento de informacin: Este modelo se basa en plantear barios momentos para un problema (estado inicial, estado final y vas de solucin).las posibles soluciones avanzan por subtemas y requieren que se realicen operaciones en cada uno de ellos.

ACTIVIDAD:

*Realiza un algoritmo sobre la preparacin de ARROZ CON LECHE

a) Arroz con leche b) Proceso pasos a seguir para elaborar un rico y delicioso arroz con leche de acuerdo a la recta dela abuela.

c) 1.-Hervir arroz en agua 2.-Agregar canela 3.-Licuar leche con lechera y vainilla 4.-Agregar la leche al arroz cocido 5.-Agregar azcar 6.-Dejar hervir 7.-Enfriar 8.-Servir 9.- Agregar pasas y canela en polvo

6.-Analisis de medios y fines: Se funda en la comparacin del estado inicial con la meta que se pretende alcanzar para identificar las diferencias. Luego se establecen submetas y se aplican las operaciones necesarias para alcanzar cada submeta hasta

alcanzar la meta global. Con este mtodo se puede proceder en retrospectiva (desde la meta hacia el estado inicial) o en prospectiva. Retrospectiva ESTADO INICIAL Prospectiva 7.-Rasonamiento analgico: Se apoya en el establecimiento de una analoga entre una situacin que resulte familiar y la situacin problema. Requiere conocimientos suficientes de ambas situaciones. 8.-lluvia de ideas: Consiste en formular situaciones viables a un problema. El modelo propuesto por Mayer plantea: definir el problema; generar muchas soluciones sin evaluarlas; decidir los criterios para estimar las soluciones generadas; y emplear esos criterios para seleccionar la mejor solucin. En este caso se requiere que los estudiantes no emitan juicios con respecto a las posibles soluciones hasta que terminen de formularlas. 9.-Sistema de produccin: Se basa en la aplicacin de una red de secuencias de condicin y accin. 10.-Pensamiento lateral: Se apoya en el pensamiento creativo, el cual difiere completamente del pensamiento lineal (lgico): el pensamiento lateral requiere que se exploren y consideren la mayor cantidad de posibles alternativas para solucionar un problema. Su importancia radica en permitir que el estudiante explore (escuche y acepte puntos de vista diferentes, busque alternativas); avive (promueva el uso de la fantasa y humor); libere (use la discontinuidad y escape de ideas prestablecidas);y contrarreste la rigidez(vea las cosas desde diferentes ngulos y evite dogmatismo ). Este mtodo es adecuado cuando el problema que se desea resolver no requiere informacin adicional, si no un reordenamiento de la informacin disponible. META TOTAL

Operaciones mentales utilizadas como estrategias para solucionar problemas (Segn Polya -1952) 1.-Entender el problema 2.-Trazar un plan 3.-Ejecutar el plan (resolver el problema)

4.-Revisar Interpretacin dinmica y cclica de las etapas planteadas por Polya (1957) para resolver un problema

Entender el problema

Revisar

Trazar un plan

Ejecutar el plan

Qu debo hacer? 1.- Entender el problema a) Leer el problema carias veces b) Establecer los datos del problema c) Aclarar lo que se va a resolver (Cul es la pregunta?) d) Precisar el resultado que se desea lograr e) Determinar la incgnita de problema f) Organizar la informacin g) Trazar una figura o diagrama. 2.- Hacer un plan a) Escoger y decidir las operaciones reglas o estrategias para efectuar b) Eliminar los datos intiles c) Descomponer el problema en otros mas pequeos 3.- Ejecutar el plan a) Ejecutar en detalle cada operacin, regla o estrategia. b) Simplificar antes de calcular c) Realizar un dibujo o diagrama.

4.- Analizar la situacin (revisar) a) Dar una respuesta completa b) Hallar el mismo resultado de otra manera c) Verificar por apreciacin que la respuesta es adecuada EJEMPLO: En un juego, el ganador obtiene una ficha roja; El segundo, una ficha azul; 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 el doble de fichas azules y se descuenta el cuadrado de las fichas amarillas. Si Andrs llego tres veces en primer lugar, cuatro veces de ultimo y seis veces de intermedio. Qu puntaje obtuvo? RESPUESTA: 1.- Comprender el problema a) Leer detenidamente el problema b) Cuantos colores de fichas se reparten c) Cuantas fichas rojas, azules y amarillas obtuvo Andrs d) Que preguntan en el problema 2.- Hacer el plan a) Para hallar el puntaje que obtiene Andrs por sus llegadas en primero calcular el cubo de la cantidad de fichas rojas. b) Para hallar el puntaje por sus llagadas en segundo lugar, calcular el doble del nmero de cantidad de las fichas azules. c) Para hallar el puntaje que pierde por sus llegadas en ltimo lugar, calcular el cuadrado de la cantidad de fichas amarillas. d) Para hallar el puntaje total calcular la suma de los puntajes por las fichas azules y rojas, restarles los puntos de las fichas amarillas. 3.-Ejecutar el plan (resolver) a) Po tres fichas rojas: 3 al cubo = 27 puntos b) Por seis fichas azules: 2 x 6 = 12 puntos c) Por cuatro fichas amarillas: 4 al cuadrado = 16 puntos

d) Para obtener el puntaje de Andrs, sumar los puntos obtenidos con las fichas rojas y azules: (27 + 12 = 39 puntos) y restarle los puntos de fichas amarillas 39 16 = 23 puntos. 4.-Analisar la solucin (revisar) El puntaje que obtuvo Andrs es 23 puntos.

Actividad para el alumno Fecha de entrega: 22 de febrero 2012 Problema: En la academia de las ciencias sociales hay dos grupos de materias: Geografa, con 124; Historia con 220; y Educacin Ambiental, con 185. Si hay 25 alumnos que estudian geografa y educacin ambiental, 37 que estudian educacin ambiental e historia, ninguno toma las tres materias Cuntos alumnos tiene la academia?

El estudiante debe tener en cuenta y anotar las actividades que realiza para resolver este problema y agruparlos en cada una de las cuatro etapas propuestas por Polya (comprender, planear, resolver y revisar).para resolver este problema los estudiantes deben tener conocimientos sobre conjuntos (representacin, clasificacin e interseccin). Es buena idea que construyan una tabla para organizar la informacin y un diagrama de Venn para representar los datos. .

Anlisis del problema Numerosos autores de libros sobre programacin plantean cuatro fases para elaborara un procedimiento que realice una tarea especfica. Estas fases concuerdan con las operaciones mentales descritas por Polya para resolver problemas. 1.- Analizar el problema (entender el problema). 2.- Disear un algoritmo pseudocdigo diagrama de flujo- (trazar un plan). 3.- Traducir el algoritmo a un lenguaje de programacin (ejecutar el plan). 4.- Depurar el programa- Compilar el cdigo fuente a un programa de aplicacin(revisar).

Fases para elaborar un programa de computador

Anlisis del problema

Definir el problema

Disear un algoritmo

Traducir el algoritmo

Anlisis del problema Los programas de computador tienen como finalidad resolver problemas especficos (tareas) y el primer paso consiste en definir con precisin el problema hasta lograr la mejor comprensin posible. Una forma de realizar esta actividad se baja en formular claramente el problema, especificar los resultados que se desea obtener, identificar la informacin disponible (datos), determinar las restricciones y definir los procesos necesarios para convertir los datos disponibles (materia prima) en la informacin requerida (resultados).

Fases de anlisis de un problema

Formular el problema Procesos necesarios

Resultados Esperados Restricciones

Datos disponibles

1.- Formular el problema: consiste en determinar mediante los medios necesarios (redaccin, diagramas, formatos, tablas, etc.) y comprender exactamente en qu consiste ese problema. 2.- Resultados esperados: En este caso se identifica y determina cual es la meta final que se pretende, o si es necesario las submetas que se requieren para alcanzar el total. 3.- Datos disponibles: Consiste en determinar cul es la informacin disponible la cual se va a realizar como proceso para lograr el resultado que se espera como meta final o subtemas. 4.- determinar las restricciones: las restricciones es aquello que est permitido o prohibido hacer y/o utilizar para llegar a una solucin. 5.- procesos necesarios establecer procesos (operaciones): consiste en determinar los procesos que permitirn llegar a los resultados esperados a partir de los datos disponibles. El estudiante debe preguntarse a) Que procesos necesita? b) Qu formulas debo emplear? c) Cmo afecta las condiciones a los procesos? d) Qu debo hacer? e) Cul es el orden de lo que debo hacer? En la medida posible es aconsejable dividir el problema original entre otros ms pequeos y fciles de solucionar, hasta que los pasos para alcanzarla se pueden determinar con bastante precisin (submdulos). Esto es lo que en programacin se denomina diseo descendiente top-down. Ejemplo 1 a) Formular el problema Elaborar un programa de aplicacin que permita calcular el salario neto de un trabajador en funcin del nmero de horas trabajadas, pago por hora de trabajo y un descuento fijo al sueldo bruto del 20%. Los clculos a efectuar para obtener el salario neto de un trabajo se muestra a continuacin:

Salario bruto = horas trabajadas (pago / hora) Descuento = 0.2 Salario bruto Salario neto Elaboracin de un Software de aplicacin *Anlisis del problema

1) 2) 3) 4) 5)

Formular el problema Resultados esperados Datos disponibles Restricciones Procesos necesarios

*Disear un algoritmo Anlisis del programa Disear un algoritmo Diagrama de flujo a) b) c) d) e) f) Calcular Algoritmo Codificacin a un lenguaje Cumplir con pruebas Set up de instalacin Documento gua Algoritmo: Calcular el sueldo neto de un trabajador 1) Inicio 2) Declaraciones Constantes: valores que hay y siempre tendr valor Impuesto: 0.20 Tipos: Numrico Texto

Carcter Lgico Variables a) horas trabajadas: numrico b) Pago por hora: numrico entero c) Salario: numrico entero d) Salario neto numrico entero e) Descuento: numrico entero sueldo, sueldo bruto, descuentos, pagos por hora = tipo numrico entero decimal 3) 4) 5) 6) Solicitar Cul es tu nombre dime las horas trabajadas pago por hora Calcular a) Sueldo neto = Horas * pago x hrs. b) Descuento = impuesto * salario bruto c) Salario Neto = salario bruto impuesto

7) Imprimir Nombre del trabajador 8) Imprimir horas trabajadas 9) Imprimir pagos por horas

Inicio

Declaraciones

Dame tu nombre

Formulario

FIN

Para el desarrollo de esta aplicacin; proceda a ubicar los siguientes controles en el formulario 2 marcos 6 etiquetas 6 cajas de texto 3 botones de comando

Una vez ubicados los controles, establezca las propiedades segn se indica: Form Nombre Border Style Caption Moveable StartUpPosition Frame 1 Nombre Caption Frame 2 Nombre Caption Label 11 Nombre AutoSize Caption (b) Apellidos Nombres True Apellidos y FraSalida Salida de datos Fralngreso Ingreso de datos Frm Salario Neto 3-Fixed Dialog Calculo del salario neto False 2-CenterScreem

nombres

Label 12 Nombre AutoSize Caption Label 13 Nombre AutoSize Caption Label 14 Nombre AutoSize Caption (b) Salario bruto True Salario bruto/ (b) Pago por hora True Pago por horas/ (b) Horas trabajadas True Horas trabajadas

Label 15 Nombre AutoSize Caption Label 16 Nombre AutoSize Caption Text 1 Nombre Text Text 2 Txt Apellidos Nombres (b)Salario neto True Salarios netos/ (b) Decuento True Descuentos/

Nombre Text Text 3 Nombre Text

Txt Horas trabajadas

Txt Pago por hora

Text 4 Nombre Text Text 5 Nombre Text Txt descuento Txt Salario bruto

Text 6 Nombre Text Command 1 Nombre Caption Cmd Aceptar & Aceptar Txt Salario neto

Command 2 Nombre Caption Cmd limpiar &limpiar

Command 3 Nombre Cmd Salir

Caption

&Salir

Luego de establecer las propiedades para los controles, debe aadir cdigo a la aplicacin, para ello haga doble clic sobre el botn aceptar e ingrese el siguiente cdigo. Prvate sub cmdAceptar_click() Dimhorastrabajadas as integer, pago por hora as doubl Dim Salario bruto As doubl Dim Descuento As doubl Dim salarioneto as doubl Horastrabajadas=Valtxthorastrabajadas Pagoporhora=Valtxtpagoporhora Salario bruto=horastrabajadas*pagoporhora Descuento=0.2*salariobruto Salarioneto=salariobruto-descuento Txtsalariobruto=str(salariobruto) Txtdescuento=str(descuento) Txtsalarioneto=str(salarioneto) End Sub

A continuacin haga doble clic sobre el botn salir y aada el siguiente cdigo: Private Sub CmdSalir_click End

End Sub

Guarde y luego ejecute la aplicacion que acaba de crear. Prube ingresando diferentes valores. Luego, haga doble clic sobre el botn limpiar y aada el siguiente cdigo. Prvate SubCmdlimpiar_click Txtapellidosnombres= Txthorastrabajadas= Txtpagoporhora= Txtsalariobruto= Txdescuento= Txtsalarioneto= Txtapallidoshombres.setfocus End Sub Guarde y ejecute su aplicacin. Cmo deca el ofigo aadido en el botn limpiar a la aplicacin.

Anlisis del problema

1.- Descripcin del problema Elaborar un software de aplicacin que calcule las ventas totales al final del da, as como los impuestos a pagar del 18%

2.- Resultados esperados Software de Apps. Calcular venta del da.

3.- Datos disponibles Impuestos 18% Ventas del da.

4.- Restricciones Impuestos no mayores, ni menor del 18% Solo venta del da

5.- Procesos a aplicar Subtotal= ventas del da Impuesto= subtotal * 0.18 Venta total= subtotal - impuesto ALGORITMO VENTAS DEL DIA. 1.- inicio 2.- Declaraciones Variables:Descuentos, S,E,R,A, Venta del da Venta total numrico Subtotal numrico. Constante Impuesto= 0.18 3.- Pedir: Venta de hamburguesas 7 A 4.- Leer A. 5.- Pedir refrescos 6.- Leer R 7.-Pedir venta de ensalada 8.- Leer E. 9.- Pedir venta de sopa 10.- Leer S. 11.- CALCULAR. A) Subtotal = S+ E+R+A PARA HACER UN ALGORITMO A) Encabezado B) Inicio C) Declaraciones D) Leer, calcular, imprimir.

B) Impuesto= subtotal* Impuesto C) V. total=subtotal- descuento. 12.-Imprimir El subtotal de ventas del da es $ subtotal. 13.- Imprimir el impuesto del 18% es $ descuento 14.- Imprimir venta total del da es $ V. total. 15.- FIN

DIAGRAMA DE FLUJO (SIMBOLOGIA )

SIMBOLO

DESCRIPCION Expreza inicio o fin de programa Expresa operacin algebraicao de asignacin Decisin lgica; expresa condiciones y asociaciones alternativas de una decisin lgica Expresa condicin y acciones alternativas

de una decisin numrica Entrada/salida: Representa cualquier tipo de fuente de entrada y salida. Entrada: lectura de datos por tarjeta perforadas Conectar dentro de una pagina Representa resultado mediante un reporte impreso Conector fuera de pagina Expresa operacin cclica repetitiva Expresa proceso de llamada a una subalterna Representa datos grabados en una cinta magntica Lneas de flujo Disco magntico Limite geogrfico

Proceso definido, es un modo independiente del programa principal que recibe una enterada procedente de dicho programa Comentarios: se utiliza para aadir comentarios clasificadores a otros diagramas de flujo.

EL MENU DE UN RESTAURANTE RAPIDO SE MUESTRA A CONTINUACION: impuestos a pagar ( 18 x 100) La interfaz de entrada y salida deber ser similar a la figura mostrada a continuacin.

Para el diseo del cuadro de men utilizaremos el control MICROSOFT HIERARCHICAL FLEXARIAL.

Para tal fin seleccione el men proyecto y elija la opcin componentes:

A continuacin active la casilla de verificacin 6.0 OLEDB

Microsoft Hierar chical flexaria control

Y haga clic sobre botn aceptar, en seguida este control se anadir al cuadro de herramientas. Para el desarrollo de esta aplicacin, proceda a ubicar los siguientes controles en el formulario: 10 etiquetas 10 cajas de texto 1 control ivishflexarial 3 botones de comando.

En seguida, elabore el diseo de entrada y salida. Para ello proceda a establecer las propiedades segn se indica a continuacin:

FORM 1

Nombre Bader Style Caption Inoveable Satrt UpPosition

Frm Salario Neto 3-Fixed Dialog Restaurante False 2-center Screen

Label 1

Nombre Auto sisze Caption Label 2

Lbl Hamburguesa True Hamburguesa

Nombre Auto size Caption Label 3

Lbl cerveza True Cerveza

Nombre Auto Size Caption Label 4

Lbl gaseosas True gaseosa

Nombre Auto size caption Label 5

Lbl ensalada True ensalada

Nombre Auto size

Lbl salchichas True

Caption Label 6

Salchichas

Nombre Auto size Caption Label 7

Lbl refresco True Refresco

Nombre Auto size Caption Label 8

Lbl sopa True Sopa

Nombre Auto size caption Label 9

Lbl postre True Postre

Nombre caption Label 10

Lbl venta toal Venta total s/

Nombre Caption IMSHFlexGrid 1

Lbl iempuesto Impuestos S/

Nombre Font Font fixed Text 1

Gra. Menu Arial (negrita10) Arail ( negrito 10)

Nombre text Text 2

Txt hamburguesa

Nombre

Txt Hamburguesa

Text Text 3

Nombre Text

Txt gaseosa

Text 4

Nombre Text Text 5

Txt ensalada

Nombre Text Text 6

Txt Refresco

Nombre Text Text 7

Txt refresco

Nombre Text Tex 8

Txt sopa

Nombre Text Text 9

Txt postre

Nombre locked Text Text 10

Txt impuesto True

Nombre

Txt Impuesto

locked Text Comand 1

True

Nombre Caption Comand 2

Cmd Aceptar & Aceptar

Nombre Caption

Cmd Limpiar & aceptar

Comand 3

Nombre Caption Picture

Cmd Salir & Salir C:/ Archivosdeprograma/Microsoft VisualStudio/Common/Graphics/Icons/Arrows/

Point04.ico Style 1- GRaphical

En primer lugar debemos cargar los datos a la cuadricula. Esto lo vamos a realizar en tiempos de ejecucin al momento de cargarse en memoria el formulario. Para ello, haga doble clic sobre el formulario y aada el siguiente cdigo. Private Sub Form- load ( ) Grd Menu. Cols= 2 Grd Menu. Rows= 9 Grd Menu. Flxea Cols= 0 Grd Menu. Flxea Rows= 1 Grd Menu Menu Text Array ( 0 )= .Menu Grd menu.txtarray1=precio GrdMenu.TextArray20hamburqguesa GrdMenu.TextArray3=2.50 GrdMenu.TextArray4=cerveza

GrdMenu.TextArray5=4.00 GrdMenu.TextArray6=gaseosa GrdMenu.TextArray7=3.00 GrdMenu.TextArray8=ensalada GrdMenu.TextArray9=1.50 GrdMenu.TextArray10=salchichas GrdMenu.TextArray11=2.00 GrdMenu.TextArray12=refresco GrdMenu.TextArray13=1.00 GrdMenu.TextArray14=sopa GrdMenu.TextArray15=1.50 GrdMenu.TextArray16=postre GrdMenu.TextArray17=1.50 End Sub Luego debemos aadir el codigo que se encargar de realizar los clculos. Para al fin haga doble clic sobre el botn aceptar y proceda a ingresar lo siguiente.

Private Sub Cmd Aceptar_click() Dim hamburguesas integer, cerveza as integer Dim gaseosa As integer, ensalada As integer Dim salchichas As integer, refresco as integer Dim sopa As integer, postre As integer Dim ventanal As doubl, impuesto As doubl Hamburguesa=Val (txthamburguesa) Cerveza=val(txtcerveza) Gaseosa= Val(txtgaseosa) Ensalada=Val(txtensalada) Salchichas=val(txtsalchichas) Refresco=val(txtrefresco) Sopa=val(txtsopa) Postre=val(txtpostre) Venta total=hamburguesa*2.5+cerveza*4.0 Gaseosa*3.0+ensalada*1.5+salchichas*2.0

+refresco*1.0+sopa*1.5+postre*1.5 Impuesto=0.18*ventatotal Txtventatotal=str(ventatotal) Txtimpuesto=str(impuesto) End Sub Luego, haga doble clic sobre el botn limpiar y aada el siguiente cdigo. Prvate Sub Cmd limpiar_click() Txthamburguesa= Txtcerveza= Txtgaseosa= Txtsalchichas= Txtensalada= Txtrefresco= Txtpostre= Txtventatotal= Txtimpuesto=

Txthamburguesa.setfocus End Sub A continuacion haga click sobre el boton salir y aada el siguiente codigo: Private Sub cdmSalir_click End End Sub

Tpos de Diagramas Elaborar Sftware de aplicacion que permita saber cual es el numero mayor de 2 nm. dado Secuencial

Dtereminar cul es el nmero mayor de los nmeros de dos A=5 B= 8 De seleccin o decisin

A>B

Si
En nmero es mayor a 8

No

El mayor es 8

Tipo de alumno Interaccin

Saludar 4ro Bwin

No
Adios

Si
Si/salida

You might also like