You are on page 1of 5

Unidad II: Fase de resolucin de problema

II

Algoritmo I

METODOLOGA PARA LA SOLUCIN DE PROBLEMAS


INTRODUCCIN: CONCEPTOS BSICOS.

La computadora no solamente es una mquina que puede realizar procesos para darnos resultados, sin que
tengamos la nocin exacta de las operaciones que realiza para llegar a esos resultados. Con la
computadora adems de lo anterior tambin podemos disear soluciones a la medida, de problemas
especficos que se nos presenten. Ms an, si estos involucran operaciones matemticas complejas y/o
repetitivas, o requieren del manejo de un volumen muy grande de datos.
El diseo de soluciones a la medida de nuestros problemas, requiere como en otras disciplinas una
metodologa que nos ensee de manera gradual, la forma de llegar a estas soluciones.
A las soluciones creadas por computadora se les conoce como programas y no son ms que una serie de
operaciones que realiza la computadora para llegar a un resultado, con un grupo de datos especficos. Lo
anterior nos lleva al razonamiento de que un programa nos sirve para solucionar un problema especfico.
Para poder realizar programas, adems de conocer la metodologa mencionada, tambin debemos de
conocer, de manera especfica las funciones que pueden realizar la computadora y las formas en que se
pueden manejar los elementos que hay en la misma.

Computadora:

Es un dispositivo electrnico utilizado


para procesar informacin y obtener resultados. Los
datos y la informacin se pueden introducir en la
computadora como entrada (input) y a continuacin se
procesan para producir una salida (output).

Proceso de informacin en la computadora

Datos de
Entrada

Procesos

Datos de
Salida

Programa: Es el conjunto de instrucciones escritas de algn lenguaje de programacin y que ejecutadas


secuencialmente resuelven un problema especfico.

Organizacin fsica de una computadora

Dispositivos de
Entrada

Unida de
Control

Ing. Ruth Marina Figueroa de Flores

CPU

Unidad
Arit.-Log.

Memoria

Dispositivos de
Salida

Unidad II: Fase de resolucin de problema

Algoritmo I

Dispositivos de Entrada: Como su nombre lo indica, sirven para introducir datos (informacin) en la
computadora para su proceso. Los datos se leen de los dispositivos de entrada y se almacenan en la
memoria central o interna. Ejemplos: teclado , scanners (digitalizadores de rastreo), mouse (ratn),
trackball (bola de ratn estacionario), joystick (palancas de juego), lpiz ptico.

Dispositivos de Salida:

Regresan los datos procesados que sirven de informacin al usuario.

Ejemplo: monitor, impresora.

La Unidad Central de Procesamiento (C.P.U) se divide en dos:

Unidad de Control: Coordina las actividades de la computadora y determina que operaciones se


deben realizar y en qu orden; as mismo controla todo el proceso de la computadora.

Unidad Aritmtico - Lgica: Realiza operaciones aritmticas y lgicas, tales como suma, resta,
multiplicacin, divisin y comparaciones.

La Memoria de la computadora se divide en dos:

Memoria Central (interna): La CPU utiliza la

memoria de la computadora para guardar

informacin mientras trabaja con ella; mientras esta informacin permanezca en memoria, la
computadora puede tener acceso a ella en forma directa. Esta memoria construida internamente
se llama memoria de acceso aleatorio (RAM).

La memoria interna consta de dos reas de memoria:

La memoria RAM (Randon Access Memory): Recibe el nombre de memoria principal

memoria del usuario, en ella se almacena informacin solo mientras la computadora est
encendida. Cuando se apaga o arranca nuevamente la computadora, la informacin se pierde,
por lo que se dice que la memoria RAM es una memoria voltil.

La memoria ROM (Read Only Memory): Es una memoria esttica que no puede cambiar, la
computadora puede leer los datos almacenados en la memoria ROM, pero no se pueden
introducir datos en ella, o cambiar los datos que ah se encuentran; por lo que se dice que
esta memoria es de solo lectura. Los datos de la memoria ROM estn grabados en forma
permanente y son introducidos por el fabricante de la computadora.

Memoria Auxiliar (Externa): Es donde se almacenan todos los programas o datos que el usuario
desee. Los dispositivos de almacenamiento o memorias auxiliares (externas o secundarias) ms

comnmente utilizados son: cintas magnticas y discos magnticos.

Ing. Ruth Marina Figueroa de Flores

Unidad II Fase de resolucin de problema

Algoritmo I

DEFINICIN DE LENGUAJE

Lenguaje: Es una serie de smbolos que sirven para transmitir uno o ms mensajes (ideas)
entre dos entidades diferentes. A la transmisin de mensajes se le conoce comnmente como

comunicacin.
La comunicacin: es un proceso complejo que requiere una serie de reglas simples, pero
indispensables para poderse llevar a cabo. Las dos principales son las siguientes:

Los mensajes deben correr en un sentido a la vez.


Debe forzosamente existir 4 elementos: Emisor, Receptor, Medio de Comunicacin
y Mensaje.

Lenguajes de Programacin : Es un conjunto de smbolos, caracteres y reglas (programas) que


le permiten a las personas comunicarse con la computadora.
Los lenguajes de programacin tienen un conjunto de instrucciones que nos permiten realizar
operaciones de entrada/salida, calculo, manipulacin de textos, lgica/comparacin y
almacenamiento/recuperacin.

Los lenguajes de programacin se clasifican en:

Lenguaje Maquina: Son aquellos cuyas instrucciones son directamente entendibles por la
computadora y no necesitan traduccin posterior para que la CPU pueda comprender y
ejecutar el programa. Las instrucciones en lenguaje maquina se expresan en trminos de la
unidad de memoria mas pequea el bit (dgito binario 0 o 1).

Lenguaje de Bajo Nivel (Ensamblador): En este lenguaje las instrucciones se escriben en


cdigos alfabticos conocidos como mnemotcnicos para las operaciones y direcciones
simblicas.

Lenguaje de Alto Nivel: Los lenguajes de programacin de alto nivel (BASIC, pascal,
cobol, frotran, etc.) son aquellos en los que las instrucciones o sentencias a la computadora
son escritas con palabras similares a los lenguajes humanos (en general en ingles), lo que
facilita la escritura y comprensin del programa.

Ing. Ruth Marina Figueroa de Flores

Unidad II: Fase de resolucin de problema

Algoritmo I

1. FASES DE RESOLUCIN DE UN PROBLEMA PARA EL DISEO DE UN PROGRAMA:


Para resolver un problema, vamos a utilizar el proceso de resolucin de problemas, que consiste en
las siguientes fases:
1. Fase de resolucin del problema.
El resultado de esta fase es el diseo de un algoritmo para resolver el problema y por ltimo la
verificacin manual del algoritmo. Un algoritmo es un conjunto de instrucciones que conducen a
la solucin del problema.
2. Fase de implementacin en la computadora.
El resultado de esta fase es la realizacin en una computadora. La ejecucin (verificacin
del programa en una computadora), es el objetivo final de la fase de implementacin o
realizacin.

FASE DE RESOLUCIN DEL

FASE DE TRABAJO EN LA

PROBLEMA

COMPUTADORA

ANLISIS DEL
PROBLEMA

DISEO DEL
ALGORITMO

CODIFICACIN DEL
ALGORITMO EN PROGRAMA

COMPILACIN Y EJECUCIN
DEL PROGRAMA

VERIFICACIN Y DEPURACIN
VERIFICACIN

DEL PROGRAMA

MANUAL DEL
ALGORITMO
DOCUMENTACIN Y
MANTENIMIENTO DEL
PROGRAMA
Figura 1. Proceso de diseo de un algoritmo1
FASE DE RESOLUCIN DE PROBLEMA. 2
El resultado de esta fase es el diseo de un algoritmo para resolver el problema, el cual tiene las
siguientes etapas o fases:
1 Capitulo 1 Problemas de metodologa de la Programacin Luis Joyanes 2 Edicin Ed. Mc Graw Hill
2 Capitulo 2 Fundamentos de Programacin Autor: Lius Joyanes Aguilar 3 Edicin Ed. Mc Graw Hill
Ing. Ruth Marina Figueroa de Flores

Unidad II Fase de resolucin de problema

Algoritmo I

1. Anlisis del problema: La solucin de todo problema debe iniciar con un anlisis, en donde se
comprende (define) claramente el problema.
2. Diseo del algoritmo: Una vez analizado el problema se disea el algoritmo, el cual especifica
la secuencia lgica de pasos para la solucin del problema.
3. Verificacin manual del algoritmo: Habiendo diseado el algoritmo, seguir los pasos exactos
perfilados para ver si la solucin resuelve verdaderamente el problema. En este caso es
manual.
FASE DE IMPLEMENTACIN EN LA COMPUTADORA. 3
Para implementar un algoritmo en la computadora, se deben ejecutar los siguientes pasos:
1. Codificacin del algoritmo en programa: La codificacin es la operacin de escribir la solucin
del problema (de acuerdo a la lgica del diagrama de flujo o pseudocdigo), en una serie de
instrucciones detalladas, en un cdigo reconocible por la computadora, estas series se le
conoce como cdigo fuente, el cual se escribe en un lenguaje de programacin o lenguaje de
alto nivel.
2. Compilacin y ejecucin del programa: Una vez que el algoritmo se ha convertido en un
programa fuente, es preciso introducirlo en memoria mediante el teclado y almacenarlo
posteriormente en un disco. Esta operacin se realiza con un editor de texto, posteriormente
el programa fuente se convierte en un archivo de programa que se guarda en un disco.
El programa fuente debe ser traducido a lenguaje mquina. Este proceso se realiza con el
compilador y el sistema operativo que se encarga prcticamente de la compilacin. Si al
compilar el programa fuente se presentan errores (errores de compilacin), es necesario
volver a editar el programa, corregir los errores y compilar de nuevo. Esto se repite hasta que
ya no se presenten ms errores, obtenindose el programa objeto, el cual todava no es
ejecutable directamente. Al ya no existir errores en el programa fuente, se debe instruir al
sistema operativo para que efectu la fase de montaje o enlace del programa fuente con las
libreras del programa del compilador. Este proceso de montaje produce un programa
ejecutable. Cuando se ha creado un programa ejecutable, este se puede ya ejecutar desde el
sistema operativo con solo teclear su nombre (en el caso de DOS). Suponiendo que no existen
errores durante la ejecucin (errores en tiempo de ejecucin), se obtendr la salida de
resultados correctos del programa.
3. Verificacin y depuracin del programa: Es el proceso de ejecucin del programa con una
amplia variedad de datos de entrada, llamados datos de test o prueba como son: valores
normales de entrada, valores extremos de entrada que comprueben los lmites del programa y
valores de entrada que comprueben aspectos especiales del programa. Estos determinarn si el
programa contiene errores o no.
4. Documentacin y mantenimiento del programa: La importancia de la documentacin debe ser
destacada por su influencia en la etapa final, ya que programas pobremente documentados son
difciles de leer, ms difciles de depurar y casi imposibles de mantener y modificar.
Puede ser interna y externa. La documentacin interna es la contenida en lneas de
comentarios. La documentacin externa incluye anlisis, diagramas de flujo y/o pseudocdigos,
manuales de usuarios con instrucciones para ejecutar el programa y para interpretar los
resultados. La documentacin es vital cuando se desea corregir posibles errores futuros o bien
cambiar el programa. Estos cambios se denominan mantenimiento del programa.

3 Capitulo 2 Fundamentos de Programacin Autor: Lius Joyanes Aguilar 3 Edicin Ed. Mc Graw Hill
Ing. Ruth Marina Figueroa de Flores

You might also like