Istruzione condizionale nidificata. Condizioni difficili


Nei blocchi "se". e "altrimenti" può includere qualsiasi altra dichiarazione, incluse altre dichiarazioni condizionali nidificate; l'istruzione else fa riferimento all'if
precedente più vicino
Ad esempio 
se A > 10 allora
  se A > 100 allora
    writeln('Hai molti soldi.')
  altro
    writeln('Hai abbastanza soldi.')
altro
    writeln('Non hai abbastanza soldi.')
Per facilitare la comprensione del programma, tutti i blocchi "if". e "altrimenti" (insieme a then e begin - end) vengono spostati a destra di 4 caratteri - tale voce è chiamata voce ladder
Registra "scala" è una buona forma per qualsiasi programmatore!

Il problema precedente può essere risolto in modo più breve utilizzando condizioni complesse. 

Capiamo cosa sono le CONDIZIONI COMPLESSE

Le condizioni più semplici consistono in una relazione (maggiore di, minore di, ecc.) Ma a volte è necessario combinare condizioni semplici in condizioni più complesse, ad esempio: fuori fa freddo e piove. Due semplici condizioni (fuori fa freddo), (fuori piove) sono qui collegate dalla copula I.

CONDIZIONE COMPLESSA - consiste in due o più relazioni semplici (condizioni) che vengono combinate mediante operazioni logiche
  AND - moltiplicazione logica - scritto in Pascal come e
  OR - aggiunta logica - scritta in Pascal come < strong >oppure
  NON - negazione logica - scritto in Pascal come non

Operazione AND - richiede l'adempimento simultaneo di due condizioni
  condizione 1 e condizione 2   - sarà vera solo se entrambe le condizioni semplici sono vere contemporaneamente
inoltre, nel linguaggio di programmazione Pascal, se la condizione 1 è falsa, la condizione 2 non verrà verificata

L'operazione OR - richiede almeno una delle condizioni
  condizione 1 o  condizione 2   - restituirà falso solo se entrambe le condizioni semplici sono false allo stesso tempo
inoltre, nel linguaggio di programmazione Pascal, se la condizione 1 è vera, la condizione 2 non verrà verificata

Operazione NON 
 non condizione 1 - risulterà falsa, la condizione 1 è vera e viceversa
Ad esempio, le due condizioni seguenti sono equivalenti:   A > B     e    non (A <= B)

PRIORITÀ DI ESECUZIONE DI OPERAZIONI LOGICHE E RELAZIONI
1) operazioni tra parentesi
2) operazione NON
3) operazione AND
4) Operazione OR
5) relazioni logiche >, <, >=, <=, =, <>
Le parentesi vengono utilizzate per modificare l'ordine delle azioni

VARIABILI BOOL
In molti linguaggi di programmazione è possibile utilizzare variabili che memorizzano valori booleani ("true"/"false"). In Pascal, tali variabili possono assumere i valori True (vero) o False (falso). Ad esempio, un frammento di programma 
var a, b: booleano;
inizio
  a := Vero;
  b := Falso;
  writeln(a o b);
FINE.

Visualizzerà True
Le variabili booleane sono di tipo boolean, dal nome del matematico inglese George Boole, il creatore dell'algebra della logica.