Category Archives: OII – Fase Scolastica

2014/15 – Fase scolastica – 12

Si consideri la seguente funzione, che viene chiamata con n >= k >= 1.

Quale tra le seguenti espressioni viene calcolata dalla funzione f?

Si ricordi che combi

e che n! è il fattoriale di n (cioè il prodotto dei numeri interi positivi da 1 a n, ovvero 1 × 2 × 3 × … × n).

9

2014/15 – Fase scolastica – 11

È dato il seguente programma:

Cosa viene visualizzato a video dall’esecuzione del programma?

2014/15 – Fase scolastica -10

Siano A e B due insiemi di uguale cardinalità N (cioè con uguale numero di elementi) contenenti ciascuno N numeri interi diversi tra loro.
I numeri dei due insiemi A e B vengono memorizzati, ordinati per valori crescenti, nei due vettori v e w.

Si dica che insieme calcola nel vettore z il seguente codice:

8

2014/15 – Fase scolastica – 09

Si consideri la seguente funzione:

Cosa restituisce la funzione se viene chiamata passandole due numeri a e b maggiori di zero?

  1. 1 se a, b sono entrambi dispari, 2 altrimenti
  2. 1 se a, b sono entrambi numeri primi, 2 altrimenti
  3. il massimo comun divisore di a e b
  4. il minimo comune multiplo di a e b

2014/15 – Fase scolastica – 08

È dato il seguente programma

Cosa viene visualizzato a video dall’esecuzione del programma?

2014/15 – Fase scolastica – 07

È dato il seguente programma:

Cosa viene visualizzato a video dall’esecuzione del programma?

  1. 5, 3, 2, 1, 1, 0, 1, -1, 2, -3,
  2. 5, 3, 2, 1, 1, 1, 0, -1, 2, -3,
  3. 5, 3, 2, 1, 1, 0, 0, -1, 2, -3,
  4. 5, 3, 2, 1, 1, 0, 1, -1, -2, -3,

2014/15 – Fase scolastica – 06

È dato il seguente programma:

Cosa viene visualizzato a video dall’esecuzione del programma?

  1. il ciclo while non termina mai, quindi non viene visualizzato nulla
  2. c=19
  3. c=18
  4. c=17

2003/04 – Fase scolastica – 05

Si consideri la seguente funzione:

Dire quale sarà il valore tornato dalle chiamate

  1. A(3, 2)
  2. A(4, 3)
  3. A(5, 4).

Soluzione

Nella versione Pascal c’è un errore di trascrizione del testo proposto: return n*A(n-1, m) invece di m*A(n-1, m).
Pertanto la risposta corretta è 3, 1, 5.

Considerando peraltro che qualcuno avrebbe potuto identificare l’errore (confrontando con la versione C, ad esempio), si possono ritenere valide sia la risposta 8, 81, 1024 che quella 3, 1, 5.

2003/04 – Fase scolastica – 04

Si consideri la seguente funzione conta() che prende in input un vettore di numeri di lunghezza n (assumendo che n sia compreso fra 2 e 100):

Quale delle seguenti affermazioni è vera?

Risposte:

  1. la funzione restituisce il numero di interi presenti nel vettore
  2. la funzione restituisce il massimo valore presente nel vettore
  3. la funzione restituisce la lunghezza della più lunga sottosequenza ordinata (in modo strettamente crescente) all’interno del vettore
  4. nessuna delle precedenti affermazioni è vera.

Soluzione

Soluzioni commentate

Se la sottosequenza più lunga non è l’ultima del vettore, allora la funzione ne restituisce la lunghezza (risposta c); se, invece, questa sottosequenza è l’ultima del vettore, il programma non ne conta correttamente la lunghezza (risposta d).

Si decide, dunque, di ritenere valida sia la risposta c che la d.

2003/04 – Fase scolastica – 03

Si considerino le due seguenti funzioni:

Quale delle seguenti affermazioni è vera?

Risposte:

  1. la funzione A calcola il fattoriale di un numero mentre la funzione B calcola la sommatoria di tutti i numeri compresi fra 1 ed n.
  2. sia la funzione A che la funzione B calcolano la sommatoria di tutti i numeri compresi fra 1 ed n, assumendo n maggiore o uguale a 1.
  3. la funzione A e la funzione B calcolano esattamente la stessa funzione.
  4. nessuna delle precedenti affermazioni è vera.

Soluzione: b.


Soluzione

Si tratta di riconoscere semplici algoritmi e formule di base; nel caso specifico della funzione A l’algoritmo ricorsivo che calcola la somma dei naturali da 1 ad n.
Nel caso della funzione B occorre riconoscere la formula di Gauss per lo stesso calcolo.