Lo struzzo Simone

Lo struzzo Simone si sposta solo nelle direzioni dei quattro assi cardinali (Nord, Sud, Est, Ovest). Ogni suo passo misura 1 metro. Dovete scrivere un programma che, data una sequenza di spostamenti di Simone, misuri quant’è la distanza fra il punto di partenza e il punto di arrivo. Dati in input Il file input.txt contiene … Leggi tutto

Numeri

Scrivete un programma che, dato un numero intero compreso tra 1 e 99 inclusi, scriva la parola italiana corrispondente. Dati in input Il file input.txt contiene un numero compreso tra 1 e 99 inclusi. Il file è costituito da un’unica riga di testo, contenente una o due cifre da 0 a 9. Dati in output … Leggi tutto

Il cassiere Camillo

È venerdì, e il cassiere Camillo ha davanti a sé una lunga fila di clienti della sua banca venuti a ritirare contante per il weekend. Per fare presto, Camillo decide di usare per ogni cliente il numero minimo possibile di banconote. Sapreste scrivere un programma per evitargli il mal di testa, considerato che ha a … Leggi tutto

La biblioteca degli smemorati

La vostra biblioteca rionale ha qualche problema nello stabilire da quanto tempo gli utenti tengono i libri. Dovete aiutarli scrivendo un programma che, prese in input due date del 2001, stabilisca quanti giorni intercorrono tra le due date. Dati in input Il file input.txt è formato da una riga che contiene la data iniziale e … Leggi tutto

2003/04 – Fase scolastica – 05

Si consideri la seguente funzione: Function A(n: Integer; m: Integer): Integer; Begin  If n = 0 Then     A:=1  Else     If n Mod 2 = 0 Then        A:=A(n Div 2, m)*A(n Div 2, m)     Else        A:=m*A(n-1, m) End; Dire quale sarà il valore tornato … Leggi tutto

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): Type   sequenza = Array[1..100] Of Integer; Function conta(vett: sequenza; n: Integer): Integer; Var  i, j, k: Integer; Begin  i:=0;  k:=0;  j:=1;   For i:=1 To n-1 Do   … Leggi tutto

2003/04 – Fase scolastica – 03

Si considerino le due seguenti funzioni: Function A(n: Integer): Integer; Begin    If n > 0 Then       A:=n+A(n-1)    Else       A:=0 End; function B(n: integer): integer; begin    B := (n*(n+1) div 2) end; Quale delle seguenti affermazioni è vera? Risposte: la funzione A calcola il fattoriale di un … Leggi tutto

2004/05 – Fase scolastica – 03

Si consideri il seguente frammento di programma: Function B(n: Integer): Integer; Forward; Function A(n: Integer): Integer; Begin    If (n = 0) Then       A:=0    Else If(n Mod 2 = 0) Then       A:=n+B(n)    Else       A:=B(n) End; Function B(n: Integer): Integer; Begin   If(n = 0) … Leggi tutto

2004/05 – Fase scolastica – 06

Si consideri la seguente funzione: Function trova(bersaglio: Integer; valori: sequenza): Integer; Var    contatore: Integer; Begin    contatore:=1;    While valori[contatore] bersaglio Do       Begin          contatore:=contatore+1;       End;    trova:=contatore-1; End; Essa serve a determinare l’indice in cui si trova un certo valore (rappresentato dal parametro bersaglio) … Leggi tutto