Vous êtes sur la page 1sur 30

RESOLUCIN DE PROBLEMAS

A TRAVS DE LA
COMPUTADORA

PROF. YNGRID MELO


Fases o pasos para resolver un problema
Fases para resolver un problema a travs del computador
Formular el problema

La solucin de un problema debe iniciar por


determinar y comprender exactamente en qu
consiste ese problema.
Para establecer los resultados que se esperan (meta)
es necesario identificar la informacin relevante,
ignorar los detalles sin importancia, entender los
elementos del problema y activar el esquema
correcto que permita comprenderlo en su totalidad
Precisar los resultados esperados

Determinar con claridad cul es el resultado final


(producto) que debe devolver el programa es algo
que ayuda a establecer la meta. Es necesario analizar
qu resultados se solicitan y qu formato deben tener
esos resultados (impresos, en pantalla,
diagramacin, orden, etc). El PROGRAMADOR debe
preguntarse:
Qu informacin me solicitan?
Qu formato debe tener esta informacin?
Identificar datos disponibles

El PROGRAMADOR debe preguntarse:


Qu informacin es importante?
Qu informacin no es relevante?
Cules son los datos de entrada? (conocidos)
Cul es la incgnita?
Qu informacin me falta para resolver el
problema? (datos desconocidos)
Determinar las restricciones

El PROGRAMADOR debe preguntarse:


Qu condiciones me plantea el problema?
Qu est prohibido hacer y/o utilizar?
Qu est permitido hacer y/o utilizar?
Cules datos puedo considerar fijos (constantes)
para simplificar el problema?
Cules datos son variables?
Cules datos debo calcular?
Establecer procesos (operaciones

El PROGRAMADOR debe preguntarse:


Qu procesos necesito?
Qu frmulas debo emplear?
Cmo afectan las condiciones a los procesos?
Qu debo hacer?
Cul es el orden de lo que debo hacer?
EJEMPLO

Disear un algoritmo (seudocdigo y diagrama de


flujo) para hallar el rea de un tringulo rectngulo
cuya Base mide 3 cm y la Altura 4 cm.
ANLISIS DEL PROBLEMA

Formular el problema: Ya se encuentra claramente planteado.


Resultados esperados: El rea de un tringulo rectngulo.
Datos disponibles: Base, Altura, tipo de tringulo. La incgnita
es el rea y todos los valores son constantes. El estudiante debe
preguntarse si sus conocimientos actuales de matemticas le
permiten resolver este problema; de no ser as, debe plantear
una estrategia para obtener los conocimientos requeridos.
Determinar las restricciones: Utilizar las medidas dadas.
Procesos necesarios: Guardar en dos constantes (BASE y
ALTURA) los valores de Base y Altura; aplicar la frmula
BASE*ALTURA/2 y guardar el resultado en la variable AREA;
comunicar el resultado (AREA).
ALGORITMO EN SEUDOCDIGO

INICIO
BASE = 3;
ALTURA = 4;
AREA = BASE*ALTURA/2
MOSTRAR AREA
FIN
ALGORITMO EN DIAGRAMA DE FLUJO
TRADUCIR EL ALGORITMO

#include <stdio.h>
main()
{
int base=3, altura=4;
float area;
area=base*altura/2;
printf(El rea del tringulo es: %f, area);
}
REPRESENTACION DE ALGORITMOS

Los Algoritmos se puede expresar de muchas


maneras,pero en esta unidad se tratarn solo dos
formas: Seudocdigo y Diagrama de Flujo.
En Seudocdigo la secuencia de instrucciones se
representa por medio de frases o proposiciones,
mientras que en un Diagrama de Flujo se
representa por medio de grficos.
ALGUNOS CONCEPTOS ADICIONALES EN LA
CONSTRUCCIN DE ALGORITMOS

Identificadores: son nombres que se dan a los


elementos utilizados para resolver un Problema y
poder diferenciar unos de otros.
Al asignar nombres (identificadores) a variables,
constantes y procedimientos se deben tener en
cuenta algunas reglas:
REGLAS PARA LOS IDENTIFICADORES

Los nombres pueden estar formados por una


combinacin de letras y nmeros (saldoMes, salario,
fecha2, baseTriangulo, etc).
El primer carcter de un nombre debe ser una letra.
La mayora de los lenguajes de programacin
diferencian las maysculas de las minsculas.
Los nombres deben ser nemotcnicos, con solo
leerlos se puede entender lo que contienen. Deben
ser muy descriptivos
No utilizar caracteres reservados (%, +, /, >, etc).
REGLAS PARA LOS IDENTIFICADORES

No utilizar palabras reservadas por los lenguajes de


programacin.
Para cumplir con convenciones ampliamente
utilizadas (Jimnez, 2002), los nombres de
procedimientos, variables y constantes deben
empezar con minscula. Ejemplo, fecha, suma, etc.
Si es un nombre compuesto por varias palabras, cada
una de las palabras (con excepcin de la primera)
deben empezar con mayscula. Ejemplo:
fechaInicial, baseTringulo, etc.
CARACTERSTICAS DE LOS ALGORITMOS

PRECISIN: Indica el orden de realizacin de cada paso


dentro del proceso.

DEFINICION: Indica la exactitud y consistencia de los pasos


descritos en el proceso, si el algoritmo se prueba dos veces, en
estas dos pruebas, se debe obtener el mismo resultado.

FINITUD: Indica el nmero razonable de pasos, los cuales


deben conllevar a la finalizacin del proceso y producir un
resultado en un tiempo finito.

Al disear un algoritmo se debe tener presente las caractersticas


de precisin, definicin y finitud.
Elementos de un Algoritmo

INSTRUCCIN O SENTENCIA: Define una accin o un


mandato que se debe realizar. Una instruccin esta
compuesta por uno o ms comandos (accin), datos,
smbolos, variables o constantes y expresiones.
COMANDOS: Son acciones que debe interpretar y ejecutar el
computador. Cada comando conserva una sintaxis
determinada, es decir la forma de utilizarlo. Los lenguajes
computacionales tienen en su repertorio comandos dirigidos al
procesamiento de archivos y datos, entre ellos: Leer, Calcular,
Asignar, Clasificar, Imprimir.
DATOS: Son smbolos que se convierten en condiciones,
hechos, situaciones o valores. La importancia de los datos
est en su capacidad de asociarse dentro de un contexto
para convertirse en informacin que ofrezca un significado,
conocimiento, ideas o conclusiones.
Elementos de un Algoritmo

VARIABLES Y CONSTANTES: Son espacios de memoria


creados para contener valores que de acuerdo a su naturaleza
deseen mantenerse (Constantes) o que puedan variar
(Variables).
EXPRESIONES: Son combinaciones de constantes,
variables, smbolos de operacin (matemticos, lgicos y
relacionales) y nombres de funciones que se utilizan en el
cuerpo del algoritmo. Las expresiones pueden ser simples o
compuestas.
Elementos de un Algoritmo

Expresiones Aritmticas: Son utilizadas para construir


formulas matemticas. Las operaciones aritmticas son
efectuadas en el siguiente orden:
Parntesis

Menos unario o negacin

Exponenciacin

Multiplicacin, divisin y divisin entera

Suma y resta
Elementos de un Algoritmo

Expresiones Relacionales: Se construyen a partir


de los operadores relacionales (de relacin o
comparacin, = , > , < , >=, <=, <>. Los operadores
relacionales sirven para expresar las condiciones en los
algoritmos.

Expresiones Lgicas: Se utilizan en los programas


cuando se requiere conocer o evaluar si los valores de
variables o constantes determinadas cumplen con
ciertas condiciones.

El resultado de una expresin lgica y relacional es de


tipo lgico.
CONTADORES Y ACUMULADORES

Un contador es una variable cuyo valor se incrementa o


decrementa en una cantidad constante, cada vez que se
produce un determinado suceso, accin o iteracin. Deben ser
inicializados antes del ciclo o proceso, e incrementados o
decrementados dentro del ciclo.

Un acumulador es una variable que como su nombre lo


indica, suma sobre s misma un conjunto de valores, al
finalizar con el ciclo contendr, en una sola variable, la
sumatoria de todos los valores, que cumplen una determinada
condicin.

La diferencia entre un contador y un acumulador es que


mientras el primero va aumentando en una cantidad fija
preestablecida, el acumulador va aumentando en una cantidad
o valor variable.
ESTRUCTURAS BSICAS

Un Algoritmo est compuesto por instrucciones de


diferentes tipos, organizadas secuencialmente, en
forma de estructuras de control. De estas
estructuras, las ms son las siguientes:
Secuencial.
Iterativa (repeticin).
Condicional (decisin, seleccin).
ESTRUCTURAS

La estructura de control secuencial es la ms


sencilla. Tambin se la conoce como estructura
lineal. Se compone de instrucciones que deben
ejecutarse en forma consecutiva, una tras otra,
siguiendo una lnea de flujo.
ESTRUCTURA SECUENCIAL

Una estructura de control


secuencial puede contener
cualquiera de las
siguientes instrucciones:
declaracin variables
asignacin de valores
entrada de datos
procesamiento de datos
(operaciones)
reporte de resultados
ESTRUCTURA CONDICIONAL

La estructura condicional se utiliza para indicarle al


computador que debe evaluar una condicin y, a
partir del resultado, ejecutar el bloque de
instrucciones correspondiente. La forma ms comn
est compuesta por una proposicin (condicin) que
se evala y dos bloques de instrucciones que se
ejecutan, uno cuando la condicin es verdadera
(seleccin simple y doble) y otro cuando sta es falsa
(nicamente en la seleccin doble).
ESTRUCTURA ITERATIVA (REPETICIN)

La estructura iterativa o de
repeticin permite ejecutar
una o varias instrucciones, un
nmero determinado de veces
o, indefinidamente, mientras
se cumpla una condicin.
Esta estructura ayuda a
simplificar los algoritmos,
ahorrando tiempo valioso a
quien resuelve problemas con
ayuda del computador.
PARA FINALIZAR

Es fundamental que los estudiantes presten atencin


especial a las estructuras que utilizan para resolver
problemas y las reconozcan para lograr mayor
control sobre la solucin planteada. De esta manera,
la programacin de computadores les ayuda a
planear conscientemente las secuencias de acciones
que resuelven un problema planteado y las
estructuras involucradas en una solucin dada.

Vous aimerez peut-être aussi