PASCAL
PRIMO LIVELLO
SECONDA LEZIONE
STRUTTURA SEQUENZIALE
LINGUAGGIO di PROGETTO
LINGUAGGIO PASCAL
Algoritmo quadrato ;
Variabili L, a, p : numeriche ;
Inizio
acquisisci p ;
L p/4 ;
a
L*L;
comunica a ;
Fine.
Program quadrato ;
Var L, a, p : real ;
Begin
readln (p) ;
L := p/4 ;
a := L * L ;
writeln (a) ;
End.
STRUTTURA ALTERNATIVA
Algoritmo due figure;
Variabili L, p:numeriche;
figura : alfanumerica;
Inizio
acquisisci L ;
acquisisci figura;
Se figura=quadrato
Allora p L * 4
Altrimenti p L * 3
comunica p;
Fine.
Program due figure;
Var L, p : real;
figura : char;
Begin
readln (L);
readln (figura);
If figura=quadrato
Then p:= L * 4
Else p:= L * 3;
Writeln (p);
End.
PROPOSIZIONI LOGICHE
NEGAZIONE di una proposizione p
è l’operazione logica che cambia il
valore di verità di una proposizione.
L’operatore Pascal della negazione è:
not e la tavola di verità è la seguente:
p
Vero
Falso
not p
Falso
Vero
PROPOSIZIONE LOGICA
CONGIUNZIONE di due proposizioni p e q è
l’operazione logica che ha per risultato una
proposizione che si considera vera solo se
sono vere entrambe le proposizioni
componenti. L’operatore Pascal della
congiunzione è and e la sua tavola di verità è
la seguente:
p
Ve ro
Ve ro
Falso
Falso
q
Ve ro
Falso
Ve ro
Falso
p a nd q
Ve ro
Falso
Falso
Falso
PROPOSIZIONE LOGICA
DISGIUNZIONE INCLUSIVA di due proposizioni p
e q è l’operazione logica che ha per risultato una
proposizione che si considera falsa solo se sono
false entrambe le proposizioni componenti.
L’operatore Pascal della disgiunzione è or ( vel ) e la
sua tavola di verità è la seguente:
p
VERO
VERO
FALSO
FALSO
q
VERO
FALSO
VERO
FALSO
p or(vel) q
VERO
VERO
VERO
FALSO
PROPOSIZIONE LOGICA
DISGIUNZIONE ESCLUSIVA di due proposizioni p
e q è l’operazione logica che ha per risultato una
proposizione che si considera falsa solo se le
proposizioni componenti hanno lo stesso valore di
verità. L’operatore Pascal della disgiunzione
esclusiva è l’operatore xor e la sua tavola di verità è
la seguente:
p
VERO
VERO
FALSO
FALSO
q
VERO
FALSO
VERO
FALSO
p xor q
FALSO
VERO
VERO
FALSO
LA SELEZIONE MULTIPLA
Nel caso che l’alternativa superi le due vie
conviene utilizzare un’altra istruzione,
che evita la lunga serie di istruzioni
if … then … else.
Si tratta dell’istruzione: Case … Of …
End.
che significa :
nel caso in cui la variabile(nome_variabile)
ha il valore di … esegui questa serie
Dato il lato, calcolare il perimetro, a scelta, tra il
triangolo equilatero, il quadrato e l’esagono regolare.
Algoritmo multiscelta;
variabili L, p, f::numeriche;
inizio comunica(‘inserisci L’);
acquisisci L;
comunica(‘1=T;2=Q;3=E’);
acquisisci f;
nel caso che f abbia valore di
1: p = L*3 comunica p;
2: p = L*4 comunica p;
3: p = L*6 comunica p;
fine; fine.
Program multiscelta;
uses wincrt;
Var L, p, f : integer;
Begin writeln(‘inserisci L’);
Readln (L);
Writeln(‘1=T;2=Q;3=E’);
Readln (f);
Case f Of
1: p:= L*3 writeln(p);
2: p:= L*4 writeln(p);
3: p:= L*6 writeln(p);
End; End.