Você está na página 1de 17

Metodologa Para La Solucin De Problemas.

El proceso de resolucin de un problema abarca desde la descripcin inicial del problema hasta el desarrollo de un programa. El proceso del diseo del programa tiene una serie de fases que deben de seguir todos los programadores, estas son: 1. Anlisis del problema. 2. 3. 4. 5. 6. 7. Diseo del algoritmo. Codificacin. Compilacin y ejecucin. Verificacin. Depuracin. Mantenimiento.

Para lograr la solucin a de un problema es necesario primeramente analizarlo, comprenderlo y posteriormente definir como ser solucionado. para ello presentamos el siguiente problema: El Sistema Meteorolgico de la Ciudad de Mxico, requiere de un por grama que le determine el ndice de contaminacin de la ciudad y la situacin en la que se encuentra. Se hacen lecturas en 3 puntos distintos de la ciudad (Norte, centro y sur), el promedio de estas es el ndice de contaminacin, donde un valor por debajo de los 50 indica una situacin segura mientras es igual o superior a 50 es una situacin peligrosa. Siguiendo la metodologa para la solucin de problemas observaremos en el vdeo como realizar: 1. El Anlisis 2. Los Algoritmos Pseudocdigo Diagrama de flujo en DFD

Para la resolucin de un problema es conveniente aplicar un mtodo. Unmtodo es, fundamentalmente, una actitud, una estrategia, una filosofa,que frente a una situacin problemtica orienta en la bsqueda de unasolucin.A continuacin planteamos las diversas etapas de un mtodo, aplicables ala resolucin de problemas tecnolgicos. 1.- Reconocimiento del problema.Los alumnos individualizan la situacin problemtica, vinculada alquehacer tecnolgico, que despierta su curiosidad o inters, destacandolas implicaciones de orden tcnico, cientfico, cultural, econmico o socialpresentes en el caso. 2.- Formulacin y anlisis del problema.Formulan en trmino de problema el caso individualizado en la etapaanterior. Esta formulacin debe ser clara: explicitando los aspectostecnolgicos del problema, precisando los objetivos a alcanzar, buscandoinformacin y analizando el problema y las soluciones existentes. En estepunto es importante investigar las tcnicas distintas que se han utilizadopara resolver el mismo problema o similares.

3.- Bsquedas de alternativas de solucin.Generan alternativas para solucionar el problema, partiendo de losconocimientos con que cuentan o con los que pueden adquirir (nuevainformacin, pruebas, contrastacin de datos, etc.)

4.- Seleccin de la solucin.Seleccionan la solucin que mejor se adapte a los objetivos planteados,teniendo en cuenta el marco econmico y social en el que est inserto elproblema.5.Evaluacin de la solucin.Verifican el comportamiento de la solucin en un contexto global y ajustansu funcionamiento, optimizndola.6.-Presentacin de la solucin.Detallan la solucin, el proceso que siguieron para lograrla, suscaractersticas tcnicas (especificaciones, rendimiento, etc.) y justificanlas ventajas que presenta.El mtodo presentado no se sigue en forma lineal, sino que entre lasetapas hay retroalimentacin que permite ir y venir entre cada una deellas.Una vez que tenemos la definicin de lo que se va a realizar y los pasos aseguir, a continuacin una breve explicacin de cmo se hace: RESOLUCION DEL PROBLEMA POR COMPUTADORA El Computador es una mquina que no puede trabajar por s sola,nicamente realiza aquellas rdenes que el hombre le indique. Esasordenes tienen que ser realizadas de tal forma que el computador lasentienda, siendo esta la causa por la cual se hace necesario darleinstrucciones agrupadas. Esto constituye el software, el cual es pensado yrealizado por el hombre. El software est conformado por el conjunto deprogramas que se disean para el funcionamiento del computador.Deben estar escritos en un lenguaje de programacin. El Software sedivide en dos grandes tipos: software del sistema y software de aplicacinEl software del Sistema es el conjunto de programas necesarios para que la mquina funcione, estos programas son bsicamente, el SistemaOperativo, los Editores de texto, los Compiladores, Intrpretes y losProgramas de utilidad. El software de aplicacin son los que realizantareas concretas, nminas, contabilidad, anlisis estadsticos, etc. es decirtodos aquellos programas que pueden ser escritos en un Lenguaje deProgramacin. Es as como se utiliza este conjunto de programasvisualizados por computadora.Aunque el proceso de disear programas es un proceso creativo, sepueden considerar tres pasos que ayudan al programador en esteproceso: Anlisis del problema Diseo del algoritmo

Resolucin del algoritmo en la computadoraLas fases de anlisis y diseo del algoritmo requieren la descripcin delproblema en subproblemas y una herramienta de programacin:Diagrama de flujo, Pseudocdigo o Diagrama N-S (diagramas de Nassi-Schneider). En la tercera fase se implementa este algoritmo en un cdigoescrito en un lenguaje de programacin, reflejando las ideas obtenidas enlas fases de anlisis y diseo.

2.2 METODOLOGIA PARA EL DISEO DESOFTWARE: TOPDOWN, BOTTOMUP,MODULAR Y PROGRAMACIONESTRUCTURADA

TOP DOWN El diseo descendente es una tcnica que permite disear la solucin deun problema con base en la modularizacin o segmentacin dndole unenfoque de arriba hacia abajo (Top Down Design). Esta solucin se divideen mdulos que se estructuran e integran jerrquicamente, como si fuera el organigrama de una empresa.Ejemplo 1:

En el diagrama anterior se muestra la estructura del algoritmo, que seauxilia de tres mdulos subordinados, cada uno de los cuales ejecuta unatarea especfica. En su momento el modulo principal algoritmo invocara ollamara a los mdulos subordinados, es decir, dirigir su funcionamiento. Tambin conocida como de arriba-abajo y consiste en establecer una serie de niveles de mayor a menor complejidad (arriba-abajo) que den solucin al problema. Consiste en efectuar una relacin entre las etapas de la estructuracin de forma que una etapa jerrquica y su inmediato inferior se relacionen mediante entradas y salidas de informacin. Este diseo consiste en una serie de descomposiciones sucesivas del problema inicial, que recibe el refinamiento progresivo del repertorio de instrucciones que van a formar parte del programa. La utilizacin de la tcnica de diseo Top-Down tiene los siguientes objetivos bsicos:

Simplificacin del problema y de los subprogramas de cada descomposicin. Las diferentes partes del problema pueden ser programadas de modo independiente e incluso por diferentes personas. El programa final queda estructurado en forma de bloque o mdulos lo que hace mas sencilla su lectura y mantenimiento.

MDULO Un mdulo es un segmento, rutina, subrutina, subalgoritmo oprocedimiento, que puede definirse dentro de un algoritmo con el fin deejecutar una tarea especfica y puede ser llamada o invocada desde elalgoritmo principal cuando sea necesario.

MODULARIZACIN Este enfoque de segmentacin o modularizacion es til en dos casos : 1. Cuando existe un grupo de instrucciones o una tarea especifica quedeba ejecutarse en ms de una ocasin. 2. Cuando un problema es complejo o extenso, la solucin se divide osegmenta en mdulos que ejecutan partes o tareas especificas .Dicha solucin se organiza de forma similar a como lo hacen las empresascuando se estructuran con base en las funciones para realizar susactividades ; en otras palabras, el trabajo se divide en partes que seanfcilmente manejables y que , lgicamente, puedan ser separadas ; as,cada una de estas partes se dedica a ejecutar una determinada tarea, loque redundara en una mayor concentracin , entendimiento y capacidadde solucin a la hora de disear la lgica de cada una de estas. Dichaspartes son mdulos o segmentos del algoritmo, algunos de ellos son losmdulos directivos o de control, que son los que se encargaran dedistribuir el trabajo de los dems mdulos. De esta manera se puededisear un organigrama que indique la estructura general de unalgoritmo.En el diagrama anterior se tiene un mdulo directivo llamado algoritmo,que dirige el funcionamiento de tres mdulos subordinados, que son :modulo uno, modulo dos y modulo tres

PROCESO DE SEGMENTACIN El proceso de segmentacin consiste en hacer una abstraccin delproblema, del cual se tiene inicialmente un panorama general. Enseguida,se procede a desmenuzar o dividir el problema en partes pequeas y simples, como se muestra:1. Se forma un primer mdulo enunciando el problema en trminos de lasolucin a ste.EJEMPLO:Se necesita disear un algoritmo que ayude a un nio a revisar sus tareasreferentes a las operaciones aritmticas fundamentales: sumar, restar,multiplicar y dividir. El proceso es el siguiente:Se ofrecer un men de opciones para escoger lo que desee hacer, deacuerdo con el siguiente formato:

BOTTOM Up El diseo ascendente se refiere a la identificacin de aquellos procesos que necesitan computarizarse con forme vayan apareciendo, su anlisis como sistema y su codificacin, o bien, la adquisicin de paquetes de software para satisfacer el problema inmediato.

Cuando la programacin se realiza internamente y haciendo un enfoque ascendente, es difcil llegar a integrar los subsistemas al grado tal de que el desempeo global, sea fluido. Los problemas de integracin entre los subsistemas son sumamente costosos y muchos de ellos no se solucionan hasta que la programacin alcanza la fecha limite para la integracin total del sistema. En esta fecha, ya se cuenta con muy poco tiempo, presupuesto o paciencia de los usuarios, como para corregir aquellas delicadas interfaces, que en un principio, se ignoran. Aunque cada subsistema parece ofrecer lo que se requiere, cuando se contempla al sistema como una entidad global, adolece de ciertas limitaciones por haber tomado un enfoque ascendente. Uno de ellos es la duplicacin de esfuerzos para acceder el software y mas an al introducir los datos. Otro es, que se introducen al sistema muchos datos carentes de valor. Un tercero y tal vez el mas serio inconveniente delenfoque ascendente, es que los objetivos globales de la organizacin no fueron considerados y en consecuencia no se satisfacen. Entonces La diferencia entre estas dos tcnicas de programacin se fundamenta en el resultado que presentan frente a un problema dado. Imagine una empresa, la cual se compone de varios departamentos (contabilidad, mercadeo, ), en cada uno de ellos se fueron presentando problemas a los cuales se le dieron una solucin basados en un enfoque ascendente (Bottom Up): creando programas que satisfacan slo el problema que se presentaba. Cuando la empresa decidi integrar un sistema global para suplir todas las necesidades de todos los departamentos se dio cuenta que cada una de las soluciones presentadas no era compatible la una con la otra, no representaba una globalidad, caracterstica principal de los sistemas. Como no hubo un previo anlisis, diseo de una solucin a nivel global en todos sus departamentos, centralizacin de informacin, que son caractersticas propias de un diseo Descendente (Top Down) y caractersticas fundamentales de los sistemas; la empresa no pudo satisfacer su necesidad a nivel global. La creacin de algoritmos es basado sobre la tcnica descendente, la cual brinda el diseo ideal para la solucin de un problema.

La diferencia del tipo de diseo ascendente y descendente solo se puededar a la hora de la programacin. Porque en el momento de dibujar laestructura del problema, en las dos formas el diseo queda igual,solamente que los mdulos son enumerados en forma diferente, pero estose hace pensando ya en cmo se va a comenzar a programar. En el diseoascendente primero se programan los mdulos que se encuentran msabajo de la estructura, hasta llegar al primer mdulo dibujado. Tomando un ejemplo del diseo descendente la estructura quedara comosigue :Ejercicio: Realiza el diseo ascendente

para la gestin del control de unhotel utilizando la siguiente informacin: pagos a empleados (nombre, puesto, sueldo, horas extra) Prstamos externos (cl iente, prstamo, aval, plazo) libro de reservaciones (nombre, departamento, entrada, salida) Mantenimiento (rea, daos, total)Esta grfica muestra los mdulos generales que va a contene elprograma.

PROGRAMACION ESTRUCTURADA La programacin estructurada es una teoria de programacin que consiste en construir programas de facil comprension. La programacin estructurada es especialmente util, cuando se necesitan realizar correciones o modificaciones despues de haber concluido un programa o aplicacion. Al haberse utilizado la programacin estructurada, es mucho ms sencillo entender la codificacion del programa, que se habra hecho en diferentes secciones. La programacin estructurada se basa en una metodologi de desarrollo de programas llamda refinamiento sucesivos: Se plantea una operacion como un todo y se divide en segmentos ms sencillos o de menor complejidad. Una vez terminado todos los segmentos del programa, se procede a unificar las aplicaciones realizadas por el pool de programadores. Si se ha utilizado adecuadamente la programacin estructurada, esta integracion debe ser sencilla y no presentar problemas al integrar la misma , y de presentar algun problema, sera rapidamente detectable para su correccion. La representacion grafica de la programacin estructurada se realiza a traves de diagramas de flujo o flow chart, el cual representa el programa con sus entradas, procesos y salidas. La programacin estructurada propone segregar los procesos en estructuras lo ms simple posibles, las cuales se conocen como secuencia, seleccion e interaccion. Ellas estan disponibles en todos los lenguajes modernos de programacin imperativa en forma de sentencias. Combinando esquemas sencillos se pueden llegar a construir sistemas amplios y complejos pero de facil entendimiento.

PSEUDOCDIGO En programacin, lenguaje artificial e informal til para programadorespara el desarrollo de algoritmos. No es un lenguaje de programacinverdadero y, por lo tanto, no puede ser compilado y ejecutado.En pseudocdigo se describen los algoritmos utilizando una mezcla delenguaje comn, con instrucciones de programacin, palabras claves, etc.El objetivo es que el programador se centre en la solucin lgica delalgoritmo y no en la implementacin en un lenguaje de programacin concreto (con las posibles complicaciones en las reglas sintcticas), o enotras palabras, slo ayudan a "pensar" un programa antes de escribirlo enun lenguaje de programacin formal.Caractersticas Es una tcnica para expresar en lenguaje natural la logica de unprograma mediante el empleo de palabras claves, es decir quemuestra su flujo de control. No es un lenguaje de programacin, sino una manera de plantearun proceso. Debe ser considerado como una herramienta para el diseo deprogramas y no como una notacin para la descripcin d e losmismos.

Debe posibilitar la descripcin de: 1. Instrucciones de entrada salida 2. Instrucciones de proceso 3. Sentencias de control de flujo de ejecucin 4. Acciones repetitivas controladas. DIAGRAMA DE FLUJO Es la representacin grfica de la solucin de un problema, por medio de smbolos estandarizados, que se colocan en una secuencia adecuada para indicar las fases lgicas de la solucin de un problema.Los diagramas de flujo (o flujogramas) son diagramas que empleansmbolos grficos para representar los pasos o etapas de un proceso. Tambin permiten describir la secuencia de los distintos pasos o etapas y su interaccin.

El sentido de ejecucin es de arriba hacia abajo y de izquierda aderecha. Es un medio de comunicacin eficiente. Una herramienta de anlisis.

Una forma concisa de documentacin. Los smbolos tienen significados especficos y se conectan por medio de flechas que indican el flujo entre los distintos pasos o etapas. Los smbolos ms comunes son: DESARROLLO DEL DIAGRAMA DE FLUJO Las siguientes son acciones previas a la realizacin del diagrama de flujo: los participantes de la reunin donde se desarrollar el diagrama de flujo. Deben estar presentes el dueo o responsabledel proceso, los dueos o responsables del proceso anterior y posterior y de otros procesos interrelacionados, otras partesinteresadas. car quin lo emplear y cmo. Los pasos a seguir para construir el diagrama de flujo son: el alcance del proceso a describir. De esta maneraq uedar fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al proceso siguiente. estn incluidos en el proceso a describir y su orden cronolgico. sin. el diagrama respetando la secuencia cronolgica yasi ganando los correspondientes smbolos.

Posterior y de otros procesos interrelacionados, otras partes interesadas.

Definir que se espera obtener del diagrama de flujo. Identificar quin lo emplear y cmo. Establecer el nivel de detalle requerido. Determinar los lmites del proceso a describir.Los pasos a seguir para construir el diagrama de flujo son: Establecer el alcance del proceso a describir. De esta maneraqu edar fijado el comienzo y el final del diagrama. Frecuentementeel comienzo es la salida del proceso previo y el final la entrada alproceso siguiente. Identificar y listar las principales actividades/subprocesos que estnincluidos en el proceso a describir y su orden cronolgico. Identificar y listar los puntos de decisin. Construir el diagrama respetando la secuencia cronolgica yasig nando los correspondientes smbolos. DIAGRAMA N-S Los diagramas N S constituyen un mtodo grfico de descripcin dealgoritmos desarrollado por I. Nassi y B. Scheneiderman, en este tipo dediagramas el smbolo bsico es el rectngulo, dentro del cual se describenlas acciones que constituyen el algoritmo, se podra de cir que undiagrama N S es un diagrama de flujo en el que se omiten las lneas deunin y las cajas o rectngulos son contiguos, el aspecto general de unalgoritmo expresado segn esta forma de descripcin. De esta forma se representan todas las acciones que se realicen de formasecuencial, es un conjunto de cajas en cada una de las cuales puede apareceruna o varias acciones, la figura anterior muestra el aspecto de una estructura condicional, en ella la condicin

ocupa la parte central y a cada uno de los ladosse describen las acciones que se realizarn cuando la condicin sea verdadera ocuando sea falsa, dentro de los conjuntos de acciones correspondientes a laopcin verdadera y falsa, se utilizar cualquier estructura de control, secuencial,repetitiva o condicional, puede ocurrir que no se realice nada cuando lacondici n sea falsa, de esta forma se representa el ciclo repetitivo que enpseudocdigo se denomina babucle Mientras, describe un conjunto de accionesque se repetirn mientras la condicin sea verdadera, al igual que antes, en lazona donde se ha puesto acciones bucle se detallarn las acciones a realizar concualquier estructura de control, as se representa una estructura repetitiva, querealiza un conjunto de acciones hasta que una condicin sea verdadera, seutilizar con las mismas consideraciones que la estructura repetitiva descritaanteriormente o la condicional.El diagrama N-S cuenta con un conjunto limitado desmbolospara representarlos pasos del algoritmo, por ello se apoya en expresiones dellenguaje natural; sin embargo, dado que el lenguaje natural es muy extenso y sepresta para la ambigedad, solo se utiliza un conjunto depalabras, a las que sedenomina palabras reservadas. Las palabras reservadas ms utilizadas son: Inicio Fin Leer Escribir Mientras Repita Hasta Para Incrementar Decrementar Hacer Funcin Entero Real Caracter Cadena Lgico RetornarLos smbolos utilizados en el diagrama de Chapin son corresponden a cada tipode estructura. Dado que se tienen tres tipos de estructuras, se utilizan tressmbolos. Esto hace que los procesos del algoritmo sean ms fciles derepresentar y de interpretar.Representacin en Diagrama Nassi Schneiderman:24

Los problemas secuenciales en diagramasN-S se representan solamente por cajas con lneas horizontalesUn enfoque mas estructurado, pero tal vez menos visual, para el diseo y ladocumentacin en el diagrama Nassi Schneiderman.Una estructura condicional en N-S se representa de la siguiente manera : Ventajas Adopta la filosofa de laprogramacin estructurada, queutiliza un enfoque descendente,utiliza un nmero limitado desmbolos de tal forma que eldiagrama de flujo ocupa menosespacio y puede leerse con ciertafinalidad. Desventajas Deben estar completos y ser muyclaros, con el fin de que seentiendan.

2.3.2 IMPLEMENTACIN DE ALGORITMOSSECUENCIALES (UTILIZANDO NOTACINALGEBRAICA) Los algoritmos no se implementan slo como programas, algunas vecesen una red neuronal biolgica (por ejemplo, el cerebro humanoimplementa la aritmtica bsica o, incluso, una rata sigue un algoritmo para conseguir comida), tambin en circuitos elctricos, en instalaciones industriales o maquinaria pesada. Se puede decir en pocas palabras que nuestra vida es un ejemplo de algoritmo, pues al desarrollar nuestrosquehacer diarios desarrollamos una serie de pasos ordenados, as podremos quedar satisfechos con los resultados. El ingreso de la notacin algebraica en el desarrollo de algoritmos logr un gran avance para los programadores ya que fue una forma ms tangible de desarrollar sus programas, por medio de la lgica. Pues este se basaen un mtodo que simplifica las relaciones entre los casos, en lalogaritmia se usan ciertos tipo s de cuadros para identificar sucomportamiento.Un algoritmo puede adoptar una de las estructura s siguientes ocombinaciones de ellas: lineal o secuencial, alternativa o selectiva y repetitiva o cclica. La ms sencilla de las tres es la lineal, tambin llamada secuencial que se caracteriza porque todos los pasos del algoritmo se realizan en secuencia, es decir, se suceden uso a otros. Un ejemplo de esta estructura es el algoritmo para calcular la densidad deun cuerpo a partir de los datos de masa y volumen, mostrada acontinuacin a travs de un diagrama de flujo: DISEO ALGORTMICO DE LAS FUNCIONES El diseo algortmico de cualquier funcin implica como se hace o realiza la tarea (problema) solicitado a resolver. En l diseo: En la resolucin de un problema complejo, se divide en varios sub-problemas y seguidamente se vuelven a dividir los sub-problemas en otros ms sencillos, hasta que puedan implementarse en la computadora. Esta caracterstica define lo que se entiende como diseo descendente o diseo modular. Cada problema se resuelve mediante un mdulo (subprograma) y tiene un solo punto de entrada y un solo punto de salida. Un programa bien diseado consta de un programa principal (mdulo de nivel ms alto) que llama a subprogramas (mdulos de nivel ms bajo), que a su vez pueden llamar otros sub-programas. Los programas que se estructuran de esta forma, se dicen que tienen diseo modular y el mtodo de romper el programa en modos pequeos se llama programacin modular 2.4 PRUEBAS Y DEPURACIN LA PRUEBA Se realiza tras la compilacin. Si tras la compilacin se presentan errores (errores de compilacin) en elprograma fuente, es preciso volver a editar el programa, corregir los errores ycompilar de nuevo, este proceso se repite hasta que no se producen errores.De esta manera se obtiene el programa objeto, que todava no

es ejecutabledirectamente, pero si no contiene errores se debe instruir al sistema para querealice la fase de montaje o enlace del programa objeto con las libreras delprograma del compilador; este proceso de montaje produce un programaejecutable. LA DEPURACIN Las herramientas de depuracin se utilizan para detectar la/s sentencia/sen donde se han producido errores en el diseo de un algoritmo. La tareade depuracin consiste bsicamente en explorar el algoritmo,ejecutndolo paso a paso y comparando en todo momento los valores quevan tomando las distintas variables con los valores esperados. Esnecesario, por tanto, haber analizado con anterioridad algunos casos deprueba que permitan anticipar en todo momento los valores que debentomar las variables y saber si la progresin del algoritmo es correcta o no.Normalmente la depuracin se realizar ante la presencia de errores deejecucin o lgicos, ya que los de sintaxis suelen ir acompaados dealgn tipo de mensaje que facilita su localizacin. En otras palabras es el proceso de encontrar los errores del programa y corregiro eliminar dichos errores.Cuando se ejecuta un programa, se pueden producir tres tipos de errores:1.- Errores de compilacin. Se producen normalmente por un uso incorrecto delas reglas del lenguaje de programacin y suelen ser errores de sintaxis, por lotanto la computadora no puede comprender la instruccin, y obviamente no seobtendr el programa objeto, y el compilador imprimir una lista de todos loserrores encontrados durante la compilacin.28

2.- Errores de ejecucin. Estos errores se producen por instrucciones que lascomputadoras pueden comprender, pero no ejecutar. Ejemplos de stos son: unadivisin por cero, y races cuadradas de nmeros negativos; por lo que en estecaso se detiene la ejecucin del programa y se imprime un mensaje de error.3.- Errores lgicos. Se producen en la lgica del programa y la fuente del errorsuele ser el diseo del algoritmo. Estos errores son los ms difciles de detectar,ya que el programa puede funcionar y no producir errores de compilacin niejecucin, y solo puede detectarse cuando se advierte un error por la obtencinde resultados incorrectos.En este caso se debe volver a la fase del diseo del algoritmo, modificarlo,cambiar el programa fuente, compilar y ejecutar una vez ms. EJEMPLODepuracin de errores en DFD.En primer lugar, copiaremos el fichero numeroprimo.dfd. El algoritmopresenta un error lgico, se puede comprobar ejecutndolo para algunoscasos (2, 4, 15).Para detectar dicho error realizaremos una ejecucin hasta el lazomientras, ya que no parece probable que el error est en las primerassentencias del programa.Por tanto, fijamos el punto de ruptura en dicha sentencia, seleccionndolay pulsando el botn EJECUTAR HASTA. A partir de aqu, el procesoevoluciona de la siguiente manera:

Accin Consecuencia Resultado

Se nos pide el nmero. Introducimos el valor 6:

La ejecucin alcanza el punto de ruptura

Abrimos una ventana del depurador para evaluar las variablesdefinidas hasta el momento. En este momento, todas ellas toman valores correctos

A partir de aqu seguimos paso a paso. La siguiente instruccin es elmientras, que se debe verificar.

Se cumple la condicin, ya que 2 es divisor de 6. Por tanto, ya sabemos que el nmero NO es primo, y divisor debe incrementarse y pasar a valer 1.

Se alcanza el final de la estructura de seleccin, y la variable divisor sigue valiendo cero. Aqu hay un error!

Detenemos la ejecucin paso a paso para editar la asignacin errneay corregirla.Una vez corregido el error, probamos nuevamente el algoritmo con loscasos de prueba anteriores, verificando que funciona correctamente.