Turbo Pascal, aunque no es un favorito mundialaplicación para la programación, pero los creadores que dan los primeros pasos en la escritura de software, comienzan a familiarizarse con este entorno. Da una idea de ramificaciones, operadores, funciones y procedimientos, así como muchas otras cosas. Por ejemplo, mientras aprende, el programador encontrará ciclos en Turbo Pascal: While, For y Repeat.

Pascal mientras

El concepto de un ciclo y su variedad

Un ciclo se llama acciones repetidas. En este entorno, usamos:

  • con el parámetro (For ... to ... do);
  • con una precondición (mientras ... hacer);
  • con una poscondición (Repetir ... hasta).

El primer tipo se usa, cuando se conoce de antemano,cuántos pasos para resolver el problema. Sin embargo, hay una serie de tareas cuando no hay información sobre cuántas veces se repetirá una u otra acción. En este caso, en el ciclo Pascal While se vuelve indispensable, como, en principio, y Repeat.

Estructura del ciclo

Cuál es la esencia del trabajo en Pascal While, Fory repite ciclos? Estas estructuras tienen un encabezado y un cuerpo. El primer componente especifica las variables que "funcionarán", establece las condiciones para verificar la verdad, el período al que se ejecutará el cuerpo. En el segundo componente, se escriben expresiones que se deben usar si se cumple la condición, es decir, True y no False.

Cuando la iteración se realiza en la última líneacódigo, luego vuelve al encabezado donde se verifica la condición. En el caso de la verdad, las operaciones se repiten, y en caso de que no se cumpla la condición, el programa "abandona" el ciclo y realiza más operaciones.

El ciclo While se ve así. Pascal ABC y programas similares requieren escribir este código:

  • Mientras Condición hacer;
  • Comenzar;
  • El cuerpo del ciclo;
  • Fin

En el caso de que se ejecute 1 operador (1 acción) en el cuerpo del bucle, se pueden omitir los corchetes finales "comenzar".

Diagrama de flujo del ciclo

En Turbo Pascal While tiene las siguientes características:

  • Las condiciones complejas se pueden usar dentro de la estructura;
  • después de la palabra do, no debe haber un punto y coma (esto se considera un error en Turbo Pascal y Pascal ABC);
  • una variable, una constante o una expresión que sirve como un resultado falso de su subrutina debe ser de un tipo lógico, es decir, booleano.

El diagrama de bloques de esta versión del ciclo tiene el siguiente aspecto. Muestra la secuencia de acciones.

pascal abc mientras

El algoritmo del ciclo

En los entornos de programación más sencillos, incluido Pascal ABC, mientras que el ciclo funciona de acuerdo con el siguiente principio:

  • las iteraciones dadas, es decir, las repeticiones, pasarán tantas veces hasta que la condición sea verdadera (Verdadero);
  • tan pronto como la condición no se satisface y da una respuesta Falsa (o de lo contrario "Falsa"), la instrucción sale del ciclo;
  • tan pronto como esto sucedió, el programa "entró" en la construcción, después del ciclo.

Esta es una diferencia esencial de While from Repeat, es decir, un ciclo con una precondición de una condición posterior.

Es muy importante proporcionar un finitoCambie la variable especificada en el encabezado While. En cualquier caso, algún día debería venir una situación que da el valor False. De lo contrario, se producirá el bucle, y luego tendrá que usar medidas adicionales para salir del compilador. Tales errores se consideran groseros e imperdonables.

¿Cómo salgo del programa durante el bucle?

A menudo hay una situación en la que el operadorMientras Pascal produce un bucle en el código escrito. ¿Qué significa esto? La iteración se repite un número infinito de veces, porque la condición siempre es verdadera. Por ejemplo, aquí hay un fragmento del programa:

  • Mientras 2> 1 lo hacen;
  • Escribir (1).

En este caso, para detener la tarea, simplemente presione CTRL + F2.

Hay 2 formas más de controlar estoel comportamiento del programa. Por ejemplo, si una escritura Continuar código que pasa el control al comienzo de la estructura cíclica (en este documento la condición de salida del bucle se controla, es decir. La ejecución E de la iteración actual se interrumpe). Luego, el control pasa en el ciclo While a la verificación anterior.

La declaración de interrupción puede interrumpir la ejecución de todosciclo y pasar el control a la siguiente iteración. Aquí, la salida de la estructura no será controlada. La imagen muestra ejemplos del uso de estos operadores.

mientras que el operador pascal

Resolución de problemas

Considera el ciclo While. La tarea de Pascal es resolver una gran variedad. Vamos a detenernos en lo más simple mientras comprendemos el principio del trabajo. Tareas resueltas en el programa Pascal ABC. Pero se presentarán imágenes del entorno clásico de Turbo Pascal para comparar.

Actividad 1: la función Y = 5-X ^ 2/2 está dada. Cree una tabla de valores con el paso sh = 0.5 en el intervalo [-5; 5].

Algoritmo de acciones:

  • establecer el valor inicial para la variable X igual a -5 (es decir, el comienzo del intervalo);
  • calcule el valor de Y hasta que la variable x llegue al final del segmento especificado;
  • mostrar los valores de la función y abscisas (X);
  • aumentar X en el paso dado.

Este es el código en el programa Pascal ABC.

mientras pascal tareas

¿Cómo se ve el código en Turbo Pascal? La imagen de abajo muestra esto claramente.

mientras pascal tareas

Actividad 2: Dado un conjunto A, que consiste en enteros positivos ynúmeros negativos Contiene 10 elementos. Es necesario formar una matriz B, en la que se mostrarán elementos positivos de la matriz A con un índice par. Muestre en la pantalla la suma de cuadrados en el número de la nueva matriz.

Algoritmo de acciones:

  • Es necesario escribir una subrutina que "funcione" solo con elementos de la matriz A que tengan un índice par. En el ciclo, el valor de la variable que es responsable de la paridad del índice aumentará en 2.
  • Si un número con un índice par de la matriz Acorresponde a la condición x> 0, luego el contador de los elementos de la matriz se incrementa en 1. El valor actual de la variable del contador será el índice del número copiado en la matriz B.
  • Inicialmente, summa, responsable de encontrar la suma de los cuadrados de números positivos, tiene asignado 0. Entonces, la operación se realizará: se agrega un nuevo valor del cuadrado a la suma anterior.
  • No tengas miedo, si no todos son positivosnúmeros pasaron de una matriz a otra. Tienes que tener cuidado Muchos programadores noveles reescriben el código en pánico. Es necesario estudiar cuidadosamente la condición: números positivos que están incluso en "lugares", es decir, que tienen índices que son múltiplos de 2.

loop while pascal abc

El seguimiento manual es necesario para verificar la exactitud de los cálculos. A veces, con la ayuda de este método, puede identificar los errores que no le salen a la vista cuando normalmente verifica el código escrito.

loop while pascal abc

Si haces un cálculo manual,que el programa funciona correctamente Esto, a su vez, indica que el algoritmo para crear el código es correcto, la secuencia de acciones conduce a un final lógico.

</ p>