Come configurare smartphone e PC. Portale informativo
  • casa
  • Windows 7, XP
  • Javascript while, do-while e for loop. L'istruzione if in linguaggio C

Javascript while, do-while e for loop. L'istruzione if in linguaggio C

Il secondo passo nella creazione di programmi a tutti gli effetti Linguaggio MatLabè lo studio degli operatori di filiale e dei loop. Con il loro aiuto, puoi implementare la logica dell'esecuzione di algoritmi matematici e creare calcoli ripetitivi (iterativi, ricorrenti).

2.1. Se dichiarazione condizionale

Per poter implementare la logica nel programma, vengono utilizzate istruzioni condizionali. Speculativamente, questi operatori possono essere rappresentati come punti chiave, raggiungendo i quali il programma fa una scelta in quale delle possibili direzioni muoversi. Ad esempio, si desidera determinare se una variabile arg contiene un numero positivo o negativo e visualizzare il messaggio appropriato sullo schermo. Per fare ciò, è possibile utilizzare l'istruzione if (if), che esegue tali controlli.

Nella sua forma più semplice, la sintassi per questa istruzione if è:

Se<выражение>
<операторы>
fine

Se il valore del parametro expression è true, l'istruzione viene eseguita, altrimenti viene ignorata dal programma. Va notato che "espressione" è un'espressione condizionale in cui viene verificata una condizione. In tavola. 2.1 presenta varianti di semplici espressioni logiche dell'istruzione if.

Tabella 2.1. Semplici espressioni booleane

Vero se a è minore di b, falso altrimenti.

Vero se a è maggiore di b, falso in caso contrario.

Vero se la variabile a è uguale alla variabile b e falso in caso contrario.

Vero se a è minore o uguale a b e falso in caso contrario.

Vero se la variabile a è maggiore o uguale alla variabile b e falso in caso contrario.

Vero se la variabile a non è uguale alla variabile b e falso in caso contrario.

Quello che segue è un esempio di implementazione della funzione sign(), che restituisce +1 se il numero è maggiore di zero, -1 se il numero è minore di zero e 0 se il numero è zero:

funzione mio_segno
x=5;
se x > 0
disp(1);
fine
se x< 0
disp(-1);
fine
se x == 0
disp(0);
fine

L'analisi dell'esempio fornito mostra che tutte e tre queste condizioni si escludono a vicenda, cioè quando uno di essi viene attivato, non è necessario controllare gli altri. L'implementazione di tale logica aumenterà la velocità di esecuzione del programma. Questo può essere ottenuto usando il costrutto

Se<выражение>
<операторы1>% eseguito se la condizione è vera
altro
<операторы2>% eseguito se la condizione è falsa
fine

Quindi l'esempio sopra può essere scritto come segue:

funzione mio_segno
x=5;
se x > 0
disp(1);
altro
se x< 0
disp(-1);
altro
disp(0);
fine
fine

Questo programma verifica innanzitutto se la variabile x è positiva e, in tal caso, sullo schermo viene visualizzato il valore 1 e tutte le altre condizioni vengono ignorate. Se la prima condizione si è rivelata falsa, l'esecuzione del programma procede altrimenti (altrimenti) alla seconda condizione, dove viene verificata la negatività della variabile x e, se la condizione è vera, viene visualizzato il valore -1 su lo schermo. Se entrambe le condizioni sono false, viene emesso 0.

L'esempio sopra può essere scritto in una forma più semplice usando un altro costrutto di istruzioni MatLab if:

Se<выражение1>
<операторы1>% eseguito se expression1 è true
altrimenti<выражение2>
<операторы2>% eseguito se expression2 è true
...
altrimenti<выражениеN>
<операторыN>% eseguito se expressionN è true
fine

ed è scritto come segue:

funzione mio_segno
x=5;
se x > 0
disp(1); % viene eseguito se x > 0
altrimenti x< 0
disp(-1); % viene eseguito se x< 0
altro
disp(0); % viene eseguito se x = 0
fine

Usando operatore condizionale se , puoi verificare condizioni (composte) più complesse. Ad esempio, devi determinare: la variabile x rientra nell'intervallo di valori da 0 a 2? Questo può essere fatto controllando contemporaneamente due condizioni: x >= 0 e x<=2. Если эти оба условия истинны, то x попадает в диапазон от 0 до 2.

Per implementare condizioni composte in MatLab, vengono utilizzati gli operatori logici:

& - E logico
| - OR logico
~ - logico NOT

Diamo un'occhiata a un esempio di utilizzo di condizioni composte. Sia richiesto di verificare se la variabile x è compresa tra 0 e 2. Il programma verrà scritto come segue:

funzione mio_se
x = 1;
se x >= 0 & x<= 2
altro
disp("x non è compreso tra 0 e 2");
fine

Nel secondo esempio verificheremo se la variabile x non appartiene all'intervallo da 0 a 2. Ciò si ottiene attivando una delle due condizioni: x< 0 или x > 2:

funzione mio_se
x = 1;
se x< 0 | x > 2
disp("x non è compreso tra 0 e 2");
altro
disp("x è compreso tra 0 e 2");
fine

Usando gli operatori logici AND, OR, NOT, puoi creare una varietà di condizioni composte. Ad esempio, puoi verificare che la variabile x sia compresa tra -5 e 5, ma non tra 0 e 1. Ovviamente, questo può essere implementato come segue:

funzione mio_se
x = 1;
se (x >= -5 & x<= 5) & (x < 0 | x > 1)
disp("x appartiene a [-5, 5] ma non è in ");
altro
disp("x non è in [-5, 5] o in ");
fine

Si noti che le parentesi sono state utilizzate nella condizione composta complessa. Il fatto è che la priorità dell'operazione AND è maggiore della priorità dell'operazione OR e se non ci fosse parentesi, allora la condizione sarebbe simile a questa: (x >= -5 e x<= 5 и x < 0) или x >1. Ovviamente, tale verifica darebbe un risultato diverso da quello atteso.

Le parentesi nella programmazione vengono utilizzate per modificare la precedenza di esecuzione delle istruzioni. Come gli operatori aritmetici, anche gli operatori logici possono essere modificati a piacimento del programmatore. Grazie all'utilizzo delle parentesi, il controllo viene effettuato prima al loro interno e poi al di fuori di essi. Ecco perché, nell'esempio sopra, sono necessari per ottenere il risultato desiderato.

La priorità delle operazioni logiche è la seguente:

NOT (~) - la priorità più alta;
E (&) - priorità media;
OR (|) è la priorità più bassa.

La capacità di controllare il flusso del programma consente di eseguire selettivamente singole sezioni di codice e questa è una caratteristica molto preziosa della programmazione. L'istruzione if select ci consente di eseguire o meno alcune sezioni di codice, a seconda che la condizione di questa istruzione sia vera o falsa. Uno degli usi più importanti dell'istruzione if select è che consente al programma di eseguire un'azione a sua scelta, a seconda di ciò che l'utente ha inserito. Un banale esempio di utilizzo di if è controllare la password inserita dall'utente, se la password è corretta il programma consente all'utente di eseguire alcune azioni, se la password è inserita in modo errato, allora il programma non consentirà all'utente l'accesso limitato risorse.

Senza l'istruzione condizionale, il programma verrebbe eseguito allo stesso modo più e più volte, indipendentemente dall'input fornito dall'utente. Se usi le istruzioni select, il risultato del programma può essere molto più interessante, poiché dipenderà direttamente dai dati di input dell'utente.

Prima di iniziare a comprendere la struttura dell'istruzione if, vale la pena prestare attenzione a valori come VERO e FALSO nel contesto della programmazione e della terminologia informatica.

True value (TRUE) ha un valore diverso da zero, FALSE equivale a zero. Quando si utilizzano gli operatori di confronto, l'operatore restituisce uno se l'espressione di confronto è vera o -0 se l'espressione condizionale è falsa. Ad esempio, l'espressione 3 == 2 restituirà il valore 0, perché tre non è uguale a due. L'espressione 5 == 5 restituisce true e restituisce il valore 1. Se lo trovi difficile da capire, prova a stampare queste espressioni sullo schermo, ad esempio: printf ("%d", 7 == 0);

Nel processo di programmazione è spesso necessario confrontare alcune variabili con altre e, sulla base di questi confronti, controllare il flusso del programma. C'è un intero elenco di operatori che ti permette di effettuare confronti, eccolo qui:

Molto probabilmente hai familiarità con questi operatori di confronto, ma per ogni evenienza, li ho mostrati nella tabella sopra. Non dovrebbero essere difficili da capire per te, la maggior parte di questi operatori li hai appresi a scuola nelle classi di matematica. Ora che capisci cosa sono VERO e FALSO, è tempo di mettere alla prova l'istruzione if select in combattimento. se struttura:

If (espressione condizionale) // ecco un'istruzione che verrà eseguita se l'espressione condizionale è vera

Ecco un semplice esempio di utilizzo dell'istruzione if:

If (7 > 6) printf("Sette è maggiore di sei");

In questo esempio, il programma valuta l'espressione condizionale: "sette è maggiore di sei?" Per vedere il risultato di questo pezzo di codice, basta incollarlo nella funzione main() e non dimenticare di includere l'intestazione stdio.h, eseguire il programma e vedere il risultato - true . La costruzione dell'istruzione if con parentesi graffe:

If (TRUE) ( /* tutto il codice inserito tra parentesi verrà eseguito */ )

Se non si utilizzano parentesi graffe, solo una, la prima istruzione, farà riferimento al corpo dell'istruzione if. Se devi controllare più istruzioni, devi metterle tra parentesi graffe. Ti consiglio di mettere sempre le parentesi dopo la dichiarazione if: questa è una buona pratica di programmazione e non ti confonderai mai nel tuo codice, poiché tale dichiarazione è la più comprensibile.

altra affermazione

A volte, quando l'espressione condizionale è falsa, sarebbe conveniente eseguire del codice diverso da quello che viene eseguito quando la condizione è TRUE. Com'è fatto?
Ecco un esempio che utilizza l'istruzione if else:

If (TRUE) ( /* esegue questo codice se la condizione è vera */ ) else ( /* esegue questo codice se la condizione è falsa */ )

altrimenti se costruisci

Di solito altre affermazioni if viene utilizzato quando è necessaria una selezione multipla, ovvero, ad esempio, vengono definite più condizioni che possono essere vere contemporaneamente, ma è necessaria una sola espressione condizionale vera. È possibile utilizzare un'istruzione if else subito dopo l'istruzione select if, dopo il suo corpo. In tal caso, se la condizione della prima istruzione select è TRUE , il costrutto else if verrà ignorato, mentre in caso contrario, se la condizione della prima istruzione select è FALSE , verrà verificato il costrutto else if. Cioè, se la condizione di un'istruzione if è vera, le altre non verranno verificate. Ora, per fissare bene tutto questo nella nostra testa e capire, diamo un'occhiata a un semplice esempio usando le costruzioni di operatori selezionati.

#includere #includere int main() ( int age; // senza una variabile, niente... printf("Quanti anni hai?"); // chiedi all'utente la sua età scanf("%d", &age); // utente inserire il numero di anni se (età< 100) { // если введенный возраст меньше 100 printf ("Вы очень молоды!\n"); // просто показываем что программа сработала верно... } else if (age == 100) { // используем else для примера printf("Молодость уже позади\n"); // \n - символ перевода на новую строку. } else { printf("Столько не живут\n"); // если ни одно из выше-перечисленных условий не подошло, то программа покажет этот вариант ответа } return 0; }

Considera interessanti espressioni condizionali usando operatori logici.

Gli operatori logici consentono di creare più complessi espressioni condizionali. Ad esempio, se vuoi controllare se la tua variabile è maggiore di 0 ma minore di 10, devi solo usare l'operatore logico - AND. Ecco come si fa - var > 0 e var< 10 . В языке СИ есть точно такой же же оператор, только обозначается он иначе — && .
Quando si utilizzano istruzioni if, è spesso necessario controllare più varie condizioni, quindi è molto importante comprendere gli operatori logici OR, NOT e AND. Gli operatori logici funzionano esattamente come gli operatori di confronto: restituiscono 0 se sono falsi o 1 se sono falsi. espressione booleana- VERO.
Di più operazioni logiche puoi leggere in .

In questo articolo, continueremo a esplorare Nozioni di base su PHP e parlare di cicli e condizioni. Innanzitutto, considera il costrutto IF - ELSE, che ti consente di eseguire determinate azioni a seconda che la condizione sia soddisfatta o meno. Quindi passeremo ai cicli. In totale, verranno prese in considerazione tre costruzioni di loop: i loop WHILE, DO - WHILE e il loop FOR.

Fondamenti di PHP. IF-ELSE costrutti

Il costrutto IF-ELSE consente di eseguire determinate azioni a seconda che le condizioni siano soddisfatte o meno. Questo design può essere ampiamente utilizzato nella pratica, ad esempio, per creare una semplice protezione di una sezione del sito con una password. Se l'utente entra password corretta, quindi gli viene concesso l'accesso alla sezione riservata. Altrimenti, possiamo dargli, ad esempio, un messaggio di errore.

In pratica, il costrutto IF-ELSE si presenta così:

Quindi commentiamo. Innanzitutto, alle variabili vengono assegnati valori. Quindi viene impostata una condizione. Se la variabile $a è uguale alla variabile $b, allora il codice nella prima parentesi graffe. Se la condizione non è soddisfatta, tutto ciò che si trova nelle prime parentesi graffe viene saltato e il codice tra parentesi graffe dopo ELSE viene eseguito. Come puoi vedere, tutto è banale e semplice.

Tranne condizioni semplici in PHP, puoi usare diverse condizioni e costrutti IF - ELSE. Consideriamo ad esempio il seguente codice:

"; if ($e != $c) ( echo "La variabile E non è uguale alla variabile C
"; ) else ( echo "La variabile E è uguale alla variabile C
"; ) ) else ( echo "Le variabili non sono uguali
"; } ?>

Innanzitutto, assegniamo determinati valori alle variabili. Quindi ci sono costrutti IF-ELSE nidificati. Come puoi vedere in PHP, ogni costrutto IF - ELSE può contenere altri costrutti simili, il cui numero, in linea di principio, non è limitato.

Ora diamo un'occhiata ai segni che vengono utilizzati nelle condizioni.

  • == - in PHP questo segno significa è uguale a. Il segno "=" in PHP è un segno di assegnazione.
  • != non uguale, ad esempio, $a != $b - la variabile $a non è uguale alla variabile $b.
  • e o &&- significare E, ad esempio, $a != $b && $c != $d - $a non è uguale a $be $c non è uguale a $d.
  • o o ||- significare O, ad esempio, $a != $b || $c != $d - $a non è uguale a $b oppure $c non è uguale a $d.

Quindi, abbiamo capito l'interpretazione di tutti i segni. Iniziamo ora a leggere il codice sopra, che a parole può essere formulato come segue:

Se la variabile $a è uguale alla variabile $b e la variabile $c è uguale alla variabile $d o la variabile $e è uguale alla variabile $d, allora visualizziamo il messaggio "Le variabili sono uguali" ed eseguiamo un'interruzione di riga. Poi facciamo un altro controllo. Se la variabile $e non è uguale alla variabile $c, visualizziamo il messaggio "La variabile E non è uguale alla variabile C" ed eseguiamo un'interruzione di riga. Se la condizione non è soddisfatta, visualizziamo "Variabile E uguale a variabile C". Se la prima condizione non è soddisfatta, tutto il codice tra le prime parentesi graffe viene saltato e viene immediatamente visualizzato il messaggio "Variabili non uguali" e viene eseguita un'interruzione di riga (tag
).

Questo conclude la nostra discussione sul costrutto IF-ELSE. Spero che tu capisca l'essenza di quanto sopra e passiamo a ulteriori studi. Fondamenti di PHP– studio dei cicli.

Fondamenti di PHP. WHILE e DO loop - WHILE

I loop in PHP hanno un'applicazione molto ampia, in quanto consentono di implementare molte funzioni presenti in ogni sito dinamico. Uno dei compiti più comuni che vengono risolti utilizzando i loop è, ad esempio, l'output ultime notizie luogo. Il punto centrale dei loop è eseguire una determinata azione purché venga soddisfatta una condizione. Ad esempio, risolviamo il problema del calcolo della somma dei numeri da uno a 10. In questo caso il numero di numeri può essere qualsiasi cosa, ma prendiamo ad esempio il numero 10, poiché in questo caso sarà più facile verificare il risultato.

Per risolvere questo problema, useremo mentre loop . Il codice per calcolare la somma dei numeri da uno a dieci sarebbe il seguente:

Prima di tutto, impostiamo le variabili $s (somma) e $i (contatore) e assegniamo loro dei valori. Quindi scriviamo il ciclo WHILE, nella cui condizione indichiamo che il ciclo deve essere eseguito fino a quando la variabile $i (contatore) è minore o uguale a 10. Scriviamo il valore della variabile $s nel corpo del ciclo e aumenta il contatore $i di uno. Questo viene fatto usando due segni + ($i++) o semplice aggiunta unità ($i = $i + 1). Il valore del contatore deve essere modificato a colpo sicuro per evitare il loop (esecuzione di loop infinito).

Ora diamo un'occhiata a come viene eseguito il programma. Per prima cosa assegniamo un valore alle variabili. La condizione viene quindi verificata nel ciclo. Se viene eseguito, viene eseguito il codice che si trova nel corpo del ciclo (tra parentesi graffe). Dopo aver eseguito il corpo del ciclo e incrementato il valore del contatore, la condizione viene nuovamente verificata e, se è vera, il ciclo si ripete nuovamente. Il ciclo si ripeterà finché la condizione è soddisfatta. Al termine del ciclo, il risultato viene visualizzato sullo schermo utilizzando l'istruzione di output Echo. Puoi trovare maggiori informazioni sulle variabili e sugli operatori di output nell'articolo "".

Allo stesso modo funziona anche il ciclo DO-WHILE. L'unica differenza qui è che il controllo delle condizioni viene eseguito dopo l'esecuzione del ciclo. Pertanto, l'esecuzione del ciclo in ogni caso avverrà almeno una volta. In pratica, il ciclo DO - WHILE si presenta così:

Come puoi vedere, nel risolvere il problema del calcolo della somma dei numeri da uno a dieci, utilizzando il ciclo DO - WHILE, alle variabili vengono prima assegnati dei valori. Quindi il codice viene eseguito e il valore del contatore viene incrementato e solo dopo tutto ciò viene verificata la condizione. Se lo è, il ciclo si ripete di nuovo. In caso contrario, il risultato viene visualizzato sullo schermo utilizzando l'istruzione di output.

Fondamenti di PHP. Ciclo FOR

Con aiuto Ciclo FOR puoi eseguire tutte le stesse azioni del ciclo WHILE. Viene utilizzato anche durante la creazione di siti, ma, a mio parere, in misura minore rispetto al ciclo WHILE. Personalmente preferisco quest'ultimo, ma nell'ambito di questo articolo prenderemo in considerazione anche il ciclo FOR, poiché fa parte del linguaggio PHP ed è necessario conoscerlo.

Diamo un'occhiata alla risoluzione del problema precedente utilizzando un ciclo FOR. Il codice per calcolare la somma dei numeri da uno a dieci usando un ciclo FOR sarebbe simile a questo:

Come puoi vedere, la sintassi del ciclo FOR è la seguente. Per prima cosa vengono inizializzate le variabili, quindi viene specificata la condizione, dopodiché viene indicata l'azione da eseguire dopo il passaggio di un ciclo. Schematicamente assomiglierà a questo:

For (inizializzazione; condizione; azione dopo l'esecuzione di un ciclo) ( Corpo del ciclo (azione))

Come potete vedere sintassi PHP simile alla sintassi C++. Se hai studiato C++, sarà più facile per te imparare PHP. Ma anche se non hai studiato altri linguaggi di programmazione prima, puoi facilmente padroneggiare le basi di PHP, poiché è uno dei più linguaggi semplici programmazione.

Questo conclude questo articolo sulle basi di PHP. Se ti piace il mio stile di scrittura degli articoli e il loro contenuto stesso, puoi iscriverti alle notizie del sito in qualsiasi modo a te conveniente nella voce "Abbonamento".

È tutto. Buona fortuna ea presto sulle pagine del blog

C++ fornisce un set standard di operatori per la selezione di una selezione e dei cicli.

Le parole chiave relative alla costruzione delle condizioni di ramificazione per il codice sono:

  • interruttore
  • rompere
  • predefinito

Le parole chiave relative alla costruzione dei cicli sono:

  • mentre
  • rompere
  • Continua

Dichiarazioni di condizioni

L'istruzione Se

Il costrutto condizione che utilizza l'istruzione if è formato come segue:

int x = 56; bool check_x() ( se (x > 0) restituisce true; restituisce false; )

In questo caso, la condizione viene posta tra parentesi dopo l'istruzione if. in questa costruzione, il codice di ritorno è vero; verrà eseguito se x è maggiore di 0. next line return false; Non si applica più al codice che verrà eseguito quando la condizione viene soddisfatta. Nei costrutti condition, se questa condizione è soddisfatta, verrà eseguita solo una riga di codice se il codice non è racchiuso tra parentesi graffe, cioè se il corpo del codice viene eseguito a condizione che non sia formato. Consideriamo due varianti del codice:

Prima opzione:

int x = 56; bool check_x() ( if (x > 0) x = 0; restituisce true; restituisce false; )

in questo codice, restituisce true; verrà sempre eseguito, perché solo la stringa x = 0 è rilevante per il codice in esecuzione;

Seconda opzione:

int x = 56; bool check_x() ( if (x > 0) ( x = 0; restituisce true; ) restituisce false; )

in questo codice, restituisce true; Sarà soddisfatto solo se la condizione x> 0 è soddisfatta.

L'affermazione altro

Il altro l'istruzione è usata insieme con il Se istruzione per formare una sequenza di condizioni.

int x = 56; bool check_x() ( if (x > 0) ( x = 0; restituisce true; ) else if (x< 0) { x = 0; return false; } else { return false; } }

L'istruzione else può essere utilizzata per aggiungere una nuova condizione se la condizione precedente, l'istruzione else if, non riesce. E come codice finale in una sequenza di condizioni, se le condizioni precedenti non sono state soddisfatte. In alternativa, è possibile utilizzare le parentesi graffe per il corpo del codice se il codice rientra in una riga.

Dichiarazioni switch, case, break, default

Il scatola dell'interruttore costrutto viene utilizzato per selezionare la ramificazione del codice, nella condizione in cui la scelta è fatta da valori interi. Ciò significa che lo switch case può essere utilizzato solo per valori interi, enumerazioni e selezioni tramite il codice simbolo.

int x = 100; bool check_x() ( switch (x) ( case 0: return true; case 50: x = 0: break; case 100: return false; default: return false; )

Nel codice precedente, la variabile x viene verificata in modo che sia uguale ai numeri 0, 50, 100. L'operatore predefinito seleziona il codice che viene eseguito se nessuna delle condizioni è soddisfatta. Si noti inoltre che nel blocco di codice con case 50: aggiunta un'istruzione break, questa istruzione esce dalla condizione, mentre l'istruzione return esce dalla funzione. Se non si aggiunge un'istruzione break, l'esecuzione del codice continuerà nel caso 100:. A causa di questa particolarità costruttiva della custodia dell'interruttore, è possibile combinare condizioni per le quali è necessario eseguire lo stesso codice. Per esempio:

int x = 100; bool check_x() ( switch (x) ( case 0: case 50: case 100: return true; default: return false; ) )

Quindi, per x uguale a 0, 50, 100, la funzione restituisce true, mentre per tutti gli altri valori la funzione restituisce false.

Anche il codice per selezionando case in questo costrutto può essere racchiuso in blocchi di codice, che limiteranno l'ambito e utilizzeranno dichiarazioni di variabili con lo stesso nome.

int x = 100; int check_x() ( switch (x) ( case 0: ( int y = 1; return y; ) case 50: ( int y = 2; return y; ) case 100: ( int y = 3; return y; ) default : ritorno x; ) )

Pertanto, restringendo l'ambito, siamo in grado di utilizzare variabili con gli stessi nomi in condizioni case. Ma non dimenticare che al di fuori dell'ambito, delimitato da parentesi graffe, la variabile y in questo caso non esisterà.

Operatori di ciclo

La dichiarazione mentre

L'istruzione while ripete il codice nel suo corpo finché la condizione è soddisfatta. Per esempio:

Int i = 0; mentre io< 10) { i = i + 1; }

In questo codice avrò 10 anni dopo il ciclo.

La dichiarazione do

L'istruzione do viene utilizzata insieme all'istruzione while e consente di eseguire il corpo del ciclo almeno una volta, prima che la condizione del ciclo venga verificata. Per esempio:

Int i = 15; do ( io = io - 5; std::cout<< i << std::endl; } while (i >0 && io< 13);

In questo codice, la variabile I inizialmente non corrisponde alla condizione e nel solito ciclo while il codice del corpo del ciclo non è stato eseguito, ma poiché viene utilizzato il ciclo do-while, il test verrà eseguito dopo che il corpo del ciclo è stato eseguito. Di conseguenza, l'output di std::cout è:

Puoi chiedere, perché c'è 0 nell'output? Non si adatta alla condizione. Anche in questo caso, per il fatto che il controllo viene eseguito dopo che il codice è stato eseguito nel corpo del ciclo. Cioè, il corpo del ciclo è stato eseguito e quindi viene eseguito un controllo, il risultato del quale il ciclo completa il suo lavoro.

La dichiarazione di rottura

Come nel caso di switch, questa istruzione può essere utilizzata in loop. Ciò è necessario per uscire dal loop, prima che la condizione del ciclo sia soddisfatta. Per esempio:

Int i = 15; mentre io< 50) { if (i < 0) { break; } i = i - 5; }

In questo esempio artificiale, risulterebbe un ciclo eterno perché la variabile i diminuisce invece di aumentare, e dalla condizione del ciclo, l'output verrà prodotto solo se i è maggiore di 50. Ma grazie all'istruzione break e alla condizione di test per il valore negativo della variabile i L'esecuzione del programma uscirà da questo ciclo non appena i diventa minore di 0.

La dichiarazione continua

Questo operatore consente di interrompere l'iterazione di un ciclo e avviare una nuova iterazione del ciclo prima di eseguire tutto il codice nel corpo del ciclo. Per esempio:

Int i = 0; mentre io< 5) { if (i == 3) { i = i + 1; continue; } std::cout << i << std::endl; i = i + 1; }

Quando eseguiamo questo codice, otteniamo il seguente output:

Cioè, l'output del numero 3 verrà omesso.

La dichiarazione for

I loop con l'istruzione for consentono di combinare l'inizializzazione delle variabili, la condizione e la modifica di queste variabili.

Cioè, il seguente ciclo while

Int i = 0; mentre io< 10) {

Sarà equivalente al seguente ciclo for:

Per (int i = 0; i< 10; i++) { // ToDo Something }

Il vantaggio di questo ciclo for sarà che la variabile I sarà nell'ambito locale del ciclo for.

I cicli For possono essere inizializzati con più variabili dello stesso tipo. Per esempio:

Per (int i = 0, *p = i< 9; i += 2) { std::cout << i << ":" << *p << " "; }

Inoltre, la condizione può essere una dichiarazione, l'inizializzazione di una variabile. Per esempio:

Char cstr = "Ciao"; for (int n = 0; char c = cstr[n]; ++n) ( std::cout<< c; }

Dato lo standard C++ 11, la variabile auto può essere utilizzata come tipo di variabile, che consente di emettere il tipo della variabile dall'inizializzatore:

std::vettore v = (3, 1, 4, 1, 5, 9); for (auto iter = v.begin(); iter != v.end(); ++iter) ( std::cout<< *iter << " "; }

Un altro punto interessante è che l'inizializzatore, la condizione e il blocco di modifica possono essere l'espressione:

int n = 0; per (std::cout<< "Loop start\n"; std::cout << "Loop test\n"; std::cout << "Iteration " << ++n << "\n") { if(n >1) pausa; )

A partire dallo standard C++11, per i cicli è stata aggiunta l'iterazione per i contenitori che supportano l'iterazione. Ad esempio, il contenitore vettoriale della libreria standard:

std::vettore v = (0, 1, 2, 3, 4, 5); for (const int& i: v) std::cout<< i << " ";

In questo codice, la costruzione del ciclo è la seguente:

For (Recuperato dal contenitore ad ogni iterazione dell'oggetto: contenitore) ( // Corpo del ciclo )

Inoltre, i cicli for basati su intervallo supportano l'istruzione auto. Per esempio:

std::vettore v = (0, 1, 2, 3, 4, 5); per (auto& i: v) std::cout<< i << " ";

La lezione tratta dell'operatore condizionale in Pascal ( Se). Spiega come utilizzare più condizioni in un costrutto ( E e O). Vengono presi in considerazione esempi di lavoro con l'operatore.

Ti ricordiamo che questo sito non ha la pretesa di essere una presentazione completa di informazioni sull'argomento. Lo scopo del portale è fornire un'opportunità per assimilare il materiale basato su esempi risolti già pronti sull'argomento "Linguaggio di programmazione Pascal" con compiti pratici per consolidare il materiale. I compiti Pascal presentati sul sito sono disposti in sequenza man mano che la loro complessità aumenta. Il sito del sito può essere utilizzato da insegnanti e docenti come ausilio visivo ausiliario.

Prima di considerare questo argomento, sono stati utilizzati principalmente algoritmi lineari in Pascal, tipici per compiti molto semplici, quando le azioni (operatori) vengono eseguite in sequenza, una dopo l'altra. Algoritmi più complessi implicano l'uso di un costrutto ramificato.

Diagramma di flusso dell'istruzione condizionale:

L'operatore condizionale in Pascal ha la seguente sintassi:

Versione ridotta:

se condizione allora affermazione;

Versione completa:

if condition then istruzione else istruzione;

L'operatore condizionale in Pascal - se - serve a organizzare l'andamento dell'attività in modo tale che la sequenza di esecuzione degli operatori cambi a seconda di alcune condizioni logiche. Una condizione logica può assumere uno di due valori: vero (vero) o falso (falso), rispettivamente, può essere vero o falso.

Dichiarazione composta

Se, in una condizione vera, è necessario eseguire più istruzioni, allora secondo le regole del linguaggio Pascal, devono essere racchiusi in un blocco, iniziando con la parola di funzione inizio e finendo con la parola di funzione fine. Tale blocco viene chiamato staffe operatore, e questa costruzione operatore composto:

Parentesi dell'operatore e operatore composto in Pascal:

se l'espressione booleana allora inizia l'istruzione1; operatore2; fine altrimenti inizia istruzione1; operatore2; fine;

La traduzione dall'operatore di condizione inglese renderà più facile comprenderne l'uso:

SE POI ALTRO
SE POI ALTRIMENTI


In una condizione (in un'espressione logica), vengono utilizzati gli operatori relazionali.
Consideriamo un elenco di operatori relazionali di Pascal:

  • altro >
  • meno
  • maggiore o uguale a in Pascal >=
  • minore o uguale a in Pascal
  • confronto in Pascal =
  • non uguale in Pascal

Esempio: trova il più grande di due numeri

opzione 1 opzione 2


Comprendere il lavoro in dettaglio Puoi usare l'operatore condizionale in Pascal guardando il video tutorial:

Esempio: calcolare il valore della variabile y da uno dei due rami

Mostra soluzione:

varx,y:reale; begin writeln("Inserisci x"); leggi(x); se x>0 allora y:=ln(x) else y:=exp(x); writeln ("y=", y:6:2) (il numero totale prenderà 6 posizioni e avrà 2 cifre decimali) end.

Nota come viene stampato y in questo esempio. Quando si deducono variabili di tipo in pascal, si può usare il cosiddetto output formattato o notazione con due due punti:
y:6:2
- il numero dopo i primi due punti (6) indica quanti caratteri occuperà il numero quando visualizzato sullo schermo
- il numero dopo i secondi due punti (2) indica quante cifre decimali verranno visualizzate nel numero reale

Pertanto, l'uso di tale notazione in pascal consente praticamente di arrotondare ai centesimi, ai millesimi, ecc.

Compito 0. Calcola il valore della variabile y utilizzando uno dei due rami:

Compito 1. Nel computer vengono inseriti due numeri. Se il primo è maggiore del secondo, calcola la loro somma, altrimenti - il prodotto. Dopodiché, il computer dovrebbe stampare il risultato e il testo PROBLEMA RISOLTO

Compito 2. Il drago cresce tre teste ogni anno, ma dopo aver compiuto 100 anni, solo due. Quante teste e quanti occhi ha il drago N anni?

Operazioni booleane in Pascal (in espressione booleana)

Quando è necessario utilizzare una condizione doppia in Pascal, sono necessarie operazioni logiche.

  • Operazione booleana E (E), posto tra due condizioni, dice che entrambe queste condizioni devono essere soddisfatte contemporaneamente (devono essere vere). Il significato logico dell'operazione è "congiunzione".
  • Posto tra due condizioni, il segno O (OR) dice che è sufficiente se almeno una di esse è vera (una delle due condizioni è vera). Il significato logico dell'operazione è "disgiunzione".
  • In Pasquale XOR - segno di un'operazione logica, che significa "stretta disgiunzione" e che indica che è necessario che una delle due condizioni sia soddisfatta (vera) e l'altra non sia soddisfatta (falsa).
  • Operazione booleana NON prima di un'espressione logica o variabile, ha il significato di "negazione" o "inversione" e indica che se la variabile o l'espressione data è vera, allora la sua negazione è falsa e viceversa.

Importante: Ciascuna delle condizioni semplici deve essere racchiusa tra parentesi.

Esempio: Considera esempi di operazioni logiche in espressioni logiche in Pascal

1 2 3 4 5 6 7 8 var: intero ; inizio:= 6 ; se (n>5 ) e (n<10 ) then writeln ("истина" ) ; if (n>7) o (n<10 ) then writeln ("истина" ) ; if (n>7)xor(n<10 ) then writeln ("истина" ) ; if not (n>7) quindi writeln("true"); fine.

var:intero; inizio:=6; se (n>5) e (n<10) then writeln("истина"); if (n>7) o (n<10) then writeln("истина"); if (n>7) xor(n<10) then writeln("истина"); if not(n>7) quindi writeln("true"); fine.

Esempio: L'azienda assume dipendenti dai 25 ai 40 anni compresi. Inserisci l'età della persona e determina se è adatta per questa azienda (mostra la risposta "idoneo" o "non adatto").
Peculiarità: dobbiamo verificare se due condizioni sono soddisfatte contemporaneamente.

Esempio: Dato un numero intero A. Verifica la verità dell'affermazione: "Il numero A è dispari".

Articoli correlati in alto