LA CAMPANA

C'è chi legge questa notizia prima di te.
Iscriviti per ricevere articoli freschi.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam

Un'istruzione vuota non contiene alcun carattere e non esegue alcuna azione. Viene utilizzato per organizzare la transizione alla fine del blocco nei casi in cui è necessario saltare diverse istruzioni, ma non uscire dal blocco. Per fare ciò, la fine della parola riservata è preceduta da un'etichetta e due punti, ad esempio:

Capitolo 2. Pascal Language Operators Operatori strutturali

Gli operatori strutturali sono costruzioni costruite da altri operatori secondo rigide regole. Possono essere divisi in tre gruppi: composto, condizionale e ripetizione. L'uso di operatori strutturali nel tuo programma è molto spesso semplicemente insostituibile, perché consentono al programmatore di rendere il suo programma dipendente da qualsiasi condizione, ad esempio, inserita dall'utente. Inoltre, utilizzando gli operatori Riprova, hai l'opportunità di elaborare grandi quantità di dati in un periodo di tempo relativamente breve (questo ovviamente dipende anche dal processore :)

Capitolo 2. Operatori linguistici Pascal Dichiarazione composta

Questo operatore è una raccolta di un numero arbitrario di operatori, separati l'uno dall'altro da un punto e virgola e limitati da parentesi iniziali e finali. È percepito come un tutto e può essere localizzato ovunque nel programma dove è possibile un operatore.

Capitolo 2. Operatori linguistici Pascal Operatori condizionali

Gli operatori condizionali sono progettati per selezionare una delle possibili azioni per l'esecuzione, a seconda di alcune condizioni (in questo caso, una delle azioni potrebbe essere assente). Turbo Pascal ha operatori speciali per la programmazione di algoritmi di diramazione. Uno di questi è l'operatore condizionale If. Questo è uno degli strumenti più popolari che cambiano l'ordine di esecuzione delle istruzioni del programma.

Può assumere una delle forme:

Se<условие>poi<оператор1>

altro<оператор2>;

Se<условие>poi<оператор>;

L'operatore viene eseguito come segue. Innanzitutto, viene valutata l'espressione scritta nella condizione. Come risultato del suo calcolo, si ottiene un valore di tipo logico (booleano). Se questo valore è "vero", l'operatore1 specificato dopo la parola viene quindi eseguito. Se, di conseguenza, abbiamo un "falso", allora operator2 viene eseguito. Se invece dell'operatore1 o dell'operatore2 segue una serie di operatori, questa serie di operatori deve essere racchiusa tra parentesi quadre dall'inizio ... fine.

Si noti che la parola else non ha un punto e virgola prima della parola else.

Esempio 1. Creare un programma che richiede l'età del bambino e quindi emette una decisione sull'ammissione del bambino a scuola (età ³7 anni).

Se v\u003e \u003d 7 quindi writeln ("Accettiamo la scuola")

L'obiettivo. Modifica questo programma per limitare il limite massimo di iscrizione alla scuola a 16 anni.

Scrivi ("Inserisci l'età del bambino");

Se (v\u003e \u003d 7) e (v<=16) then writeln(‘Принимаем в школу’)

else writeln ("Non accettare la scuola");

Esempio 2. Vengono dati due numeri. Sostituisci il più piccolo di questi numeri con la somma di questi numeri, il più grande con il prodotto.

Var x, y, s, p: intero;

Scrivi ("Inserisci 2 numeri");

quindi iniziare y: \u003d s; x: \u003d p; fine

altrimenti inizia x: \u003d s; y: \u003d p; fine;

writeln ("x \u003d", x);

writeln ("y \u003d", y);

Se l'operatore If offre una scelta di due alternative, esiste un operatore che ti consente di scegliere tra un numero arbitrario di opzioni. Questa è la dichiarazione Case. Organizza il passaggio a una delle diverse opzioni, a seconda del valore dell'espressione, chiamato selettore.

Vista generale: Caso k di

: <оператор1>;

: <оператор2>;

: <операторN>

altro<операторN+1>

Qui k è un'espressione selettrice che può avere solo un semplice tipo ordinale (intero, simbolico, logico). , … sono costanti dello stesso tipo del selettore.

L'istruzione Case funziona come segue. Innanzitutto, viene calcolato il valore dell'espressione del selettore, quindi viene fornita l'implementazione dell'operatore la cui costante di selezione è uguale al valore corrente del selettore. Se nessuna delle costanti è uguale al valore del selettore, viene eseguita l'istruzione dietro la parola else. Se questa parola è assente, viene attivato un operatore situato all'esterno del Caso, ad es. dopo la fine della parola.

Quando si utilizza l'istruzione Case, è necessario seguire le seguenti regole:

1. Un'espressione selettrice può avere solo un tipo ordinale semplice (intero, simbolico, logico).

2. Tutte le costanti che precedono gli operatori alternativi devono essere dello stesso tipo del selettore.

3. Tutte le costanti nelle alternative devono essere univoche all'interno dell'operatore prescelto.

Moduli di registrazione dell'operatore:

Selettore del tipo di intervallo:

1..10: writeln ("numero compreso nell'intervallo 1-10");

11 .. 20: writeln ("numero compreso nell'intervallo 11-20");

elsewriteln ("numero fuori portata")

Selettore intero:

Esempio 1. Creare un programma che visualizzi il nome del giorno in base al giorno immesso del numero della settimana.

Scrivi ("Inserisci il giorno della settimana");

1: writeln ("lunedì");

2: writeln ("martedì");

3: writeln ("mercoledì");

4: writeln ("giovedì");

5: writeln ("venerdì");

6: writeln ("sabato");

7: writeln ("domenica")

elsewriteln ("Non esiste un giorno simile");

Esempio 2. Crea un programma che visualizzi il nome della stagione in base al numero del mese inserito.

Scrivi ("Inserisci il numero del mese");

1, 2, 12: writeln ("Inverno");

3, 4, 5: writeln ("Primavera");

6, 7, 8: writeln ("Estate");

9, 10, 11: writeln ("Autunno")

elsewriteln ("Non esiste un mese del genere");

Obiettivi della lezione:

  • educativo: Ripeti le dichiarazioni del linguaggio di programmazione Pascal con gli studenti. Sviluppare le capacità di un approccio creativo per risolvere vari problemi, la capacità di evidenziare la cosa principale.
  • Sviluppando: sviluppare la capacità degli studenti di analizzare, ragionare in modo logico; formare la motivazione impostando compiti cognitivi; contribuire alla formazione di competenze per acquisire e comprendere in modo indipendente le conoscenze.
  • educativo: controllare l'assimilazione della conoscenza; sviluppare le capacità comunicative tra gli studenti; stimolare il lavoro degli studenti; creare un atteggiamento positivo nei confronti del materiale oggetto di studio. Infondere interesse per l'argomento.

Compiti: Coinvolgere gli studenti con la creazione di programmi in un linguaggio di programmazione. Risolvi il concetto di operatori.

Tipo di lezione: consolidamento del materiale passato.

Grado: 8 "B".

Materiali didattici:

  • test;
  • Schede con l'attività;
  • Presentazione;
  • Piano di lavoro degli studenti.

Attrezzatura della lezione:Scheda interattiva.

Materiale visivo: Presentazione.

Piano delle lezioni:

1. Stabilire l'obiettivo della lezione. Momento organizzativo - 3 min

2. Aggiornamento delle conoscenze (test, - 10 min; dettatura grafica 10 min) - 20 min

3. Soluzione di compiti:

  • Attività 2, attività 3, attività 4, attività 5-10 min
  • Assegnazione - riposo (indovinando i rebus) - 5 min

4. Compiti a casa - 2 minuti

Lavoro indipendente (informazioni).

5. Riassumendo la lezione. Classificazione - 5 min

Durante le lezioni

1. Momento organizzativo - 3 minuti.

Gli alunni ricevono le carte con un compito di indovinare l'argomento della lezione.

Domande per il mini-gioco "Indovina tema"

1. L'algoritmo si chiama:

  1. una sequenza di comandi precisi che portano al raggiungimento di un obiettivo (O)
  2. qualsiasi sequenza di comandi (A)

2. Gli algoritmi scritti in linguaggi speciali destinati all'input nei computer sono chiamati ...

  1. diagrammi di flusso (B)
  2. programmi (P)

3. I diagrammi di flusso sono ...

  1. istruzioni nei linguaggi di programmazione (I)
  2. strutture speciali sotto forma di blocchi collegati in linea con squadre (E)

4. Un blocco con la parola "START" viene utilizzato per indicare

  1. avvio del programma (P)
  2. la relazione tra i blocchi (A)

5. Il blocco con la parola “END” viene utilizzato per indicare

  1. condizioni di controllo (E)
  2. fine del programma (A)

6. Un rettangolo viene utilizzato per indicare

  1. azioni eseguite (T)
  2. fine del programma (H)

7. Il rombo viene utilizzato per indicare

  1. condizioni di validazione (O)
  2. azioni eseguite (A)

8. Le linee vengono utilizzate per indicare

  1. blocchi di comunicazione (P)
  2. fine del programma (K)

9. Specificare il carattere di assegnazione

  1. : \u003d (S)
  2. \u003d (I)

10. Per input e output nei diagrammi di flusso utilizzati.

  1. Parallelogramma (I)
  2. Ellisse (e)

11. Specificare un'operazione non valida

  1. (10 + 7) / 2 (C)
  2. 6/0 (H)

12. La radice quadrata non può essere estratta da ...

  1. numero positivo (I)
  2. numero / i negativo / i

13. Divisione inaccettabile per ...

  1. zero (K)
  2. numero positivo (g)

14. Indicare l'espressione di assegnazione

  1. y \u003d x + 2 (0)
  2. y: \u003d 10 + x (A)

15. L'aiuto viene chiamato premendo ...

  1. F1 (P)
  2. Esc (B)

16. Avvio rapido del programma premendo ...

  1. CTRL + F10 (O))
  2. CTRL + F9 (A)

17. La creazione di un nuovo file di programma tramite il menu viene eseguita mediante l'esecuzione sequenziale di comandi ...

  1. F10 - File - Apri (P)
  2. F10 - File - Nuovo (C)

18. L'uscita dalla shell Pascal tramite il menu viene eseguita mediante l'esecuzione sequenziale di comandi ...

  1. F10 - File - Nuovo (e)
  2. F10 - File - Esci (W)

19. Le squadre separate sono separate l'una dall'altra da un simbolo

  1. ; punto e virgola (A)
  2. "apostrofo (E)

20. Il titolo del programma inizia con una parola di servizio.

  1. Programma (L)
  2. Scrivi (M)

21. La sezione di descrizione della variabile inizia con una parola di servizio.

  1. Inizia (e)
  2. var (b)

2. Aggiornamento delle conoscenze - test (10 domande), dettatura grafica - 7 min.

Esercizio 1.dettatura grafica.

Se l'affermazione è vera, disegna una linea retta “-”, se falso - raffigura la casa “^”.

1. L'algoritmo di diramazione è un algoritmo in cui l'esecuzione dei comandi dipende dal soddisfacimento della condizione.

2. Una condizione è una determinata espressione logica che assume solo il valore "Falso".

3. La funzione Sqrt (x) è la radice quadrata di x;

4. Il ramo “meno” in Pascal è indicato dall'operatore Then.

5. L'operatore di diramazione è l'operatore Writeln.

6. L'operatore si legge come "Se".

7. intero è un vero tipo di dati?

8. Leggi - procedura di input.

9. L'operatore logico “e” legge come “o”.

10. Un operatore è una semplice frase di una lingua che definisce un'azione durante l'esecuzione di un algoritmo in un programma.

Gli alunni si scambiano quaderni. Controlla i quaderni dei loro compagni - le risposte alla lavagna.

Risposta: _ ^ _ ^ ^ _ ^ _ ^ _

Compito 2.Calcolare:

  1. Come viene indicata la sezione di descrizione della variabile?
  2. Quali sono le variabili? Di che tipo sono?
  3. Inizio del programma? Fine del programma?
  4. Cosa significa l'operatore mod?

Compito 3. Calcola i valori di espressione:

L'obiettivo 4. Prima di essere una tabella, collega le linee di parole riservate e le loro designazioni (risposte)

Programma <вещественный тип данных> <заголовок программы>;
Etichetta <конец>; < раздел объявления меток>
const <заголовок программы>; < раздел объявления констант>
Var <Остаток от целочисленного деления > <раздел объявления переменных>;
Inizio < раздел объявления меток> <начало>;
Fine < раздел объявления меток> <конец>;
Sqr (x) <квадратный корень из аргумента> <возведение аргумента в квадрат>
Mq (x) <Целочисленное деление> <квадратный корень из аргумента>
A div b <возведение аргумента в квадрат> <Целочисленное деление>
A mod b <округляет значение вещественного типа до целого> <Остаток от целочисленного деления >
Rotondo (x) <начало>; <округляет значение вещественного типа до целого>
Vero < раздел объявления констант> <вещественный тип данных>

Compito 5.Avvia l'applicazione Test .

Riposa con beneficio:

(indovinando rebus). Condizione: compongono una sezione di informatica a te nota dalle lettere.

Risposta: programmazione

risposte:Inizio, fine, conclusione, condizione.

a) Efficacia (grigio - dente - anatra - tigre - c - n - o - s - t - b);

(Lavoro indipendente degli studenti - risoluzione dei problemi). La classe è divisa in due opzioni:

Problem solving:

1 opzione

1. Program Funk;

Writeln ("inserisci numeri x");

Se x\u003e 0 allora y: \u003d sqr (x) + 56x-1

Writeln ("y \u003d", y);

2. Program primer2;

Var v, p, m: intero;

Writeln ("inserisci v, m");

writeln ("P");

Writeln ("inserisci numeri x");

Writeln ("y \u003d", y);

opzione 2

1. funzione del programma;

writeln ("Enter x");

se x\u003e 0 allora y: \u003d O x + 56x altro

writeln ("y \u003d", y);

2 . Program primer2;

Var pi, r, S: intero;

Writeln ("Invio r");

writeln ("S");

Writeln ("inserisci i numeri a);

Writeln ("x", x);

Consolidamento della lezione.

Domanda 1. L'operatore in Pascal.
Risposte: (persona che lavora come operatore informatico)

Domanda 2. "Operandi" in Pascal.
Risposte: (dati necessari per eseguire l'operatore in Pascal)

Domanda 3. Il carattere separatore degli operatori in Pascal.
Risposte: (punto e virgola)

Domanda 4. Operatori semplici in Pascal.
Risposte: (gli operatori che non contengono altri operatori sono chiamati semplici)

Domanda 5. Gruppi di operatori linguistici Pascal:
Risposte: (semplice e strutturale)

Domanda 6. Gli operatori semplici includono:
Risposte: (istruzioni di assegnazione, istruzione incondizionata, istruzione di chiamata di procedura, istruzione vuota)

Domanda 7. Gli operatori strutturali sono:
Risposte: (costruzioni costruite da altri operatori secondo regole rigorosamente definite)

Domanda 8. Lo scopo degli operatori condizionali in Pascal
Risposte: (la scelta di eseguire una delle possibili azioni (operatori) a seconda di una determinata condizione (in questo caso, una delle azioni può essere vuota, ovvero assente).

Riflessione (buste con emoticon)

Domande:

  • Cosa ricordi?
  • Sei soddisfatto dei risultati?
  • Cosa sei riuscito a fare durante la lezione?
  • Quali difficoltà hai avuto nel portare a termine l'incarico?
  • Come li hai affrontati?
  • Hai avuto successo durante la lezione?

Riassumendo la lezione. grading

Briefing sui compiti.

Grazie a tutti i partecipanti e gli ospiti!

Ti auguro successo creativo!

Gli operatori in Pascal significano solo una descrizione delle azioni. Gli operatori sono separati l'uno dall'altro solo da un punto e virgola. Se l'operatore è prima della fine, fino a, altrimenti, in questo caso il punto e virgola non viene inserito.

Operatore di assegnazione

Forma generale:

v: \u003d a;

qui v è una variabile, a è un'espressione, \u003d \u003d è un'operazione di assegnazione. L'espressione a può contenere costanti, variabili, nomi di funzioni, segni operativi e parentesi.

Un esempio. f: \u003d 3 * C + 2 * sin (x);

Il tipo di espressione determina in modo univoco le regole per il suo calcolo: le azioni vengono eseguite da sinistra a destra con la seguente anzianità (in ordine decrescente):

  1. *, /, div, mod e;
  2. +, -, oppure;
  3. =, <, >, <>, <=, >\u003d, in.

Qualsiasi espressione tra parentesi viene valutata prima che venga eseguita l'operazione che precede le parentesi.

L'assegnazione è consentita per variabili di tutti i tipi, ad eccezione del tipo di file.

Nell'operazione v: \u003d a, la variabile v e l'espressione a devono essere dello stesso tipo e, per un tipo di intervallo, devono avere lo stesso sottoinsieme di valori.

Appunti. È consentito assegnare un'espressione intera a una variabile di tipo reale. Non è possibile assegnare una variabile di tipo intero un'espressione di tipo reale.

Dichiarazione composta

Se in una determinata condizione è necessario soddisfare una determinata sequenza di operatori, questi vengono combinati in un operatore composito.

Un'istruzione composta inizia con la parola chiave inizio e termina con la parola fine. Tra queste parole, vengono posizionate le istruzioni dei componenti che vengono eseguite nell'ordine in cui sono seguite. Dopo la fine, viene inserito un punto e virgola e, dopo l'inizio, solo spazi (o un commento).

Un esempio.

inizio i: \u003d 2; k: \u003d i / 5 fine;

Le parole iniziano e finiscono per svolgere il ruolo di parentesi operatore. Anche il corpo del programma stesso sembra un'istruzione composta. Dopo l'ultima fine del programma, viene impostato un periodo. È impossibile trasferire il controllo al suo interno dall'esterno di un operatore composto.

L'operatore è un elemento indivisibile del programma, che consente di eseguire determinate azioni algoritmiche. La differenza tra l'operatore e altri elementi è che implica sempre un qualche tipo di azione. In Pascal, gli operatori sono composti da parole di servizio. Gli operatori utilizzati nel programma sono separati tra loro e dagli altri elementi del programma dal simbolo (;). Tutti operatori linguistici Pascal può essere diviso in due gruppi:

  1. semplice;
  2. strutturato.

Operatori semplici - si tratta di operatori che non contengono altri operatori. Questi includono:

  • operatore incaricato (: \u003d);
  • operatore di procedura;
  • operatore di salto incondizionato (GOTO).

Dichiarazioni strutturate - Questi sono operatori che contengono altri operatori. Questi includono:

  • dichiarazione composta
  • operatori delle condizioni (IF, CASE);
  • istruzioni loop (FOR, WHILE, REPEAT);
  • istruzione join (WITH).

Operatori semplici

Dichiarazione di procedura

Dichiarazione di procedura serve per chiamare la procedura.

Formato: [procedure_name] (elenco di parametri di chiamata);

Un operatore di procedura è costituito da un identificatore di procedura immediatamente seguito da un elenco di parametri di chiamata tra parentesi. Pascal ha procedure senza parametri. In questo caso, quando chiamato, l'elenco dei parametri è mancante. L'esecuzione dell'operatore della procedura porta all'attivazione delle azioni descritte nel suo corpo. Pascal ha due tipi di procedure:

  • Standard, che sono descritti nella lingua stessa e sono un'affiliazione della lingua;
  • Procedure utente create dall'utente.

Per chiamare le procedure standard, è necessario collegare nella sezione USES il nome del modulo (libreria) in cui è descritta questa procedura. Numerose procedure situate nel modulo SYSTEM sono sempre connesse automaticamente al programma e la loro connessione nella sezione USES non è necessaria. Le procedure standard per Pascal sono READ, WRITE, REWRITE, CLOSE, RESET.

LEGGI ([file_variable], [inputlist])

LEGGI (x, y)

Le procedure utente (non standard) devono essere create prima di utilizzarle nel programma e possono essere trovate nella sezione descrittiva del programma stesso o in unità di programma separate del modulo. Se la procedura è in un modulo, il nome di questo modulo deve essere menzionato nell'applicazione USES.

Dichiarazione di salto incondizionata GOTO

Formato: GOTO [etichetta];

GOTO è una parola riservata in Pascal. [etichetta] è un identificatore arbitrario che consente di contrassegnare un determinato operatore del programma e quindi fare riferimento ad esso. In Pascal, è consentito utilizzare un numero intero senza segno come etichette. L'etichetta viene posizionata davanti all'operatore contrassegnato e separata da esso (:). Un operatore può essere contrassegnato con diverse etichette. Sono anche separati l'uno dall'altro (:). Prima di utilizzare un'etichetta in una sezione operatore, deve essere descritta nella sezione ETICHETTA (sezione descrizione).

L'azione GOTO trasferisce il controllo all'operatore con tag corrispondente. Quando si utilizzano le etichette, è necessario essere guidati dalle seguenti regole:

  • l'etichetta dovrebbe essere descritta nella sezione descrizioni e tutte le etichette dovrebbero essere usate;
  • se gli interi vengono utilizzati come etichette, non vengono dichiarati.

Contraddice i principi della tecnologia di programmazione strutturale. I moderni linguaggi di programmazione non includono un tale operatore e non è necessario utilizzarlo. Inoltre, i computer moderni utilizzano il cosiddetto metodo di trasporto. Se in un programma viene trovato un operatore di salto incondizionato, tale operatore interrompe l'intera pipeline, costringendola a crearla di nuovo, il che rallenta in modo significativo il processo computazionale.

Dichiarazioni strutturate

Dichiarazioni sulle condizioni IF

L'operatore condizionale viene utilizzato nel programma per implementare la struttura algoritmica - ramificazione. In questa struttura, il processo computazionale può continuare in una delle possibili direzioni. La scelta della direzione viene generalmente effettuata controllando una condizione. Esistono due tipi di struttura del ramo: struttura a forcella e bypass.

In Pascal, l'istruzione IF condizionale è un mezzo per organizzare un processo di calcolo ramificato.

Formato: IF [boolean_expression] Quindi [statement_1]; Else [operator_2];

IF, Then, Else - parole di servizio. [operator_1], [operator_2] - operazioni Pascal ordinarie. Parte di Else è facoltativa (potrebbe essere mancante).

L'istruzione IF funziona come segue: in primo luogo, viene verificato il risultato dell'espressione logica. Se il risultato è True (TRUE), viene eseguito [statement_1], seguito dalla parola di servizio Then e [statement_2] viene saltato. Se il risultato è FALSO, [statement_1] viene ignorato e viene eseguito [statement_2].

Se manca la parte Else, l'istruzione IF non è completa:

IF [boolean_expression] Quindi [istruzione];

In questo caso, se il risultato è True (TRUE), viene eseguita [istruzione], se False (FALSE), il controllo viene trasferito all'istruzione dopo l'istruzione IF.

ci sono 2 numeri A e B. Trova il numero massimo.

Dichiarazione composta

Un operatore composto è una sequenza di operazioni arbitrarie in un programma racchiuso tra le cosiddette parentesi operatore (Begin-End).

Formato: Inizia [operatori]; Fine;

Le istruzioni composte consentono di rappresentare un gruppo di istruzioni come un'unica istruzione.

Dichiarazione di selezione CASE

Progettato per implementare più filiali, poiché l'operatore IF può implementare solo due direzioni del processo di elaborazione, utilizzarlo per implementare più filiali non è sempre conveniente. La diramazione multipla è implementata dall'istruzione CASE.

Formato: CASE [tasto_seleziona] OF

[costante_1_1]: [operatore_1];

[select_constant_2]: [operator_2];

[selection_ constant_N]: [statement_N];

ELSE [dichiarazione];

CASE, OF, ELSE, END - parole di servizio. [select_key] è un parametro di uno dei tipi ordinali. [select_constants] - costanti dello stesso tipo del tasto select che implementano la selezione. [operator_1 (N)] è un operatore ordinario. ELSE potrebbe essere assente.

L'operatore di selezione funziona come segue: prima che l'operatore funzioni, viene determinato il valore della chiave di selezione dei parametri. Questo parametro può essere espresso come variabile nel programma o in un altro modo. Quindi la chiave di selezione dei parametri viene confrontata in sequenza con la costante di selezione. Se il valore della chiave di selezione coincide con una delle costanti di selezione, viene eseguita l'istruzione che segue questa costante e tutti gli altri operatori vengono ignorati. Se la chiave di selezione non corrisponde a nessuna delle costanti, viene eseguita l'istruzione seguente Else. Spesso, Else è facoltativo e se la chiave di selezione non corrisponde a nessuna delle costanti di selezione e se Else non è presente, il controllo viene trasferito all'operatore dopo l'istruzione CASE.

L'istruzione CASE non verifica esplicitamente la condizione specifica dell'istruzione IF. Allo stesso tempo, viene eseguita un'operazione di confronto implicito. CASE introduce dissonanza nel programma Pascal, poiché l'istruzione dati termina con la parola End, che non ha una coppia Begin.

Comporre un algoritmo e un programma di attività che simulano il lavoro di un semaforo. Quando si inserisce il carattere della prima lettera dei colori del semaforo, il programma dovrebbe visualizzare un messaggio sul colore e le azioni corrispondenti.

Il programma funziona come segue: dalla tastiera, la procedura di lettura inserisce il simbolo della lettera di colore del semaforo. Se viene inserita la lettera "з" corrispondente al colore verde, il valore immesso nell'istruzione CASE nell'elenco di selezione troverà la costante di selezione "з" e verrà visualizzato il messaggio "Verde, traffico consentito". Quando inserisci il carattere delle lettere "a" e "W", verranno visualizzati messaggi simili. Quando si inserisce un altro carattere, verrà visualizzato il messaggio "Il semaforo non funziona", poiché in questo caso parte di Else, l'operatore CASE, funziona.

Dichiarazioni in loop

Una struttura algoritmica ciclica è una struttura in cui alcune azioni vengono eseguite più volte. Esistono due tipi di strutture cicliche nella programmazione: un loop con un parametro e un loop iterativo.

In un ciclo con un parametro, ci sono sempre i cosiddetti parametri del ciclo: X, X n, X k, ΔX. A volte un ciclo con un parametro viene chiamato ciclo normale. Una caratteristica è che il numero di cicli e ripetizioni può essere determinato prima dell'esecuzione del ciclo.

In un ciclo iterativo, non è possibile determinare il numero di loop prima che venga eseguito. Viene eseguito fino a quando non viene soddisfatta la condizione per la continuazione del ciclo.

Pascal ha tre operatori che implementano strutture computazionali cicliche:

  • operatore di conteggio FOR. È progettato per implementare un loop con un parametro e non può essere utilizzato per implementare un loop iterativo;
  • wHILE condizione preliminare
  • ripetitore post ciclo condizione REPEAT.

Gli ultimi due sono focalizzati sull'implementazione di un ciclo iterativo, tuttavia possono anche essere usati per implementare un ciclo con un parametro.

Dichiarazione FOR

Formato: FOR [ciclo_parametro]: \u003d [n_z_p_ts] A [k_z_p_ts] Do [operatore];

FOR, To, Do - parole di servizio. [loop_parameter] - parametro loop. [n_z_p_ts] - il valore iniziale del parametro loop. [k_z_p_ts] - il valore finale del parametro loop. [operatore] è un operatore arbitrario.

Il parametro loop deve essere una variabile di tipo ordinale. I valori di inizio e fine del parametro loop devono essere dello stesso tipo del parametro loop.

Consideriamo il lavoro dell'operatore sul suo algoritmo:

Al primo passaggio, il valore del parametro cycle accetta [n_z_p_ts], quindi viene controllato che il parametro cycle sia inferiore o uguale a [k_z_p_ts]. Questa condizione è una condizione per continuare il ciclo. Se completato, il ciclo continua il suo lavoro e viene eseguito l'operatore, dopodiché il parametro del ciclo aumenta (diminuisce) di uno. Quindi, con un nuovo valore, il parametro loop, viene verificata la condizione per continuare il loop. In tal caso, le azioni vengono ripetute. Se la condizione non è soddisfatta, il ciclo interrompe il suo funzionamento.

La dichiarazione For è significativamente diversa da operatori simili in altri linguaggi di programmazione. Le differenze sono le seguenti:

  • il corpo della dichiarazione For. L'operatore non può essere eseguito nemmeno una volta, poiché la verifica della condizione per continuare il ciclo viene eseguita prima del corpo del ciclo;
  • la fase di modifica del parametro del ciclo è costante e uguale a 1;
  • il corpo di un ciclo in un'istruzione For è rappresentato da una singola istruzione. Nel caso in cui l'azione del corpo del circuito richieda più di un semplice operatore, questi operatori devono essere trasformati in un operatore composto utilizzando le parentesi operatore (BEGIN-END);
  • Un parametro loop può essere solo una variabile di tipo ordinale.

Un esempio di utilizzo dell'istruzione FOR: compilare una tabella per la conversione di rubli in dollari.

Istruzione WHILE (istruzione loop con precondizione)

Formato: WHILE [condition] Do [statement];

MENTRE, Do - parole di servizio. [condizione] è un'espressione di un tipo logico. [operatore] è un operatore ordinario.

;

L'istruzione While funziona come segue: in primo luogo, viene verificato il risultato della condizione logica. Se il risultato è vero, l'operatore viene eseguito, dopodiché la condizione viene restituita per la verifica con il nuovo valore del parametro nell'espressione logica della condizione. Se il risultato è falso, il ciclo termina.

Quando lavori con While, devi prestare attenzione alle sue proprietà:

  • le condizioni utilizzate in While sono una condizione per continuare il ciclo;
  • nel corpo del loop, il valore del parametro della condizione inclusa nell'espressione cambia sempre;
  • il ciclo While non può essere eseguito nemmeno una volta, poiché la condizione viene verificata durante il ciclo fino al corpo del loop.

Istruzione REPEAT (istruzione loop con postcondition)

Formato: REPEAT [cycle_body]; FINO A [condizione];

L'operatore REPEAT funziona nel modo seguente: in primo luogo, vengono eseguiti gli operatori del corpo del loop, dopodiché il risultato viene verificato dalla condizione logica. Se il risultato è falso, l'operatore ritorna all'esecuzione del corpo del ciclo successivo. Se il risultato è vero, l'istruzione termina.

L'operatore Repeat ha le seguenti funzionalità:

  • in Ripeti, viene verificata la condizione per terminare il ciclo e, se la condizione è soddisfatta, il ciclo smette di funzionare;
  • il corpo del loop viene sempre eseguito almeno una volta;
  • il parametro per verificare le condizioni cambia nel corpo del loop;
  • non è necessario che gli operatori di body loop siano racchiusi tra parentesi operatore (BEGIN-END), mentre Repeat e Until svolgono il ruolo di parentesi operatore.

Calcola y \u003d sin (x), dove xn \u003d 10, xk \u003d 100, il passaggio è 10.

Gli operatori vengono eseguiti in sequenza nell'ordine in cui sono scritti nel programma. Gli operatori sono separati da punti e virgola. Tutti gli operatori Pascal sono divisi in tre gruppi: semplice (assegnazione, salto incondizionato, procedura chiamata, vuoto), input-output, strutturale (composto, condizionale, ripetizione).

Operatori semplici non contengono altri operatori. Questi includono:

1) Operatore di assegnazione (: \u003d) indica di eseguire l'espressione nella parte destra e di assegnare il risultato a una variabile il cui identificatore si trova nella parte sinistra:

identificatore:=espressione;

La variabile e l'espressione devono essere dello stesso tipo.

2) Operatore di salto incondizionato (GOTO) significa "vai a" e ha il formato:

Vai a_ marchio;

L'etichetta a cui viene trasferito il controllo deve essere descritta nella sezione etichette, l'ambito dell'etichetta è il blocco in cui è descritta.

3) L'operatore della procedura di chiamata (subroutine) serve per attivare un utente predefinito o una procedura standard:

nome della procedura[(elenco dei parametri)];

I parametri nell'elenco sono separati da virgole. Maggiori dettagli sono descritti di seguito.

4) Una dichiarazione vuota non contiene caratteri e non svolge alcuna funzione. Può trovarsi ovunque nel programma in cui è consentito un operatore.

Operatori strutturali sono strutture costruite da altri operatori secondo regole rigorosamente definite. Questi includono:

1) Dichiarazione composta rappresenta un gruppo di un numero arbitrario di operatori, separati l'uno dall'altro da un punto e virgola e limitati da parentesi operatore:

[operator1;

OperatorN]

Un operatore composto viene percepito come un intero insieme e può essere posizionato in qualsiasi punto del programma in cui la sintassi del linguaggio consente l'esistenza di un operatore.

2) Dichiarazioni condizionali fornire le prestazioni o le non prestazioni di alcuni operatori, gruppi di operatori o blocchi, a seconda delle condizioni indicate.

Dichiarazione delle condizioni può assumere una delle seguenti forme:

1. IF_ condizione_POI_ operator1_ALTRO_ operator2;

2. IF_ condizione_POI_ operatore;

Condizione - Un'espressione di tipo booleano; durante la scrittura è possibile utilizzare tutte le possibili operazioni relazionali. Se il valore dell'espressione è vero, allora operator1se falso - operator2. Nel secondo caso, se l'espressione è falsa, l'istruzione che segue il programma immediatamente dopo l'esecuzione dell'istruzione IF. Un'istruzione IF può far parte di un'altra istruzione IF, ad es. questo operatore può essere nidificato. Quando nidificato, ogni ELSE corrisponde al POI che lo precede immediatamente.

Esempio 71) Un programma per determinare l'appartenenza di un punto con le coordinate X, Y di un cerchio di raggio R centrato sull'origine.

VAR X, Y, R, L: REAL;

WRITELN ("inserisci i valori di X, Y e R");

L: \u003d SQRT (SQR (X) + SQR (Y));

IF L

ELSE WRITELN ("il punto è fuori dal cerchio");

2) una ricerca nella matrice di elementi pari a un dato valore, determinazione della loro quantità, formazione della matrice dagli indici di questi elementi della matrice e sua stampa.

LEGGI (J); (valore di impostazione)

FOR I: \u003d 1 TO N DO IF A [I] \u003d J THEN INIZIA

(stampa i risultati della ricerca)

SE S \u003d 0 THEN WRITELN ("nella matrice di elementi non ci sono uguali al dato")

ELSE BEGIN WRITELN ("nella matrice", s: 3, "elem. Equal", J);

WRITELN ("numeri di elementi uguali al dato:",)

(stampa una matrice di numeri di elementi)

FOR K: \u003d 1 TO S DO WRITE ("", C [K]);

3) Operatore di selezione ti consente di scegliere tra un numero arbitrario di opzioni disponibili e ha il formato:

ASTUCCIO_ espressione selettrice_DI

lista1: operator1;

lista2: operator2;

listn: operatorN;

ALTRO [ operatore]

Il valore viene calcolato per primo espressioni di selezione, viene fornita l'implementazione di quell'operatore la cui costante di selezione è uguale al valore corrente del selettore. Se nessuna delle costanti è uguale al valore corrente del selettore, viene eseguita l'istruzione dopo ELSE.

Esempio 8Determina l'intervallo in cui si trova il numero immesso dalla tastiera.

1..10: WRITELN ("numero I \u003d", I: 3 "è compreso tra 1 e 10");

11..20: WRITELN ("numero I \u003d", I: 3 "è compreso tra 11 e 20");

21..30: WRITELN ("numero I \u003d", I: 3 "è compreso tra 21 e 30");

ELSE WRITELN ("numero I \u003d", I: 3, "non rientra nell'intervallo 1 - 30");

4) Ripetere gli operatori utilizzato nei cicli organizzativi.

Riprovare operatore FOR è costituito da un'intestazione e un corpo del ciclo e può avere due formati:

1. FOR_ parametro loop: \u003d S1_TO_S2_DO_ operatore;

2. FOR_ parametro loop: \u003d S1_DOWNTO_S2_DO_ operatore;

S1 e S2 sono espressioni che determinano il valore iniziale e finale del parametro del ciclo. FOR ... DO - il titolo del loop, operatore - il corpo del ciclo. Il corpo del loop può essere un'istruzione semplice o composta. L'istruzione FOR assicura che il corpo del loop venga eseguito con un aumento del parametro del ciclo (TO) o con una diminuzione del parametro del ciclo (DOWNTO) di uno.

Nell'operatore di ripetizione FOR, Pascal non consente al parametro del ciclo di cambiare di un valore diverso da uno. Composto da l'operatoreoperatori proibiti che modificano il valore del parametro loop.

Esempio 91) Calcolo delle variabili A e B, i cui valori dipendono dalla variabile del ciclo e dalla loro stampa.

INIZIA A: \u003d 2 * I; B: \u003d 4 + I

WRITELN (A: 3, B: 4)

2) Convertire l'angolo in gradi in radianti.

WRITELN ("angolo in gradi angolo in radianti");

PER I: \u003d 0 A 18 INIZIO

RAD: \u003d GRAD * PI / 180;

WRITELN ("", GRAD: 12: 2, "", RAD: 12: 4);

Ripeti l'operatore ha il formato:

corpo del ciclo;

FINO A slovenia

Condizione- un'espressione di tipo booleano; durante la scrittura sono consentite operazioni booleane e operazioni relazionali. Corpo del ciclo - operatore semplice o composto. Innanzitutto, viene eseguito il corpo del loop, quindi viene verificata la condizione per uscire dal loop. Se la condizione non è soddisfatta, gli operatori del corpo del loop vengono eseguiti di nuovo, se è soddisfatta, il loop viene chiuso.

L'istruzione REPEAT ha le seguenti caratteristiche: viene eseguita almeno una volta, il corpo del ciclo viene eseguito mentre la condizione è FALSE e un numero arbitrario di istruzioni può essere nel corpo del ciclo senza staffe operatore, almeno uno degli operatori del corpo del ciclo deve influenzare il valore della condizione, altrimenti il \u200b\u200bciclo avrà una durata indefinita.

Esempio 10Calcolo y \u003d x 2 per x \u003d 8, 6, 4, 2.

WRITELN (X: 3, Y: 4);

MENTRE riprovare operatore simile all'istruzione REPEAT, ma il controllo delle condizioni di esecuzione del corpo del loop viene eseguito all'inizio del loop. L'operatore ha il formato:

MENTRE_ condizione_FARE_ corpo del ciclo;

Condizione - Espressione booleana corpo del ciclo - operatore semplice o composto. Prima di ogni esecuzione del corpo del loop, viene calcolata la condizione; se la condizione viene soddisfatta, il corpo del loop viene soddisfatto e il valore della condizione viene nuovamente calcolato. Se la condizione non viene soddisfatta, il ciclo viene chiuso e passa alla prima istruzione dopo WHILE. In questa affermazione, lo stesso programmatore deve occuparsi di modificare le variabili che determinano l'uscita dal ciclo.

Tutti gli operatori di ripetizione possono essere nidificati.

Esempio 111) Aumento della variabile I di 2 fino a quando non è inferiore a 30.

MENTRE IO<30 DO I:=I+2;

2) Calcolo delle variabili A e N secondo le formule date fino a quando 2 * A diventa inferiore o uguale a 3 * N + 1.

DURANTE 2 * A<=3*N+1 DO

INIZIA A: \u003d A * 2; N: \u003d N + 1; ND;

3) Convertire l'angolo in radianti in gradi.

WRITELN ("angolo in radianti angolo in gradi");

MENTRE RAD<6,28 DO BEGIN

GRAD: \u003d RAD * 180 / PI; WRITELN ("", RAD: 12: 4, "", GRAD: 12: 2);

LA CAMPANA

C'è chi legge questa notizia prima di te.
Iscriviti per ricevere articoli freschi.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam