Back
OtherItalian

Collection of exams 2012

Study material for Ingegneria del Software, shared by the Studwiz community and reviewed by moderators.

Ingegneria del SoftwareOther

Document information

What's included in this study material

Study material for Ingegneria del Software, shared by the Studwiz community and reviewed by moderators.

Import quality: text was extracted directly from the original document.

Extracted content from the document

Representative passages recognised in different parts of the material. The full extracted text remains available to search, while this compact preview makes the page easier to read.

Page 1

Politecnico di Milano Anno accademico 2012-2013 Ingegneria del Software – Appello del 19 luglio 2012 Cognome: Nome: Matricola: Sezione (segnarne una): □ Baresi □ Ghezzi □ San Pietro Istruzioni 1. La mancata indicazione dei dati anagrafici e della sezione comporta l‘annullamento del compito. 2. Al termine, consegnare solo i fogli distribuiti utilizzando il retro delle pagine in caso di necessit `a. Non separare questi fogli. Eventuali fogli di brutta, ecc. non verranno in nessun caso presi in considerazione. `E possibile scrivere in matita. 3. `E possibile consultare liberamente libri, manuali o appunti. `E proibito l’uso di ogni dispositivo elet- tronico (quali calcolatrici tascabili, telefoni cellulari, ecc.). 4. Non `e possibile lasciare l’aula conservando il tema della prova in corso. 5. Tempo a disposizione: 2h. Esercizio 1: Esercizio 2: Esercizio 3: Esercizio 4: 1 Esercizio 1 Si scrivano in JML le pre- e post- condizioni del seguente metodoSubstrings. Questo prende in ingresso due array di caratteri x e y e restituisce, in un array di interi, l’elenco, in ordine qualunque, di tutti e soli gli indici in cui y compare come sottostringa di x. Ad esempio, se x = [ abbbbbabbbabbbabb] e y = [ abb], il metodo restituisce l’array [0 6 10 14] . Soluzione: //@assignable \nothing; //@requires x!=null && y!=null; //@ensures \result != null && // \result contiene solo indici da cui inizia // una comparsa di y in x: //@ (\forall int i; 0 \le i && i< \result.length; //@ (\forall int j; 0\le j && j < y.length; //@ \result[i]+j< x.length && x[\result[i]+j]== y[j])) && // \result contiene tutti gli indici in cui compare y: //@ (\forall int i; 0 \le i && i< x.length; //@ (\forall int j; 0\le j && j < y.length; //@ i+j< x.length && x[i+j]== y[j]) //@ ==> //@ (\exists k; 0 \le k &&…

Preview

First page of the document.

First page: Collection of exams 2012