1. UNIDAD III
METODOLOGÍA DE SOLUCIÓN DE
PROBLEMAS
INTEGRANTES:
Colín Escamilla José Raúl.
Monroy Marín Mariana.
Escobar HernándezVaniaYael.
Flores cortes valentin.
Delgado Gallardo Erika Mariana.
Guerrero Gonzales Héctor. Axel.
Maldonado Luna Natalia
Pérez Jurado Korina.
2. ¿Qué es un problema?
• La determinación del problema es una operación mediante la
cual se especifica claramente y de un modo concreto sobre qué
se va a realizar la investigación.
• Es el punto inicial de la cadena:
Problema- Investigación- Solución; por tanto, determinará
toda la posterior proyección de la investigación que se debe tener
en cuenta.
3. • El problema, responde al ¨ POR QUE¨, de la Investigación
lo podemos definir como la situación propia de un objeto;
es decir, el problema es objetivo en tanto es una situación
presente en el objeto; pero es subjetivo, pues para que
exista el problema, la situación tiene que generar una
necesidad en el sujeto.
4. Elementos del problema
• Son elementos aquellas características de la situación
problemática imprescindibles para el enunciado del
problema, es decir, sumados los elementos del problema
se obtiene como resultado la estructura del problema.
• Para que la lista obtenida de los elementos del problema
adquiera un verdadero significado, el investigador
procurara hallar las relaciones que existen entre los
hechos, por una parte, y entre las explicaciones por la
otra, y tratara de relacionar aquellos con estas.
5. • Después de enumerar los elementos que considere más
importantes y de procurar hallar las relaciones existentes
entre ellos, buscara datos que le permitan confirmar sus
hallazgos, verificar la exactitud de sus conclusiones con
relación a la naturaleza del problema.
6. Ejemplo
• Un buen ejemplo seria al no encender el computador
• Los elementos del problema serian verificar si es que el
computador está conectado a la luz, si es que apreté el
botón correcto, si es que no hay nada fuera de lo común
con el computador o ninguna otra de sus partes
7. • Una vez hecho esto debemos relacionar lo ocurrido con el
problema, al no estar conectada la computadora o al
presionar el botón equivocado es obvio que el
computador no va a funcionar de la manera adecuada.
• Finalmente tendríamos que resolver el problema.
8. Hardware
1. Monitor.
2. Placa principal.
3. Microprocesador (CPU) y zócalo.
4. Un módulo de RAM y tres ranuras.
5. Dos tarjetas de expansión y tres ranuras.
6. Fuente de alimentación.
7. Unidad de disco óptico (CD; DVD; BD).
8. Unidad de disco duro ó unidad de estado
sólido.
9. Teclado.
10. Ratón.
9. SISTEMA OPERATIVO
El sistema operativo permite la "disociación" de programas y
hardware, principalmente para simplificar la gestión de y
proporcionar una interfaz de usuario sencilla con el fin de reducir
la recursos complejidad del equipo.
10. PROGRAMA DE APLICACIÓN
Un programa de aplicación consiste en una clase de software que se
diseña con el fin de que para el usuario sea más sencilla la concreción de
un determinado trabajo. Los procesadores de texto, las hojas de cálculo y
las bases de datos forman parte de los denominados programas de
aplicación.
11. LENGUAJE DE PROGRAMACION
Un lenguaje de programación es un lenguaje formal diseñado para
expresar procesos que pueden ser llevados a cabo por máquinas como las
computadoras.
Pueden usarse para crear programas que controlen el comportamiento
físico y lógico de una máquina, para expresar algoritmos con precisión, o
como modo de comunicación humana.
Está formado por un conjunto de símbolos y reglas sintácticas y
semánticas que definen su estructura y el significado de sus elementos y
expresiones.
12. PLANTEAMIENTO DEL
PROBLEMA
Para la resolución de cualquier conflicto y/o situación , es
importante detenerse un momento a reflexionar, e identificar
cual sería la mejor estrategia para solución del mismo; en esta
parte se tiene que ‘enunciar’ el problema, el cual debe ser claro
y completo, es importante que conozcamos exactamente que se
desea del computador; mientras que esto no se comprenda, no
tiene caso pasar a la siguiente etapa.
13. ANALISIS DEL PROBLEMA
Entendido el problema (el cual, se requiere resuelva el computador), ahora es
importante analizar algunos puntos, como:
• Si existe o no información (datos) inicial.
• Qué resultados se esperan.
• Proceso al que se requiere someter esos datos, con el fin de obtener el resultado
deseado.
• Métodos o fórmulas a utilizar
• Área de trabajo //(no es lo mismo un algoritmo para llegar a la escuela que para ir
al estadio azteca por ejemplo)
14. ELABORACION DE ALGORITMOS
Un algoritmo es una serie de pasos lógicos y ordenados, cuya finalidad es la resolución de
un problema, cuando el algoritmo está escrito en algún lenguaje de programación se le
denomina ‘código’.
Los pasos de un algoritmo muy difícilmente serán iguales a otro, sin embargo todos tienen
un inicio, una declaración u obtención de los datos que van a manipular, algún proceso
(función que manipula los datos), como alguna operación aritmética (esto dependerá de
cada algoritmo en particular) y una salida de datos (dependiendo del algoritmo, se imprime
o se guarda la información).
15. CODIFICACIONY EDICION
Una vez que sea verificado el diagrama mediante las pruebas de escritorio, se codifica el
programa en el lenguaje de computador seleccionado. Esto es, se coloca cada paso del
diagrama en una instrucción o sentencia, utilizando un lenguaje que el computador
reconoce.
(Entre los lenguajes más usados se tienen: Ensamblador, C, C++, Pascal, Java, PHP).
Se podría tomar como analogía el momento en el que alguna persona decide aprender
otro idioma, para lo cual tiene que memorizar, desde el significado de las palabras, signos
de puntuación, así como las reglas gramaticales para poder comprender y hablar bien el
nuevo idioma; pues sucede lo mismo con cualquier lenguaje de programación, ya que es
necesario aprender la sintaxis de estas palabras reservadas para poder traducir nuestro
algoritmo cualquier tipo de lenguaje máquina.
16. COMPILACION
Se utiliza ahora un programa de computador llamado Compilador oTraductor, el cual
analiza todo el programa fuente y detecta errores de sintaxis ocasionados por fallas en la
codificación. Sin embargo las fallas de lógica que pueda tener nuestro programa no son
detectadas por el compilador. Cuando no hay errores graves en la compilación, el
compilador traduce cada instrucción del programa fuente a instrucciones propias de la
máquina (Lenguaje de Máquina), creando el Programa.
Como resultado de la corrida del compilador, se pueden obtener varios listados:
*Listado del programa fuente
*Listado de los errores detectados
*Listado de campos utilizados, etc.
Los errores se deben corregir modificando el programa fuente. Este paso de la
compilación se repite hasta eliminar todos los errores y obtener el programa ejecutable.
18. En informática, ejecutar es la acción de iniciar la
carga de un programa o de cualquier archivo
ejecutable. En otras palabras, la ejecución es el
proceso mediante el cual una computadora lleva a
cabo las instrucciones de un programa informático.
19. La depuración de un programa es el
proceso de ejecución del programa con
una amplia variedad de datos de
entrada, llamados datos de test o
prueba, que determinarán si el
programa tiene o no errores.
20. Errores de compilación: Se producen
normalmente por un uso incorrecto de las
reglas del lenguaje de programación y
suelen ser errores de sintaxis. Si existe
un error de sintaxis, la computadora no
puede comprender la instrucción, no se
obtendrá el programa objeto y el
compilador imprimirá una lista de todos
los errores encontrados durante la
compilación.
21. Errores de ejecución: Estos
errores se producen por
instrucciones que la computadora
puede comprender pero no
ejecutar. Ejemplos típicos son:
división entre cero y raíces
cuadradas de números negativos.
En estos casos se detiene la
ejecución del programa y se
imprime un mensaje de error.
22. Errores lógicos: Se producen en la lógica
del programa y la fuente del error suele ser
el diseño del algoritmo. Estos errores son
los más difíciles de detectar, ya que el
programa puede funcionar y no producir
errores de compilación ni de ejecución, y
sólo puede advertirse el error por la
obtención de resultados incorrectos. En
este caso se debe volver a la fase de
diseño del algoritmo, modificar el
algoritmo, cambiar el programa fuente y
compilar y ejecutar una vez más.
23. •
La documentación de un problema
consta de las descripciones de los
pasos a dar en el proceso de
resolución de dicho problema. La
importancia de la documentación
debe ser destacada por su decisiva
influencia en el producto final.
Programas deficientemente
documentados son difíciles de leer,
más difíciles de depurar y casi
imposibles de mantener y modificar.
•
La documentación de un programa
puede ser interna y externa.
• *La documentación interna es la
contenida en líneas de comentarios.
• *La documentación externa incluye
análisis, diagramas de flujo y/o
pseudocódigos, manuales de usuario
con instrucciones para ejecutar
el programa y para interpretar los
resultados.
DOCUMENTACIÓN
24. MANTENIMIENTO
Son los cambios que se realizan
cuando se desea corregir posibles
errores futuros o bien cambiar el
programa, se denominan
mantenimiento del programa.
25. (=)
● Una asignación es el modo de darle valores a una variable
● Su sintaxis es variable ← valor
● La flecha se puede sustituir por = (BASIC,FORTRAN,O PASCAL)
Ejemplo:
A ← 5
Significa que la variable A se le ha asignado el valor 5
26. Existen ciertos tipos de operaciones de asignación como los siguientes:
●Asignación aritmética
●asignación lógica
●Asignación de caracteres
27.
28. ● Su función es realizar operaciones aritméticas.
● Sus variables y constantes son numéricas.
● Estos operadores constan de dos operandos:
-int (maneja números enteros)
-float (números decimales)
● Son de dos tipos:
-Unarios (que aceptan un solo operando)
-Binarios (que aceptan dos).
29. Operador Nombre Ejemplo Descripción
+ Suma 5 + 6 Suma dos números
- Substracción 7 - 9 Resta dos números
* Multiplicación 6 * 3 Multiplica dos números
/ División 4 / 8 Divide dos números
% Módulo: el resto después de la
división
7 % 2 Devuelve el resto de dividir ambos números, en este
ejemplo el resultado es 1
++ Incremento. a++ Suma 1 al contenido de una variable.
-- Decremento. a-- Resta 1 al contenido de una variable.
- Invierte el signo de un
operando.
-a Invierte el signo de un operando.
30. ● Los operadores relacionales son símbolos que se utilizan
para comparar dos valores de tipo numérico o de
carácter. Si el resultado de la comparación es correcto la
expresión considerada es verdadera, en caso contrario es
falsa.
● Expresan condiciones de algoritmos.
● Su operador de comparación es una igualdad (==)
31. Operador Nombre ejemplo significado
< menor que a<b a es menor que b
> mayor que a>b a es mayor que b
== igual a a==b a es igual a b
!= no igual a a!=b a no es igual a b
<= menor que o igual a a<=5 a es menor que o igual a b
>= mayor que o igual a a>=b a es menor que o igual a b
32. ● Su valor siempre es verdadero o falso
● && AND (el resultado es verdadero si ambas expresiones
son verdaderas)
● || OR (el resultado es verdadero si alguna expresión es
verdadera)
● ! NOT (el resultado invierte la condición de la expresión)
34. Las expresiones…
Son el método fundamental que tiene el programador de expresar
computaciones.
Las expresiones están compuestas de operadores, operandos, paréntesis
y llamadas a funciones. Los operadores pueden ser:
Unarios: Cuando tan solo tienen un operando. Son operadores prefijos.
Binarios: 2 Operandos. Son operadores infijos.
Ternarios: 3 operandos.
35. ORDEN DE LA EVALUACIÓN DE
LOS OPERADORES.
• El orden en que se evalúan los operandos viene dado por
unas reglas:
• Reglas de procedencia.
• Reglas de asociatividad.
• Uso de paréntesis.
36. EVALUACIÓN DE EXPRESIONES
• Hay tres reglas de prioridad a seguir para evaluar una
expresión:
• Primero, los paréntesis (si tiene).
• Después, seguir el orden de prioridad de operadores.
• Por último, si aparecen dos o más operadores iguales, se
evalúan de izquierda a derecha.
37. ¿QUÉ HACEN LOS LENGUAJES DE
PROGRAMACIÓN AL RESPECTO?
• C permite evaluación de circuito corto con los operadores
booleanos.
• PASCAL no permite evaluación de circuito corto. No se pueden
usar sentencias del siguiente tipo:
• A:array[1..10] of integer;
• If (i<=10) and (a[i]>0) then
• Porque se accede a una posición no válida de un array.
• ADA: “and”, “or” no son operaciones de circuito corto y “or them” y
“and them” si son operaciones de circuito corto.
• If (i<=10) and them (a[i]>0) them
• Tabla de evaluación de C++
38.
39. Técnicas de desarrollo de algoritmos.
Diseño descendente.
• Diseño descendente, top-down, que consiste en dividir el problema en subproblemas
más pequeños, que se pueden tratar de forma separada.
• En Fortran, hay dos tipos de procedimientos externos:
• • Funciones
• • Subrutinas
• Su ejecución se controla desde alguna otra unidad de programa (que puede ser el
programa principal u otro procedimiento externo).
• Ventajas del diseño descendente (top-down)
• • Es mucho más fácil encontrar errores en el código, sobre todo en programas largos.
• • Evita cambios indeseables en las variables del programa. Sólo algunas de ellas se
transfieren entre las diferentes unidades de programa, aquellas variables que son
necesarias para realizar los cálculos previstos.
• • Las demás variables sólo son accesibles en la unidad de programa donde se declaran
(variables locales), quedando a salvo de cambios imprevistos para el resto de las
unidades de programa.
40. Funciones
• Intrínsecas:
• Definidas por el programador o subprogramas función.
• Las funciones definidas por el programador se usan igual que las
funciones intrínsecas.
• Su resultado es un valor numérico, lógico, una cadena de
caracteres
• La estructura general de un procedimiento función es:
• • Cabecera de función
• • Sección de especificaciones
• • Sección de ejecución
• •Terminación de la función
41. Diagrama de flujo
• Un diagrama de flujo es una representación gráfica de un
proceso. Cada paso del proceso es representado por un
símbolo diferente que contiene una breve descripción de
la etapa de proceso.
• El diagrama de flujo ofrece una descripción visual de las
actividades implicadas en un proceso mostrando la
relación secuencial ente ellas, facilitando la rápida
comprensión de cada actividad y su relación con las
demás
42. Beneficios del Diagrama de Flujo:
• El diagrama de flujo facilita la identificación de los clientes, es
más sencillo determinar sus necesidades y ajustar el proceso
hacia la satisfacción de sus necesidades y expectativas.
• Estimula el pensamiento analítico en el momento de estudiar
un proceso, haciendo más factible generar alternativas útiles.
• Proporciona un método de comunicación más eficaz, al
introducir un lenguaje común, si bien es cierto que para ello se
hace preciso la capacitación de aquellas personas que entrarán
en contacto con la diagramación.
43.
44. Refinación de Solución Algoritmos
• Se pule el resultado final:
• Se intenta hacer mas didáctico y rápido el algoritmo.
• Se mejora la presentación.
45. Esta prueba consiste en dar diferentes datos de entrada al
programa seguir la secuencia indicada hasta obtener los
resultados
*TIPOS DE DATOS
• Numéricos: Enteros y reales.
• Lógicos: Booleano
• Carácter: Cadena, carácter.
*OPERADORES
• -Relacionales
• -Aritméticos
• -Lógicos
PRUEBA DE ESCRITORIO