SlideShare une entreprise Scribd logo
1  sur  9
3.- Poner A Punto El Programa Mediante El Uso De Un Editor De Lenguaje De
Programación Estructurado.
Hay distintos lenguajes que nos permiten dar instrucciones a un ordenador
(un programa de ordenador es básicamente eso: un conjunto de órdenes
para un ordenador).
El lenguaje más directo es el propio del ordenador, llamado "lenguaje de
máquina" o "código máquina", formado por secuencias de ceros y unos.
Este lenguaje es muy poco intuitivo para nosotros, y difícil de usar. Por ello
se recurre a otros lenguajes más avanzados, más cercanos al propio
lenguaje humano (lenguajes de alto nivel), y es entonces el mismo
ordenador el que se encarga de convertirlo a algo que pueda manejar
directamente.
Se puede distinguir dos tipos de lenguajes, según se realice esta
conversión:
1. En los intérpretes, cada instrucción que contiene el programa se va
convirtiendo a código máquina antes de ejecutarla, lo que hace que sean
más lentos (a cambio, los intérpretes suelen ser más fáciles de crear, lo que
permite que sean baratos y que puedan funcionar en ordenadores con
menor potencia).
2. En los compiladores, se convierte todo el programa en bloque a código
máquina y después se ejecuta. Así, hay que esperar más que en un
intérprete para comenzar a ver trabajar el programa, pero después éste
funciona mucho más rápido (a cambio, los compiladores son más caros y
suelen requerir ordenadores más potentes).
Hay lenguajes para los que sólo hay disponibles intérpretes, otros para los
que sólo existen compiladores, y otros en los que se puede elegir entre
ambos. La mayoría de los lenguajes actuales son compilados, y el entorno
de desarrollo suele incluir:
•Un editor para escribir o revisar los programas.
•El compilador propiamente dicho, que los convierte a código máquina.
•Otros módulos auxiliares, como enlazadores (linkers) para unir distintos
subprogramas, y depuradores (debuggers) para ayudar a descubrir errores.
Es cada vez más frecuente que todos estos pasos se puedan dar desde un
único "entorno integrado".
Por ejemplo, el entorno de Turbo Pascal tiene la siguiente apariencia:
Algunos de los lenguajes más difundidos son:
•BASIC, que durante mucho tiempo se ha considerado un buen lenguaje para
comenzar a aprender, por su sencillez, aunque se podía tender a crear
programas poco legibles. A pesar de esta "sencillez" hay versiones muy
potentes, incluso para programar en entornos gráficos como Windows.
•COBOL, que fue muy utilizado para negocios (para crear software de
gestión, que tuviese que manipular grandes cantidades de datos), aunque
últimamente está bastante en desuso.
•FORTRAN, concebido para ingeniería, operaciones matemáticas, etc.
También va quedando desplazado.
•Ensamblador, muy cercano al código máquina (es un lenguaje de "bajo
nivel"), pero sustituye las secuencias de ceros y unos (bits) por palabras
más fáciles de recordar, como MOV, ADD, CALL o JMP.
•C, uno de los mejor considerados actualmente (junto con C++ y Java, que
mencionaremos a continuación), porque no es demasiado difícil de aprender
y permite un grado de control del ordenador muy alto, combinando
características de lenguajes de alto y bajo nivel. Además, es muy
transportable: existe un estándar, el ANSI C, lo que asegura que se pueden
convertir programas en C de un ordenador a otro o de un sistema operativo
a otro con bastante menos esfuerzo que en otros lenguajes.
•C++, un lenguaje desarrollado a partir de C, que permite Programación
Orientada a Objetos, por lo que resulta más adecuado para proyectos de una
cierta envergadura.
•Java, desarrollado a su vez a partir de C++, que elimina algunos de sus
inconvenientes, y ha alcanzado una gran difusión gracias a su empleo en
Internet.
•PASCAL, el lenguaje estructurado por excelencia (ya se irá viendo qué es
esto más adelante), y que en algunas versiones tiene una potencia
comparable a la del lenguaje C, como es el caso de Turbo Pascal en
programación para DOS y de Delphi en la programación para Windows.
Frente al C tiene el inconveniente de que es menos portable, y la ventaja de
que en el caso concreto de la programación para DOS, Turbo Pascal no tiene
nada que envidiar la mayoría de versiones del lenguaje C en cuanto a
potencia, y además resulta más fácil de aprender, es muy rápido, crea
ficheros EXE más pequeños, etc., mientras que en la programación para
Windows, Delphi es una muy buena herramienta para crear aplicaciones de
calidad en un tiempo razonablemente breve.
3.1.- Captura Y Edición Del Programa
Se puede crear un archivo que contenga el programa completo, como en los
ejemplos quese tienen más adelante. Se puede usar cualquier editor de
textos ordinario con el que seesté familiarizado. Un editor disponible en la
mayoría de los sistemas UNIX es vi, y enLinux se puede usar pico.Por
convención el nombre del archivo debe terminar con ``.c por ejemplo:
miprograma.cprogprueba.c. El contenido del archivo deberá obedecer la
sintaxis de C.Existen muchos compiladores de C. El cc es el compilador
estándar de Sun. El compiladorGNU de C es gcc, el cual es bastante popular
y está disponible en varias plataformas.Existen también compiladores
equivalentes de C++ los cuales usualmente son nombradoscomo CC. Por
ejemplo, Sun provee CC y GNU GCC. El compilador de GNU es
tambiéndenotado como g++.
Existen otros compiladores menos comunes de C y C++. En general todos
los compiladoresmencionados operan esencialmente de la misma forma y
comparten muchas opcionescomunes en la línea de opciones. Más adelante
se listan y se dan ejemplos de opcionescomunes de los compiladores. Sin
embargo, la mejor referencia de cada compilador es através de las páginas
en línea, del manual del sistema. Por ejemplo: man gcc.Para compilar el
programa usaremos el comando gcc. El comando deberá ser seguido porel
nombre del programa en C que se quiere compilar. Un determinado número
deopciones del compilador pueden ser indicadas también. Por el momento
no haremos usode estas opciones todavía, se irán comentando algunas más
esenciales.Por lo tanto, el comando básico de compilación es:
gccprograma.cDonde programa.c es el nombre del archivo.Si hay errores
obvios en el programa (tales como palabras mal escritas, caracteres
notecleados u omisiones de punto y coma), el compilador se detendrá y los
reportará.Podría haber desde luego errores lógicos que el compilador no
podrá detectar. En el casoque esta fuera la situación se le estará indicando a
la computadora que haga lasoperaciones incorrectas.Cuando el compilador
ha terminado con éxito, la versión compilada, o el ejecutable, esdejado en un
archivo llamado a.out, o si la opción -o es usada con el compilador,
elnombre después de -o es el nombre del programa compilado.Se
recomienda y es más conveniente usar la opción -o con el nombre del
archivoejecutable como se muestra a continuación: gcc -o programa
programa.cEl cual pone el programa compilado en el archivo del
programaseñalado, en éste caso en programa, en vez del archivo a.out.
3.2. Compilar El Programa, Depurar El Programa, Ejecutar El Programa
Otras de las opciones de utilidad en dicho menú contextual son las de
COMPILACIÓN (F9) o EJECUCIÓN (F6), a las que también se puede acceder
desde la barra de herramientas a través de los símbolos correspondientes y,
respectivamente. La ejecución de un programa cambia el entorno al
escritorio RUNNING, en el cual están accesibles las ventanas de Entrada
Salida (que actúa de terminal estándar de E/S) y ejecución
Puede detenerse una ejecución en curso desplegando el menú contextual
sobre el nombre del programa (proceso) en ejecución
2. EXPLORADOR
Otra herramienta de utilidad es el Explorador que permite acceder de forma
inmediata a los ficheros fuente Java. Para acceder a un programa será
necesario "montarlo" en el explorador. Para ello se despliega el menú
contextual seleccionando la opción MOUNT DIRECTORY, que nos permitirá
seleccionar la carpeta (paquete, en la terminología OO) que deseamos
montar
Esta operación es lo que Forte denomina "montar un FileSystem". Pulsando
en el símbolo se pueden desplegar y replegar los árboles de carpetas, de
forma similar al Explorador de Windows. Para construir un nuevo programa
(una nueva clase, en terminología OO), basta con desplegar el menú
contextual dentro de la carpeta correspondiente: seleccionando la opción
MAIN en la última de las ventanas. De este modo se abre el asistente de
edición de clases donde, tras introducir el nombre de la misma (que será el
nombre de nuestro programa y del fichero que lo contiene). Y pulsar el botón
FINISH se abrirá el editor de programas con una clase vacía con su
correspondiente método principal (función main):
A media que se vayan construyendo nuevos programas dentro de la carpeta
el árbol en el Explorador irá adquiriendo un aspecto que nos proporciona
una vía alternativa para editar los programas (Doble clic), compilarlos,
ejecutarlos, borrarlos, cambiarles el nombre (menú contextual),... Una tarea
de especial interés en la de COPIAR+PEGAR o CORTAR+PEGAR una
clase/programa desde una carpeta/paquete de origen a otra carpeta/paquete
de destino. Esto puede hacerse también a través del menú contextual o con
los botones correspondientes.
Los detalles de mayor relevancia sobre la confección de programas Java
tienen que ver con alguno de los siguientes aspectos:
3.1 Uso de bibliotecas de clases
En los programas utilizaremos normalmente funciones o clases que están
predefinidas en alguna de las bibliotecas que constituyen el lenguaje Java.
Para poder utilizarlas es necesario importar la biblioteca correspondiente, de
modo que el intérprete añada al código compilado de nuestro programa el
código correspondiente a dichas funciones o clases. Esta importación se
realiza con la sentencia import, que se utiliza ANTES de la sentencia de clase
de nuestro programa (línea 14 del siguiente ejemplo)
En ese caso estamos indicando que se importen todas las clases
correspondientes al paquete java.io.
3.2 Excepciones
Algunas de estas funciones pueden generar excepciones, que nosotros no
trataremos de forma individualizada, sino que propagaremos directamente
hacia el exterior de nuestro programa. Para ello usaremos la sentencia
throws (línea 24 del ejemplo anterior) indicando a continuación qué
excepción o excepciones queremos propagar. En el caso del ejemplo, se
trata de la excepción de E/S IOException, que puede venir generada por la
sentencia de lectura de la línea 31. En Java es OBLIGATORIO tratar o
propagar las excepciones, por lo que tendremos que incluir líneas
semejantes cuando usemos métodos que puedan generar excepciones (esto
está completamente documentado en la API correspondiente).
3.3 Uso de otras clases no pertenecientes a la API
En múltiples ocasiones utilizaremos alguna clase que no está incluida en la
API (por ejemplo, la clase TextReader, para E/S por teclado o fichero) y que
será necesario "importar" a nuestro programa. La forma más trivial de
hacerlo es copiando dicha clase en la misma carpeta donde se encuentra
nuestro programa. Así, en el siguiente ejemplo, cualquiera de los programas
del paquete/carpeta vectoresmatrices puede hacer uso de la clase
TextReader. (Ver el ejemplo anterior del programa nif11, donde se usa la
clase TextReader en la línea 26, y no se incluye ninguna sentencia de
importación específica). Podemos tener todas las clases de uso frecuente en
una carpeta separada y hacer uso de las mismas sin necesidad de tener
copia en cada una de las carpetas. Siguiendo el ejemplo anterior, sería la
situación en que no tuviésemos la clase TextReader en el paquete/carpeta
vectoresmatrices, sino, por ejemplo en otro llamado misClases (siempre
dentro del mismo FileSystem).
Para poder utilizar correctamente ahora la clase TextReader en el programa
nif11 deberá incluirse una sentencia import que indique la trayectoria dónde
se encuentra guardada dicha clase. Esta trayectoria siempre será relativa al
FileSystem, por lo que en este caso bastará con indicar una nueva línea 15
con dicha trayectoria (el símbolo * indica que se importen todas las clases
del paquete misClases, pero podría especificarse únicamente
misClases.TextReader). Esto mismo puede realizarse, como es lógico, con
las clases que vayamos construyendo nosotros mismos. Podéis ver un
ejemplo (un poco más complejo) de esta situación en el paquete modular de
las soluciones de los ejercicios.
4. HERRAMIENTAS DE DEPURACIÓN
Las herramientas de depuración se utilizan para detectar la/s sentencia/s en
donde se han producido errores en el diseño de un algoritmo. La tarea de
depuración consiste básicamente en explorar el algoritmo, ejecutándolo
paso a paso y comparando en todo momento los valores que van tomando
las distintas variables con los valores esperados. Es necesario, por tanto,
haber analizado con anterioridad algunos casos de prueba que permitan
anticipar en todo momento los valores que deben tomar las variables y saber
si la progresión del algoritmo es correcta o no. Normalmente la depuración
se realizará ante la presencia de errores de ejecución o lógicos, ya que los
de sintaxis suelen ir acompañados de algún tipo de mensaje que facilita su
localización. Los botones relacionados con la depuración son los siguientes
(acercando el ratón a cada uno de ellos puedes ver la etiqueta con el nombre
que le asocia Sun Forte)
El inicio de la depuración de un programa se realiza mediante el botón de
INICIO (Step Into, F7) , que compilará el programa e iniciará su ejecución
deteniéndose en la primera sentencia del programa.1 La detención se indica
mediante un sombreado de color azul en la ventana de edición:
Conviene indicar que la sentencia sombreada todavía NO SE HA
EJECUTADO, sin o que será la siguiente en ejecutarse. Además, el entorno
se habrá trasladado al escritorio de depuración (Debugging)
4.1 PASO SIMPLE
La forma habitual de ejecutar el programa sentencia a sentencia será
pulsando el botón STEP OVER (F8). A cada pulsación del botón, el flujo del
programa algoritmo avanza una sentencia. El símbolo de la sentencia que se
va a ejecutar en cada momento es destacado en color azul. En cualquier
momento puede pararse la ejecución paso a paso pulsando el botón
FINISH (Mayúsculas+F5)
Ejercicio Ejecutar paso a paso el programa hasta la sentencia
importe=teclado.readFloat();Inclusive. En el momento que ejecutamos una
sentencia de Entrada/Salida, la información correspondiente aparece en la
ventana de Salida: a lo cual se responderá de la manera habitual. Ejercicio
Introducid el valor 123.45, y seguid ejecutando paso a paso el programa
hasta la sentencia importe-=billetemoneda[i]*euros[i]; inclusive.
4.2 VENTANA DE DEPURACIÓN
Observaréis que las variables que han sido definidas en el programa, junto
con sus valores aparecen en la Ventana de DEPURACIÓN, si hemos
seleccionado en la parte Inferior la solapa VARIABLES. En nuestro ejemplo,
los valores deben ser los siguientes:
Podéis observar cómo los valores son correctos. Para el caso de vectores
como billetemoneda o euros, se pueden visualizar todas sus componentes
pulsando en el símbolo, que permite desplegarlas y replegarlas a
conveniencia. Ejercicio Completad la ejecución paso a paso, fijándoos en los
valores de las variables i, importe y billetemoneda[i], que determinan el
número de veces que se ejecuta el lazo y el cumplimiento o no de la
sentencia de selección.
Para visualizar sólo algunas de las variables, o bien expresiones se utiliza la
solapa WATCHES. Para introducir una expresión se activa el siguiente menú
contextual sobre la palabra WATCHES, y seleccionamos la opción ADD
WATCH. En el cuadro de diálogo correspondiente se escribe la expresión
que deseamos evaluar.
Ejercicio Ejecutad paso a paso nuevamente el programa evaluando las
variables i, importe y billetemoneda[i] en el apartado WATCHES de la
ventana de depuración.
Para eliminar una expresión que no nos interesa ya evaluar basta con
seleccionarla y pulsar el botón SUPRIMIR, o hacerlo con el menú contextual
de dicha expresión. También pueden modificarse las expresiones sin más
que seleccionarlas y cambiarlas en la parte derecha de la ventana, en el
botón NAME OF VARIABLE
Si deseamos modificar su valor, pulsaremos el botón VALUE.
4.3 OTRAS FORMAS DE VISUALIZACIÓN DE VARIABLES
Existe otra alternativa para ver rápidamente el valor de una variable: basta
con acercar (SIN PULSAR) el cursor al nombre de dicha variable, y
automáticamente aparecerá una etiqueta que indica el tipo de variable y su
valor (es decir, la misma información que aparece en la ventana de
depuración VARIABLES.
4.4 EJECUCIÓN NORMAL DE CONJUNTOS DE SENTENCIAS
Esta posibilidad es útil cuando se sabe con certeza que una parte del
algoritmo está correctamente diseñada y por tanto, la ejecución paso a paso
de dicha parte no es necesaria. Consiste en ejecutar las sentencias que se
suponen correctas de la forma habitual, para detener la ejecución del
programa en las sentencias donde suponemos que se encuentra el error.
4.4.1 Puntos de ruptura
Pueden establecerse PUNTOS DE RUPTURA (breakpoints) en las sentencias
del algoritmo, de modo que el programa se ejecutará con normalidad hasta
dicho punto, y a partir de ahí puede realizarse alguna de las siguientes
posibilidades: retomarse la ejecución normal • seguir paso a paso •
establecer un punto de ruptura en una sentencia posterior del algoritmo y
continuar hasta él El punto de ruptura se fija antes del inicio de la ejecución
mediante el botón TOGGLE BREAKPOINT , situando previamente el cursor
en la línea donde queremos fijar el punto de ruptura, que quedará resaltada
en rojo:
Para realizar la ejecución hasta el punto de ruptura se utiliza el botón INICIO
DE
DEPURACIÓN (F5) en lugar del habitual de ejecución F6. Una vez detenido el
programa en el punto correspondiente puede reanudarse la ejecución hasta
un punto de ruptura posterior o hasta el final del algoritmo pulsando
CONTINUE (F5). Ejercicio Establecer un punto de ruptura en la sentencia
indicada anteriormente y ejecutar el programa desde ese punto. A
continuación fijar otro punto de ruptura en el último if, ejecutar hasta dicho ,
paso a paso, siguiendo un par hasta eble del algoritmo de resta de dos
matrices, y continuar paso a paso a partir de ahí.
Cabe señalar que los puntos de ruptura pueden añadirse o quitarse a
voluntad durante el proceso de depuración.
4.4.2 Ejecución hasta el cursor
Otra alternativa, que en ocasiones puede resultar más cómoda que los
puntos de ruptura, consiste en situar el cursor en un punto del programa y
ejecutarlo con normalidad el programa hasta dicho punto. Para ello
disponemos del botón
EJECUTAR HASTA EL CURSOR (F4). Con ello la ejecución del programa se
detiene en dicho punto, pudiéndose proseguir a partir de ahí de cualquiera
de las formas conocidas (una nueva ejecución hasta otra posición del
cursor, paso a paso, fijando puntos de ruptura,...)

Contenu connexe

Tendances

Arquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzadosArquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzadosDIEGO BAROJA
 
Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02Lesly Gonzalez
 
Trabajo de presentacion
Trabajo de presentacionTrabajo de presentacion
Trabajo de presentaciondodi1997
 
LENGUAJE en C
LENGUAJE en CLENGUAJE en C
LENGUAJE en CDaniel bg
 
Aplicar los pricipios de programacion en la solucion de problemas 33
Aplicar los pricipios de programacion en la solucion de problemas 33Aplicar los pricipios de programacion en la solucion de problemas 33
Aplicar los pricipios de programacion en la solucion de problemas 33Jahir Sanchez Sdval
 
Acoplamiento de Precision Language suite con Lazarus 1.0.8
Acoplamiento de Precision Language suite con Lazarus 1.0.8Acoplamiento de Precision Language suite con Lazarus 1.0.8
Acoplamiento de Precision Language suite con Lazarus 1.0.8Jose Torres
 
01 Php. Instalacion Del Editor Dev Php
01 Php. Instalacion Del Editor Dev Php01 Php. Instalacion Del Editor Dev Php
01 Php. Instalacion Del Editor Dev PhpJosé M. Padilla
 
Curso de c antonio lebron bocanegra
Curso de c   antonio lebron bocanegraCurso de c   antonio lebron bocanegra
Curso de c antonio lebron bocanegravictdiazm
 
Yareli martinez rios
Yareli martinez riosYareli martinez rios
Yareli martinez riosYaaree
 
Capítulo 0 Qbasic generalidades
Capítulo 0 Qbasic generalidadesCapítulo 0 Qbasic generalidades
Capítulo 0 Qbasic generalidadesJulio Ayala Rolón
 

Tendances (20)

Tasm
TasmTasm
Tasm
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Arquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzadosArquitecturas de ordenadores y compiladores cruzados
Arquitecturas de ordenadores y compiladores cruzados
 
Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02Unidad3 130504222102-phpapp02
Unidad3 130504222102-phpapp02
 
UNIDAD 3
UNIDAD 3 UNIDAD 3
UNIDAD 3
 
Informatik
InformatikInformatik
Informatik
 
Traductores bajo-nivel
Traductores bajo-nivelTraductores bajo-nivel
Traductores bajo-nivel
 
Programacion
ProgramacionProgramacion
Programacion
 
Trabajo de presentacion
Trabajo de presentacionTrabajo de presentacion
Trabajo de presentacion
 
Bootstrapping
BootstrappingBootstrapping
Bootstrapping
 
LENGUAJE en C
LENGUAJE en CLENGUAJE en C
LENGUAJE en C
 
Aplicar los pricipios de programacion en la solucion de problemas 33
Aplicar los pricipios de programacion en la solucion de problemas 33Aplicar los pricipios de programacion en la solucion de problemas 33
Aplicar los pricipios de programacion en la solucion de problemas 33
 
Acoplamiento de Precision Language suite con Lazarus 1.0.8
Acoplamiento de Precision Language suite con Lazarus 1.0.8Acoplamiento de Precision Language suite con Lazarus 1.0.8
Acoplamiento de Precision Language suite con Lazarus 1.0.8
 
01 Php. Instalacion Del Editor Dev Php
01 Php. Instalacion Del Editor Dev Php01 Php. Instalacion Del Editor Dev Php
01 Php. Instalacion Del Editor Dev Php
 
Ensayo de marianny
Ensayo de mariannyEnsayo de marianny
Ensayo de marianny
 
Curso de c antonio lebron bocanegra
Curso de c   antonio lebron bocanegraCurso de c   antonio lebron bocanegra
Curso de c antonio lebron bocanegra
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Yareli martinez rios
Yareli martinez riosYareli martinez rios
Yareli martinez rios
 
Capítulo 0 Qbasic generalidades
Capítulo 0 Qbasic generalidadesCapítulo 0 Qbasic generalidades
Capítulo 0 Qbasic generalidades
 

En vedette

Como crear slideshare
Como crear slideshareComo crear slideshare
Como crear slidesharejuanfenugu
 
+ Natividad de jesus misa del día
+ Natividad de jesus  misa del día+ Natividad de jesus  misa del día
+ Natividad de jesus misa del díaroberconz
 
Grupo 09 dimensión-eclesial
Grupo 09 dimensión-eclesialGrupo 09 dimensión-eclesial
Grupo 09 dimensión-eclesialRenata R. Lucas
 
Graficar funciones trigonometricas
Graficar funciones trigonometricasGraficar funciones trigonometricas
Graficar funciones trigonometricasMateo Vargas
 
Ana nuñez tarea 9
Ana nuñez tarea 9Ana nuñez tarea 9
Ana nuñez tarea 9Ana Delgado
 
Ts'iet0401sort
Ts'iet0401sortTs'iet0401sort
Ts'iet0401sortGWROY
 
Ordenador grafico de las ramas de la filosofía
Ordenador grafico de las ramas de la filosofíaOrdenador grafico de las ramas de la filosofía
Ordenador grafico de las ramas de la filosofíaAlberto Gomez
 
Estrategia de-marketing-online
Estrategia de-marketing-onlineEstrategia de-marketing-online
Estrategia de-marketing-onlinewoko
 
TRABAJO DIAPOSITIVAS
TRABAJO DIAPOSITIVASTRABAJO DIAPOSITIVAS
TRABAJO DIAPOSITIVASromyaleja11
 
Ts'io0087
Ts'io0087Ts'io0087
Ts'io0087GWROY
 
Ts'iet0400sort
Ts'iet0400sortTs'iet0400sort
Ts'iet0400sortGWROY
 
Tsiet0399sort
Tsiet0399sortTsiet0399sort
Tsiet0399sortGWROY
 
Ts'io0088sort
Ts'io0088sortTs'io0088sort
Ts'io0088sortGWROY
 
Tsiog1148sort abc
Tsiog1148sort abcTsiog1148sort abc
Tsiog1148sort abcGWROY
 
Ts'ier0592sort
Ts'ier0592sortTs'ier0592sort
Ts'ier0592sortGWROY
 

En vedette (20)

Como crear slideshare
Como crear slideshareComo crear slideshare
Como crear slideshare
 
+ Natividad de jesus misa del día
+ Natividad de jesus  misa del día+ Natividad de jesus  misa del día
+ Natividad de jesus misa del día
 
Grupo 09 dimensión-eclesial
Grupo 09 dimensión-eclesialGrupo 09 dimensión-eclesial
Grupo 09 dimensión-eclesial
 
Library newsletter 2.21
Library newsletter 2.21Library newsletter 2.21
Library newsletter 2.21
 
Paz
PazPaz
Paz
 
Graficar funciones trigonometricas
Graficar funciones trigonometricasGraficar funciones trigonometricas
Graficar funciones trigonometricas
 
Ana nuñez tarea 9
Ana nuñez tarea 9Ana nuñez tarea 9
Ana nuñez tarea 9
 
Ts'iet0401sort
Ts'iet0401sortTs'iet0401sort
Ts'iet0401sort
 
Ordenador grafico de las ramas de la filosofía
Ordenador grafico de las ramas de la filosofíaOrdenador grafico de las ramas de la filosofía
Ordenador grafico de las ramas de la filosofía
 
Proyecto sofia
Proyecto sofiaProyecto sofia
Proyecto sofia
 
Estrategia de-marketing-online
Estrategia de-marketing-onlineEstrategia de-marketing-online
Estrategia de-marketing-online
 
TRABAJO DIAPOSITIVAS
TRABAJO DIAPOSITIVASTRABAJO DIAPOSITIVAS
TRABAJO DIAPOSITIVAS
 
Ts'io0087
Ts'io0087Ts'io0087
Ts'io0087
 
Ts'iet0400sort
Ts'iet0400sortTs'iet0400sort
Ts'iet0400sort
 
Tsiet0399sort
Tsiet0399sortTsiet0399sort
Tsiet0399sort
 
Ts'io0088sort
Ts'io0088sortTs'io0088sort
Ts'io0088sort
 
Temple green
Temple green Temple green
Temple green
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Tsiog1148sort abc
Tsiog1148sort abcTsiog1148sort abc
Tsiog1148sort abc
 
Ts'ier0592sort
Ts'ier0592sortTs'ier0592sort
Ts'ier0592sort
 

Similaire à Unidad 3 (20)

Unidad 3
Unidad 3Unidad 3
Unidad 3
 
PROGRAMACION EN C
PROGRAMACION EN CPROGRAMACION EN C
PROGRAMACION EN C
 
Freepascal
FreepascalFreepascal
Freepascal
 
Manual Pascal
Manual PascalManual Pascal
Manual Pascal
 
Urso de pascal por nacho cabanes
Urso de pascal por nacho cabanesUrso de pascal por nacho cabanes
Urso de pascal por nacho cabanes
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 
C:\fakepath\compilador
C:\fakepath\compiladorC:\fakepath\compilador
C:\fakepath\compilador
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 
C:\fakepath\el software libre
C:\fakepath\el software libreC:\fakepath\el software libre
C:\fakepath\el software libre
 
Programacion ii modulo2-leccion1
Programacion ii modulo2-leccion1Programacion ii modulo2-leccion1
Programacion ii modulo2-leccion1
 
Ts101924450
Ts101924450Ts101924450
Ts101924450
 
BRANDON VELASQUEZ
BRANDON VELASQUEZBRANDON VELASQUEZ
BRANDON VELASQUEZ
 
Ts101924450
Ts101924450Ts101924450
Ts101924450
 
Compilador Funcionamiento
Compilador FuncionamientoCompilador Funcionamiento
Compilador Funcionamiento
 
Entornos de lenguaje c2
Entornos de lenguaje c2Entornos de lenguaje c2
Entornos de lenguaje c2
 
C:\fakepath\compiladores
C:\fakepath\compiladoresC:\fakepath\compiladores
C:\fakepath\compiladores
 

Plus de Tadeo Rmz

Pa los chamacos de asesoria
Pa los chamacos de asesoriaPa los chamacos de asesoria
Pa los chamacos de asesoriaTadeo Rmz
 
Pseudocodigos lml
Pseudocodigos lmlPseudocodigos lml
Pseudocodigos lmlTadeo Rmz
 
Algoritmo antonio tadeo ponce ramirez 4-a
Algoritmo   antonio tadeo ponce ramirez 4-aAlgoritmo   antonio tadeo ponce ramirez 4-a
Algoritmo antonio tadeo ponce ramirez 4-aTadeo Rmz
 
Practica 30 flash
Practica 30 flashPractica 30 flash
Practica 30 flashTadeo Rmz
 
Practica 29 flash
Practica 29 flashPractica 29 flash
Practica 29 flashTadeo Rmz
 
Practica 28 flash
Practica 28 flashPractica 28 flash
Practica 28 flashTadeo Rmz
 
Practica 26 flash
Practica 26 flashPractica 26 flash
Practica 26 flashTadeo Rmz
 
Practica 27 flash
Practica 27 flashPractica 27 flash
Practica 27 flashTadeo Rmz
 
Practica 25 flash
Practica 25 flashPractica 25 flash
Practica 25 flashTadeo Rmz
 

Plus de Tadeo Rmz (20)

Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Pa los chamacos de asesoria
Pa los chamacos de asesoriaPa los chamacos de asesoria
Pa los chamacos de asesoria
 
Pseudocodigos lml
Pseudocodigos lmlPseudocodigos lml
Pseudocodigos lml
 
Problemas
ProblemasProblemas
Problemas
 
Algoritmo antonio tadeo ponce ramirez 4-a
Algoritmo   antonio tadeo ponce ramirez 4-aAlgoritmo   antonio tadeo ponce ramirez 4-a
Algoritmo antonio tadeo ponce ramirez 4-a
 
Practica 30 flash
Practica 30 flashPractica 30 flash
Practica 30 flash
 
Practica 29 flash
Practica 29 flashPractica 29 flash
Practica 29 flash
 
Practica 28 flash
Practica 28 flashPractica 28 flash
Practica 28 flash
 
Unidad 7
Unidad 7Unidad 7
Unidad 7
 
Practica 26 flash
Practica 26 flashPractica 26 flash
Practica 26 flash
 
Practica 27 flash
Practica 27 flashPractica 27 flash
Practica 27 flash
 
Practica 25 flash
Practica 25 flashPractica 25 flash
Practica 25 flash
 
Practica 24
Practica 24Practica 24
Practica 24
 
Practica 23
Practica 23Practica 23
Practica 23
 
Practica 22
Practica 22Practica 22
Practica 22
 
Practica 20
Practica 20Practica 20
Practica 20
 

Unidad 3

  • 1. 3.- Poner A Punto El Programa Mediante El Uso De Un Editor De Lenguaje De Programación Estructurado. Hay distintos lenguajes que nos permiten dar instrucciones a un ordenador (un programa de ordenador es básicamente eso: un conjunto de órdenes para un ordenador). El lenguaje más directo es el propio del ordenador, llamado "lenguaje de máquina" o "código máquina", formado por secuencias de ceros y unos. Este lenguaje es muy poco intuitivo para nosotros, y difícil de usar. Por ello se recurre a otros lenguajes más avanzados, más cercanos al propio lenguaje humano (lenguajes de alto nivel), y es entonces el mismo ordenador el que se encarga de convertirlo a algo que pueda manejar directamente. Se puede distinguir dos tipos de lenguajes, según se realice esta conversión: 1. En los intérpretes, cada instrucción que contiene el programa se va convirtiendo a código máquina antes de ejecutarla, lo que hace que sean más lentos (a cambio, los intérpretes suelen ser más fáciles de crear, lo que permite que sean baratos y que puedan funcionar en ordenadores con menor potencia). 2. En los compiladores, se convierte todo el programa en bloque a código máquina y después se ejecuta. Así, hay que esperar más que en un intérprete para comenzar a ver trabajar el programa, pero después éste funciona mucho más rápido (a cambio, los compiladores son más caros y suelen requerir ordenadores más potentes). Hay lenguajes para los que sólo hay disponibles intérpretes, otros para los que sólo existen compiladores, y otros en los que se puede elegir entre ambos. La mayoría de los lenguajes actuales son compilados, y el entorno de desarrollo suele incluir: •Un editor para escribir o revisar los programas. •El compilador propiamente dicho, que los convierte a código máquina. •Otros módulos auxiliares, como enlazadores (linkers) para unir distintos subprogramas, y depuradores (debuggers) para ayudar a descubrir errores. Es cada vez más frecuente que todos estos pasos se puedan dar desde un único "entorno integrado".
  • 2. Por ejemplo, el entorno de Turbo Pascal tiene la siguiente apariencia: Algunos de los lenguajes más difundidos son: •BASIC, que durante mucho tiempo se ha considerado un buen lenguaje para comenzar a aprender, por su sencillez, aunque se podía tender a crear programas poco legibles. A pesar de esta "sencillez" hay versiones muy potentes, incluso para programar en entornos gráficos como Windows. •COBOL, que fue muy utilizado para negocios (para crear software de gestión, que tuviese que manipular grandes cantidades de datos), aunque últimamente está bastante en desuso. •FORTRAN, concebido para ingeniería, operaciones matemáticas, etc. También va quedando desplazado. •Ensamblador, muy cercano al código máquina (es un lenguaje de "bajo nivel"), pero sustituye las secuencias de ceros y unos (bits) por palabras más fáciles de recordar, como MOV, ADD, CALL o JMP. •C, uno de los mejor considerados actualmente (junto con C++ y Java, que mencionaremos a continuación), porque no es demasiado difícil de aprender y permite un grado de control del ordenador muy alto, combinando características de lenguajes de alto y bajo nivel. Además, es muy transportable: existe un estándar, el ANSI C, lo que asegura que se pueden convertir programas en C de un ordenador a otro o de un sistema operativo a otro con bastante menos esfuerzo que en otros lenguajes. •C++, un lenguaje desarrollado a partir de C, que permite Programación Orientada a Objetos, por lo que resulta más adecuado para proyectos de una cierta envergadura. •Java, desarrollado a su vez a partir de C++, que elimina algunos de sus inconvenientes, y ha alcanzado una gran difusión gracias a su empleo en Internet. •PASCAL, el lenguaje estructurado por excelencia (ya se irá viendo qué es esto más adelante), y que en algunas versiones tiene una potencia comparable a la del lenguaje C, como es el caso de Turbo Pascal en programación para DOS y de Delphi en la programación para Windows. Frente al C tiene el inconveniente de que es menos portable, y la ventaja de que en el caso concreto de la programación para DOS, Turbo Pascal no tiene
  • 3. nada que envidiar la mayoría de versiones del lenguaje C en cuanto a potencia, y además resulta más fácil de aprender, es muy rápido, crea ficheros EXE más pequeños, etc., mientras que en la programación para Windows, Delphi es una muy buena herramienta para crear aplicaciones de calidad en un tiempo razonablemente breve. 3.1.- Captura Y Edición Del Programa Se puede crear un archivo que contenga el programa completo, como en los ejemplos quese tienen más adelante. Se puede usar cualquier editor de textos ordinario con el que seesté familiarizado. Un editor disponible en la mayoría de los sistemas UNIX es vi, y enLinux se puede usar pico.Por convención el nombre del archivo debe terminar con ``.c por ejemplo: miprograma.cprogprueba.c. El contenido del archivo deberá obedecer la sintaxis de C.Existen muchos compiladores de C. El cc es el compilador estándar de Sun. El compiladorGNU de C es gcc, el cual es bastante popular y está disponible en varias plataformas.Existen también compiladores equivalentes de C++ los cuales usualmente son nombradoscomo CC. Por ejemplo, Sun provee CC y GNU GCC. El compilador de GNU es tambiéndenotado como g++. Existen otros compiladores menos comunes de C y C++. En general todos los compiladoresmencionados operan esencialmente de la misma forma y comparten muchas opcionescomunes en la línea de opciones. Más adelante se listan y se dan ejemplos de opcionescomunes de los compiladores. Sin embargo, la mejor referencia de cada compilador es através de las páginas en línea, del manual del sistema. Por ejemplo: man gcc.Para compilar el programa usaremos el comando gcc. El comando deberá ser seguido porel nombre del programa en C que se quiere compilar. Un determinado número deopciones del compilador pueden ser indicadas también. Por el momento no haremos usode estas opciones todavía, se irán comentando algunas más esenciales.Por lo tanto, el comando básico de compilación es: gccprograma.cDonde programa.c es el nombre del archivo.Si hay errores obvios en el programa (tales como palabras mal escritas, caracteres notecleados u omisiones de punto y coma), el compilador se detendrá y los reportará.Podría haber desde luego errores lógicos que el compilador no podrá detectar. En el casoque esta fuera la situación se le estará indicando a
  • 4. la computadora que haga lasoperaciones incorrectas.Cuando el compilador ha terminado con éxito, la versión compilada, o el ejecutable, esdejado en un archivo llamado a.out, o si la opción -o es usada con el compilador, elnombre después de -o es el nombre del programa compilado.Se recomienda y es más conveniente usar la opción -o con el nombre del archivoejecutable como se muestra a continuación: gcc -o programa programa.cEl cual pone el programa compilado en el archivo del programaseñalado, en éste caso en programa, en vez del archivo a.out. 3.2. Compilar El Programa, Depurar El Programa, Ejecutar El Programa Otras de las opciones de utilidad en dicho menú contextual son las de COMPILACIÓN (F9) o EJECUCIÓN (F6), a las que también se puede acceder desde la barra de herramientas a través de los símbolos correspondientes y, respectivamente. La ejecución de un programa cambia el entorno al escritorio RUNNING, en el cual están accesibles las ventanas de Entrada Salida (que actúa de terminal estándar de E/S) y ejecución Puede detenerse una ejecución en curso desplegando el menú contextual sobre el nombre del programa (proceso) en ejecución 2. EXPLORADOR Otra herramienta de utilidad es el Explorador que permite acceder de forma inmediata a los ficheros fuente Java. Para acceder a un programa será necesario "montarlo" en el explorador. Para ello se despliega el menú contextual seleccionando la opción MOUNT DIRECTORY, que nos permitirá seleccionar la carpeta (paquete, en la terminología OO) que deseamos montar Esta operación es lo que Forte denomina "montar un FileSystem". Pulsando en el símbolo se pueden desplegar y replegar los árboles de carpetas, de forma similar al Explorador de Windows. Para construir un nuevo programa (una nueva clase, en terminología OO), basta con desplegar el menú contextual dentro de la carpeta correspondiente: seleccionando la opción MAIN en la última de las ventanas. De este modo se abre el asistente de edición de clases donde, tras introducir el nombre de la misma (que será el nombre de nuestro programa y del fichero que lo contiene). Y pulsar el botón
  • 5. FINISH se abrirá el editor de programas con una clase vacía con su correspondiente método principal (función main): A media que se vayan construyendo nuevos programas dentro de la carpeta el árbol en el Explorador irá adquiriendo un aspecto que nos proporciona una vía alternativa para editar los programas (Doble clic), compilarlos, ejecutarlos, borrarlos, cambiarles el nombre (menú contextual),... Una tarea de especial interés en la de COPIAR+PEGAR o CORTAR+PEGAR una clase/programa desde una carpeta/paquete de origen a otra carpeta/paquete de destino. Esto puede hacerse también a través del menú contextual o con los botones correspondientes. Los detalles de mayor relevancia sobre la confección de programas Java tienen que ver con alguno de los siguientes aspectos: 3.1 Uso de bibliotecas de clases En los programas utilizaremos normalmente funciones o clases que están predefinidas en alguna de las bibliotecas que constituyen el lenguaje Java. Para poder utilizarlas es necesario importar la biblioteca correspondiente, de modo que el intérprete añada al código compilado de nuestro programa el código correspondiente a dichas funciones o clases. Esta importación se realiza con la sentencia import, que se utiliza ANTES de la sentencia de clase de nuestro programa (línea 14 del siguiente ejemplo) En ese caso estamos indicando que se importen todas las clases correspondientes al paquete java.io. 3.2 Excepciones Algunas de estas funciones pueden generar excepciones, que nosotros no trataremos de forma individualizada, sino que propagaremos directamente hacia el exterior de nuestro programa. Para ello usaremos la sentencia throws (línea 24 del ejemplo anterior) indicando a continuación qué excepción o excepciones queremos propagar. En el caso del ejemplo, se trata de la excepción de E/S IOException, que puede venir generada por la sentencia de lectura de la línea 31. En Java es OBLIGATORIO tratar o propagar las excepciones, por lo que tendremos que incluir líneas semejantes cuando usemos métodos que puedan generar excepciones (esto está completamente documentado en la API correspondiente). 3.3 Uso de otras clases no pertenecientes a la API
  • 6. En múltiples ocasiones utilizaremos alguna clase que no está incluida en la API (por ejemplo, la clase TextReader, para E/S por teclado o fichero) y que será necesario "importar" a nuestro programa. La forma más trivial de hacerlo es copiando dicha clase en la misma carpeta donde se encuentra nuestro programa. Así, en el siguiente ejemplo, cualquiera de los programas del paquete/carpeta vectoresmatrices puede hacer uso de la clase TextReader. (Ver el ejemplo anterior del programa nif11, donde se usa la clase TextReader en la línea 26, y no se incluye ninguna sentencia de importación específica). Podemos tener todas las clases de uso frecuente en una carpeta separada y hacer uso de las mismas sin necesidad de tener copia en cada una de las carpetas. Siguiendo el ejemplo anterior, sería la situación en que no tuviésemos la clase TextReader en el paquete/carpeta vectoresmatrices, sino, por ejemplo en otro llamado misClases (siempre dentro del mismo FileSystem). Para poder utilizar correctamente ahora la clase TextReader en el programa nif11 deberá incluirse una sentencia import que indique la trayectoria dónde se encuentra guardada dicha clase. Esta trayectoria siempre será relativa al FileSystem, por lo que en este caso bastará con indicar una nueva línea 15 con dicha trayectoria (el símbolo * indica que se importen todas las clases del paquete misClases, pero podría especificarse únicamente misClases.TextReader). Esto mismo puede realizarse, como es lógico, con las clases que vayamos construyendo nosotros mismos. Podéis ver un ejemplo (un poco más complejo) de esta situación en el paquete modular de las soluciones de los ejercicios. 4. HERRAMIENTAS DE DEPURACIÓN Las herramientas de depuración se utilizan para detectar la/s sentencia/s en donde se han producido errores en el diseño de un algoritmo. La tarea de depuración consiste básicamente en explorar el algoritmo, ejecutándolo paso a paso y comparando en todo momento los valores que van tomando las distintas variables con los valores esperados. Es necesario, por tanto, haber analizado con anterioridad algunos casos de prueba que permitan anticipar en todo momento los valores que deben tomar las variables y saber si la progresión del algoritmo es correcta o no. Normalmente la depuración se realizará ante la presencia de errores de ejecución o lógicos, ya que los de sintaxis suelen ir acompañados de algún tipo de mensaje que facilita su localización. Los botones relacionados con la depuración son los siguientes (acercando el ratón a cada uno de ellos puedes ver la etiqueta con el nombre que le asocia Sun Forte)
  • 7. El inicio de la depuración de un programa se realiza mediante el botón de INICIO (Step Into, F7) , que compilará el programa e iniciará su ejecución deteniéndose en la primera sentencia del programa.1 La detención se indica mediante un sombreado de color azul en la ventana de edición: Conviene indicar que la sentencia sombreada todavía NO SE HA EJECUTADO, sin o que será la siguiente en ejecutarse. Además, el entorno se habrá trasladado al escritorio de depuración (Debugging) 4.1 PASO SIMPLE La forma habitual de ejecutar el programa sentencia a sentencia será pulsando el botón STEP OVER (F8). A cada pulsación del botón, el flujo del programa algoritmo avanza una sentencia. El símbolo de la sentencia que se va a ejecutar en cada momento es destacado en color azul. En cualquier momento puede pararse la ejecución paso a paso pulsando el botón FINISH (Mayúsculas+F5) Ejercicio Ejecutar paso a paso el programa hasta la sentencia importe=teclado.readFloat();Inclusive. En el momento que ejecutamos una sentencia de Entrada/Salida, la información correspondiente aparece en la ventana de Salida: a lo cual se responderá de la manera habitual. Ejercicio Introducid el valor 123.45, y seguid ejecutando paso a paso el programa hasta la sentencia importe-=billetemoneda[i]*euros[i]; inclusive. 4.2 VENTANA DE DEPURACIÓN Observaréis que las variables que han sido definidas en el programa, junto con sus valores aparecen en la Ventana de DEPURACIÓN, si hemos seleccionado en la parte Inferior la solapa VARIABLES. En nuestro ejemplo, los valores deben ser los siguientes: Podéis observar cómo los valores son correctos. Para el caso de vectores como billetemoneda o euros, se pueden visualizar todas sus componentes pulsando en el símbolo, que permite desplegarlas y replegarlas a conveniencia. Ejercicio Completad la ejecución paso a paso, fijándoos en los valores de las variables i, importe y billetemoneda[i], que determinan el número de veces que se ejecuta el lazo y el cumplimiento o no de la sentencia de selección. Para visualizar sólo algunas de las variables, o bien expresiones se utiliza la solapa WATCHES. Para introducir una expresión se activa el siguiente menú contextual sobre la palabra WATCHES, y seleccionamos la opción ADD
  • 8. WATCH. En el cuadro de diálogo correspondiente se escribe la expresión que deseamos evaluar. Ejercicio Ejecutad paso a paso nuevamente el programa evaluando las variables i, importe y billetemoneda[i] en el apartado WATCHES de la ventana de depuración. Para eliminar una expresión que no nos interesa ya evaluar basta con seleccionarla y pulsar el botón SUPRIMIR, o hacerlo con el menú contextual de dicha expresión. También pueden modificarse las expresiones sin más que seleccionarlas y cambiarlas en la parte derecha de la ventana, en el botón NAME OF VARIABLE Si deseamos modificar su valor, pulsaremos el botón VALUE. 4.3 OTRAS FORMAS DE VISUALIZACIÓN DE VARIABLES Existe otra alternativa para ver rápidamente el valor de una variable: basta con acercar (SIN PULSAR) el cursor al nombre de dicha variable, y automáticamente aparecerá una etiqueta que indica el tipo de variable y su valor (es decir, la misma información que aparece en la ventana de depuración VARIABLES. 4.4 EJECUCIÓN NORMAL DE CONJUNTOS DE SENTENCIAS Esta posibilidad es útil cuando se sabe con certeza que una parte del algoritmo está correctamente diseñada y por tanto, la ejecución paso a paso de dicha parte no es necesaria. Consiste en ejecutar las sentencias que se suponen correctas de la forma habitual, para detener la ejecución del programa en las sentencias donde suponemos que se encuentra el error. 4.4.1 Puntos de ruptura Pueden establecerse PUNTOS DE RUPTURA (breakpoints) en las sentencias del algoritmo, de modo que el programa se ejecutará con normalidad hasta dicho punto, y a partir de ahí puede realizarse alguna de las siguientes posibilidades: retomarse la ejecución normal • seguir paso a paso • establecer un punto de ruptura en una sentencia posterior del algoritmo y continuar hasta él El punto de ruptura se fija antes del inicio de la ejecución mediante el botón TOGGLE BREAKPOINT , situando previamente el cursor en la línea donde queremos fijar el punto de ruptura, que quedará resaltada en rojo:
  • 9. Para realizar la ejecución hasta el punto de ruptura se utiliza el botón INICIO DE DEPURACIÓN (F5) en lugar del habitual de ejecución F6. Una vez detenido el programa en el punto correspondiente puede reanudarse la ejecución hasta un punto de ruptura posterior o hasta el final del algoritmo pulsando CONTINUE (F5). Ejercicio Establecer un punto de ruptura en la sentencia indicada anteriormente y ejecutar el programa desde ese punto. A continuación fijar otro punto de ruptura en el último if, ejecutar hasta dicho , paso a paso, siguiendo un par hasta eble del algoritmo de resta de dos matrices, y continuar paso a paso a partir de ahí. Cabe señalar que los puntos de ruptura pueden añadirse o quitarse a voluntad durante el proceso de depuración. 4.4.2 Ejecución hasta el cursor Otra alternativa, que en ocasiones puede resultar más cómoda que los puntos de ruptura, consiste en situar el cursor en un punto del programa y ejecutarlo con normalidad el programa hasta dicho punto. Para ello disponemos del botón EJECUTAR HASTA EL CURSOR (F4). Con ello la ejecución del programa se detiene en dicho punto, pudiéndose proseguir a partir de ahí de cualquiera de las formas conocidas (una nueva ejecución hasta otra posición del cursor, paso a paso, fijando puntos de ruptura,...)