RICERCA SITO

Turbo Pascal. Mentre ... fai - loop con precondizione

Turbo Pascal, anche se non è il preferito in tutto il mondoapplicazione per la programmazione, ma i creatori che stanno facendo i primi passi nella scrittura del software, iniziano a familiarizzare con questo ambiente. Dà un'idea di ramificazioni, operatori, funzioni e procedure, oltre a molte altre cose. Ad esempio, durante l'apprendimento, il programmatore incontrerà cicli in Turbo Pascal: While, For e Repeat.

mentre pascal

Il concetto di un ciclo e la sua varietà

Un ciclo è chiamato azioni ripetute. In questo ambiente, usiamo:

  • con il parametro (For ... to ... do);
  • con una precondizione (mentre ... fai);
  • con una postcondizione (Ripeti ... fino a).

Il primo tipo è usato, quando è noto in anticipo,quanti passaggi per risolvere il problema. Tuttavia, ci sono un certo numero di compiti quando non ci sono informazioni su quante volte una o più azioni saranno ripetute. In questo caso, nel ciclo Pascal While diventa indispensabile, come, in linea di principio, e Ripeti.

Struttura del ciclo

Qual è l'essenza del lavoro in Pascal While, Fore ripetere i cicli? Queste strutture hanno un'intestazione e un corpo. Il primo componente specifica le variabili che "funzioneranno", stabilisce le condizioni per verificare la verità, il periodo in cui il corpo verrà eseguito. Nel secondo componente, le espressioni sono scritte che devono essere utilizzate se la condizione è soddisfatta, cioè True e non False.

Quando l'iterazione viene eseguita sull'ultima rigacodice, quindi torna all'intestazione in cui viene verificata la condizione. Nel caso della verità, le operazioni vengono ripetute e, in caso di inadempienza della condizione, il programma "lascia" il ciclo ed esegue ulteriori operazioni.

Il ciclo While appare così. Pascal ABC e programmi simili richiedono la scrittura di questo codice:

  • mentre condizione fare;
  • Begin;
  • Il corpo del ciclo;
  • Fine.

Nel caso in cui 1 operatore (1 azione) venga eseguito nel corpo del loop, allora le parentesi "inizio" possono essere omesse.

Diagramma di flusso del ciclo

In Turbo Pascal While ha le seguenti caratteristiche:

  • Le condizioni complesse possono essere utilizzate all'interno della struttura;
  • dopo la parola do, non ci dovrebbe essere un punto e virgola (questo è considerato un errore in Turbo Pascal e Pascal ABC);
  • una variabile, una costante o un'espressione che funge da output False della loro subroutine deve essere di tipo logico, ovvero booleano.

Lo schema a blocchi di questa versione del ciclo è simile al seguente. Mostra la sequenza di azioni.

pascal abc while

L'algoritmo del ciclo

Negli ambienti di programmazione più semplici, incluso Pascal ABC, mentre il ciclo funziona secondo il seguente principio:

  • le iterazioni date, cioè le ripetizioni, passeranno così tante volte finché la condizione non sarà vera (Vero);
  • non appena la condizione non è soddisfatta e dà una risposta False (o altrimenti "False"), la dichiarazione esce dal ciclo;
  • non appena ciò è accaduto, il programma "è andato" nella costruzione, dopo il ciclo.

Questa è una differenza essenziale di While from Repeat, ovvero un ciclo con una precondizione da una post-condizione.

È molto importante fornire un finitoCambia la variabile specificata nell'intestazione While. In ogni caso, un giorno dovrebbe venire una situazione che dia il valore False. In caso contrario, si verificherà il ciclo e quindi sarà necessario utilizzare ulteriori misure per uscire dal compilatore. Tali errori sono considerati scortesi e imperdonabili.

Come posso uscire dal programma durante il loop?

Spesso c'è una situazione in cui l'operatoreMentre Pascal produce un ciclo nel codice scritto. Cosa significa? L'iterazione viene ripetuta un numero infinito di volte, perché la condizione è sempre vera. Ad esempio, ecco un frammento del programma:

  • Mentre 2> 1 do;
  • Scrivi (1).

In questo caso, per interrompere l'attività, basta premere CTRL + F2.

Ci sono altri 2 modi per controllarloil comportamento del programma. Ad esempio, se si inserisce il codice Continue, che trasferirà il controllo all'inizio della costruzione ciclica (in questo caso viene controllata la condizione di uscita dal loop, ovvero l'esecuzione dell'iterazione corrente verrà interrotta). Quindi il controllo viene passato nel ciclo While al controllo precedente.

L'istruzione Break può interrompere l'esecuzione di tutticiclare e passare il controllo alla successiva iterazione. Qui, l'output dalla struttura non sarà controllato. L'immagine mostra esempi di utilizzo di questi operatori.

mentre l'operatore pascal

Problem Solving

Considera il ciclo While. Il compito di Pascal è risolvere un'ampia varietà. Soffermiamoci sul più semplice mentre capiamo il principio del lavoro. Risolti i compiti nel programma Pascal ABC. Ma le immagini del classico ambiente Turbo Pascal saranno presentate per il confronto.

Attività 1: viene data la funzione Y = 5-X ^ 2/2. Creare una tabella di valori con il passo sh = 0,5 sull'intervallo [-5; 5].

Algoritmo di azioni:

  • imposta il valore iniziale per la variabile X pari a -5 (ovvero, l'inizio dell'intervallo);
  • calcolare il valore di Y fino a quando la variabile x raggiunge la fine del segmento specificato;
  • mostra i valori della funzione e ascisse (X);
  • aumentare X con il passo specificato.

Questo è il codice nel programma Pascal ABC.

mentre i compiti pascal

Che aspetto ha il codice in Turbo Pascal. L'immagine sotto mostra chiaramente.

mentre i compiti pascal

Attività 2: Dato un array A, costituito da numeri interi positivi enumeri negativi Contiene 10 elementi. È necessario formare una matrice B, in cui verranno visualizzati gli elementi positivi dell'array A con un indice pari. Mostra sullo schermo la somma dei quadrati nel numero della nuova matrice.

Algoritmo di azioni:

  • È necessario scrivere una subroutine che "funzionerà" solo con gli elementi dell'array A che hanno un indice pari. Nel ciclo, il valore della variabile responsabile della parità dell'indice aumenterà di 2.
  • Se un numero con un indice pari dalla matrice Acorrisponde alla condizione x> 0, quindi il contatore degli elementi dell'array viene incrementato di 1. Il valore corrente della variabile contatore sarà l'indice del numero copiato nell'array B.
  • Inizialmente, la summa, responsabile della ricerca della somma dei quadrati dei numeri positivi, viene assegnata a 0. Quindi, l'operazione verrà eseguita: un nuovo valore del quadrato viene aggiunto alla somma precedente.
  • Non avere paura, se non tutto positivoi numeri passavano da una matrice all'altra. Devi stare attento. Molti programmatori alle prime armi riscrivono il codice in preda al panico. È necessario studiare attentamente la condizione: numeri positivi che si trovano anche su "luoghi", cioè con indici multipli di 2.

loop mentre pascal abc

La traccia manuale è necessaria per verificare la correttezza dei calcoli. A volte con l'aiuto di questo metodo puoi identificare errori che non ti vengono in mente quando controlli normalmente il codice scritto.

loop mentre pascal abc

Se fai un calcolo manuale,che il programma funzioni correttamente. Questo, a sua volta, indica che l'algoritmo per la creazione del codice è corretto, la sequenza di azioni porta a un fine logico.

</ p>
  • valutazione: