unità didattica 4 Le funzioni del Pascal · 26 Modulo on line • Uno strumento per programmare:...

5
26 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal unità didattica 4 Le funzioni del Pascal 1. Le funzioni predefinite Il Pascal contiene una ricca biblioteca di funzioni predefinite, ovvero di calcoli effettuati su dati numeri- ci o alfanumerici idonei a determinare un certo valore in uscita. Si tratta di funzioni predefinite in quanto il programmatore non deve scrivere alcuna linea di programma per dichiarare o descrivere la funzione: deve semplicemente chiedere l’esecuzione della funzione stessa tramite un’istruzione detta «richiamo di funzione». seguimi Per chiamare una funzione, in generale si deve citare il nome della funzione, citando tra parentesi la lista di pa- rametri, cioè i valori di ingresso o, eventualmente, i valori in uscita. Le funzioni si dividono in matematiche (operanti cioè su valori numerici e consistenti in calcoli matema- tici), funzioni di manipolazione di stringhe alfanumeriche ed altre funzioni che definiremo “diverse”in quanto non appartengono propriamente né alla prima né alla seconda classe. 2. Le funzioni matematiche Tra le funzioni matematiche più importanti, segnaliamo: VALORE ASSOLUTO ABS(variabile numerica) Restituisce il valore assoluto di una certa variabile numerica Esempio: a := ABS(b) Il valore assoluto di b viene posto in a. INTERO INT(variabile numerica) Restituisce la parte intera di una certa variabile numerica. Il risultato è una variabile reale. Esempio: a := INT(b) La parte intera di b viene posta in a. FRAZIONATURA FRAC(variabile numerica) Elimina la parte intera di una certa variabile numerica. Il risultato è una variabile reale. Esempio: a := FRAC(b) La parte frazionaria di b viene posta in a.

Transcript of unità didattica 4 Le funzioni del Pascal · 26 Modulo on line • Uno strumento per programmare:...

Page 1: unità didattica 4 Le funzioni del Pascal · 26 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal UD4 • Le funzioni del Pascal 2627 unità didattica 4

26 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal UD4 • Le funzioni del Pascal 26 UD4 • Le funzioni del Pascal 27

unità didattica 4Le funzioni del Pascal

1.LefunzionipredefiniteIl Pascal contiene una ricca biblioteca di funzioni predefinite, ovvero di calcoli effettuati su dati numeri-ci o alfanumerici idonei a determinare un certo valore in uscita.Si tratta di funzionipredefinite in quanto il programmatore non deve scrivere alcuna linea di programma per dichiarare o descrivere la funzione: deve semplicemente chiedere l’esecuzione della funzione stessa tramite un’istruzione detta «richiamo di funzione».

seguimiPer chiamare una funzione, in generale si deve citare il nome della funzione, citando tra parentesi la lista di pa-rametri, cioè i valori di ingresso o, eventualmente, i valori in uscita.

Le funzioni si dividono in matematiche(operanti cioè su valori numerici e consistenti in calcoli matema-tici), funzioni dimanipolazionedistringhealfanumericheed altre funzioni che definiremo “diverse”in quanto non appartengono propriamente né alla prima né alla seconda classe.

2.LefunzionimatematicheTra le funzioni matematiche più importanti, segnaliamo:

VALOREASSOLUTOABS(variabile numerica)

Restituisce il valore assoluto di una certa variabile numerica

Esempio:a := ABS(b)

Il valore assoluto di b viene posto in a.

INTEROINT(variabile numerica)

Restituisce la parte intera di una certa variabile numerica. Il risultato è una variabile reale.

Esempio:a := INT(b)

La parte intera di b viene posta in a.

FRAZIONATURAFRAC(variabile numerica)

Elimina la parte intera di una certa variabile numerica. Il risultato è una variabile reale.

Esempio:a := FRAC(b)

La parte frazionaria di b viene posta in a.

Page 2: unità didattica 4 Le funzioni del Pascal · 26 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal UD4 • Le funzioni del Pascal 2627 unità didattica 4

UD4 • Le funzioni del Pascal 26 UD4 • Le funzioni del Pascal 27

TRONCATURATRUNC(variabile numerica)

Elimina la parte decimale di una certa variabile numerica. Il risultato è una variabile intera.

Esempio:a := TRUNC(b)

La parte decimale di b viene posta in a.

ARROTONDAMENTOROUND(variabile numerica)

Restituisce il numero intero più vicino (per eccesso o per difetto a seconda che la parte frazionaria ecce-da o meno 0,5) alla variabile numerica indicata.

Esempio:a := ROUND(b)

Se b = 1,6 allora a = 2; Se b = 1,4 allora a = 1; Se b = 1,5 allora a = 2

QUADRATOSQR(variabile numerica)

Restituisce il quadrato di una certa variabile numerica.

Esempio:a := SQR(b)

Il quadrato di b viene posto in a.

RADICEQUADRATASQRT(variabile numerica)

Restituisce la radice quadrata di una certa variabile numerica.

Esempio:a := SQRT(b)

La radice quadrata di b viene posta in a.

ESPONENZIALEEXP(variabile numerica)

Restituisce l’esponenziale di una certa variabile numerica.

Esempio:a := EXP(b)

L’esponenziale di b (ovvero eb) viene posto in a.

LOGARITMONEPERIANOLN(variabile numerica)

Restituisce il logaritmo neperiano (lne) di una certa variabile numerica.

Esempio:a := LN(b)

Il logaritmo neperiano di b (lne b)viene posto in a.

SENOTRIGONOMETRICOSIN(variabile numerica)

Restituisce il seno di una certa variabile numerica che esprime i radianti di un certo angolo.

Esempio:a := SIN(b)

Il seno di b viene posto in a.

COSENOTRIGONIOMETRICOCOS(variabile numerica)

Restituisce il coseno di una certa variabile numerica che esprime i radianti di un certo angolo.

Page 3: unità didattica 4 Le funzioni del Pascal · 26 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal UD4 • Le funzioni del Pascal 2627 unità didattica 4

28 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal UD4 • Le funzioni del Pascal 28 UD4 • Le funzioni del Pascal 29

Esempio:a := COS(b)

Il coseno di b viene posto in a.

DISPARITÀ ODD(variabile numerica)

Restituisce il valore booleano TRUE (VERO) o FALSE (FALSO), a seconda che la variabile numerica sia rispettivamente dispari o pari

Esempio:a := ODD(b)

Se b è dispari, a = TRUE, altrimenti a = FALSE.

NUMEROCASUALEINTERORANDOM(variabile numerica)

Restituisce un intero compreso tra 0 e la variabile numerica indicata.

Esempio:a := RANDOM(b)

In a viene posto un numero intero estratto dalla tabella dei numeri casuali, compreso tra 0 e b. NUMEROCASUALEREALE

RANDOMRestituisce un reale compreso tra 0 e 1.

Esempio:a := RANDOM

In a viene posto un numero reale estratto dalla tabella dei numeri casuali, compreso tra 0 e 1.

3.LefunzionisustringheTra le funzioni più importanti operanti su stringhe alfanumeriche, ricordiamo:

LUNGHEZZALENGTH(variabile stringa)

Restituisce il valore intero relativo alla lunghezza della variabile stringa indicata, cioè il numero di carat-teri che la costituiscono.

Esempio:a := LENGTH(b)

La lunghezza della stringa b viene posta in a.

ESTRAZIONEDIUNAPARTEDISTRINGACOPY(variabile stringa , posizione , numero)

Restituisce i caratteri pari a numero, a partire da posizione presenti in una certa variabile stringa.

Esempio:a := COPY(b, 5, 7)

Dalla stringa b viene estratto l’insieme dei 7 caratteri a partire dal quinto carattere presente nella stringa e posto in a. Se ad esempio b contenesse «TERGICRISTALLI» in a verrebbe memorizzata la parola «ICRI-STA».

CONCATENAZIONECONCAT(variabile stringa , variabile stringa, … , variabile stringa)

Restituisce una variabile stringa formata dalla concatenazione, ovvero dall’unione sequenziale accodata, delle stringhe indicate.

Esempio:a := CONCAT(b, c, d)

Page 4: unità didattica 4 Le funzioni del Pascal · 26 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal UD4 • Le funzioni del Pascal 2627 unità didattica 4

UD4 • Le funzioni del Pascal 28 UD4 • Le funzioni del Pascal 29

Nella stringa a verrà posta l’unione delle stringhe b, c e d. Ad esempio se b contenesse «ROSSI», c «VER-DI» e d «BIANCHI», in a verrebbe memorizzata la stringa «VERDIROSSIBIANCHI».

POSIZIONEPOS(variabile stringa1 , variabile stringa2)

Restituisce la posizione a partire dalla quale variabile stringa1 si trova in variabile stringa2 . Il risultato è 0 se la stringa non è stata trovata.

Esempio:a := POS(‘ROSSI’, b)

Nella variabile stringa b viene eseguita la ricerca della stringa «ROSSI»: se la ricerca ha successo, in a sarà memorizzata la posizione a partire dalla quale «ROSSI» si trova in b, altrimenti in a viene restituito il valore 0.Se b contiene «BIANCOROSSI» in a sarà memorizzato 7.

4.LealtrefunzioniTra le altre funzioni segnaliamo:

CARATTERECODICEASCIICHR(variabile numerica)

Restituisce il carattere corrispondente nel codice ASCII al numero indicato come argomento della fun-zione.Ricordiamo che tutti i 256 caratteri corrispondenti al codice ASCII sono codificati ciascuno mediante una sequenza di 8 bit.

Esempio:a := CHR(60)

Nella variabile di tipo carattere a viene posto «<» corrispondente al decimale 60.

KEYPRESSEDRestituisce il valore booleano TRUE (VERO) se è stato battuto un tasto sulla tastiera, altrimenti il valore FALSE (FALSO). Risulta molto utile nel costrutto REPEAT UNTIL.

Esempio:REPEAT UNTIL KEYPRESSED

Dato che KEYPRESSED è falso sino a che l’utente non digita qualcosa sulla tastiera, il programma si arre-sta sino a che non si batte un qualsiasi tasto.

OCCUPAZIONEINBYTESIZEOF(variabile)

Restituisce il numero di byte occupati in memoria centrale dalla variabile indicata.

Esempio:a := SIZEOF(b)

Nella variabile a viene posto un valore intero pari al numero di byte di memoria centrale occupati da b.

PRECEDENTENUMEROOCARATTERECODICEASCIIPRED(valore)

Restituisce il numero intero precedente (se valore è un numero intero) o il carattere precedente nel codi-ce ASCII (se valore è di tipo char).

Esempio:a := PRED(50)

Nella variabile a viene posto 49 che precede l’intero 50 indicato.

a := PRED(‘F’)Nella variabile a viene posto il carattere «E» che precede nel codice ASCII «F».

Page 5: unità didattica 4 Le funzioni del Pascal · 26 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal UD4 • Le funzioni del Pascal 2627 unità didattica 4

30 Modulo on line • Uno strumento per programmare: cenni al linguaggio Pascal UD4 • Le funzioni del Pascal 30

SUCCESSIVONUMEROOCARATTERECODICEASCIISUCC(valore)

Restituisce il numero intero successivo (se valore è un numero intero) o il carattere successivo nel codice ASCII (se valore è di tipo char).

Esempio:a := SUCC(50)

Nella variabile a viene posto 51 che segue immediatamente l’intero 50 indicato.

a := SUCC(‘F’)Nella variabile a viene posto il carattere «G» che segue nel codice ASCII il carattere «F».

MAIUSCOLADIUNCARATTEREUPCASE(carattere)

Restituisce la lettera maiuscola corrispondente al carattere indicato.

Esempio:a := UPCASE(‘h’)

Nella variabile a viene posto «H».

a := UPCASE(‘?’)Nella variabile a viene posto il carattere «?» dato che non esiste maiuscolo del carattere indicato.