Programmazione 1 A.A. 2015/2016



Documenti analoghi
Algoritmi di Ricerca. Esempi di programmi Java

Programmazione 1 A.A. 2015/2016

Politecnico di Milano. Ingegneria del Software a.a. 2006/07. Appello del 14 settembre 2007 Cognome Nome Matricola

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a Primo scritto 11 Gennaio 2008

Studente (Cognome Nome): Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a Secondo Compitino 21 Dicembre 2006

Corso di Informatica Corso di Laurea in Ingegneria Gestionale a.a Secondo Compitino 17 Dicembre 2005

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 10 Settembre 2013

La gestione dell input/output da tastiera La gestione dell input/output da file La gestione delle eccezioni

Tipi primitivi. Ad esempio, il codice seguente dichiara una variabile di tipo intero, le assegna il valore 5 e stampa a schermo il suo contenuto:

COMPITO DI LABORATORIO DI PROGRAMMAZIONE Luglio Soluzione degli Esercizi

Esercizi sulla definizione di classi (Fondamenti di Informatica 1 Walter Didimo) Soluzioni

Esempi di esercizi d esame

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a settembre 2011

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 9 Settembre 2015

Parcheggio.rtf 1/8 6 gennaio Prova di programmazione: parcheggio a pagamento

INFORMATICA GRAFICA - FONDAMENTI DI INFORMATICA Ing. Civile - Edile/Architettura Dott. Penzo SOLUZIONE PROVA SCRITTA DEL 16/09/2002.

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a I scritto Febbraio 11 Febbraio 2011

SAPIENZA Università di Roma, Facoltà di Ingegneria

La selezione binaria

Esercizio 6 Realizzare una classe astratta per le Figure piane e due sottoclassi, la sottoclasse Quadrato e la sottoclasse Rettangolo.

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Corso di Laurea in Ingegneria Gestionale Esame di Informatica a.a giugno 2013

Esercitazione 6. Tutor: Ing. Diego Rughetti. Anno Accademico 2007/2008

Definizione di classi con array di oggetti

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

Esercizi della lezione 5 di Java

Funzioni in C. Violetta Lonati

Corso di Laurea in Ingegneria Gestionale Esame di Informatica - a.a luglio 2013

Programmazione ad Oggetti: JAVA. Esercitazione

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

Università di Torino Facoltà di Scienze MFN Corso di Studi in Informatica. Programmazione I - corso B a.a prof.

Gli array. Gli array. Gli array. Classi di memorizzazione per array. Inizializzazione esplicita degli array. Array e puntatori

SAPIENZA Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 13 Settembre COGNOME E NOME: MATRICOLA: Civile Ambiente e Territorio

esercizi Esercizi / problemi

12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)

Calcolare il massimo di una lista

Java threads (2) Programmazione Concorrente

Java: Compilatore e Interprete

Soluzioni degli esercizi di riepilogo (Fondamenti di Informatica 1 Walter Didimo)

ESAME SCRITTO DI ELEMENTI DI INFORMATICA E PROGRAMMAZIONE. 27 Gennaio 2015

Dipartimento di Elettronica, Informazione e Bioingegneria Politecnico di Milano

public static boolean occorre (int[] a, int n) { int i = 0; boolean trovato = false;

Test di unità con JUnit4

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

Fondamenti di Informatica 2

Linguaggi Corso M-Z - Laurea in Ingegneria Informatica A.A Esercitazione. Programmazione Object Oriented in Java

Algebra di Boole: Concetti di base. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

COGNOME E NOME (IN STAMPATELLO) MATRICOLA

Main System Monitor Keyboard

Prova di Laboratorio di Programmazione

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

Struttura di un programma Java

Quotazione compareto( ) Quotazione piurecente( ) Quotazione Quotazione Quotazione non trovato count( )

Unità B3 Strutture di controllo

Prova Scritta del 19/07/10

// inizializzazione della biblioteca con utenti, libri e prestiti // non richiesta Biblioteca.inizializza();

Pila di interi. Car 1. Car n. Pila di interi: Pila di Oggetti: Gli elementi che sono inseriti e tolti dalla pila sono numeri interi

Concetto di Funzione e Procedura METODI in Java

Richiesta pagina PHP (es: index.php)

MODULO 5 ACCESS Basi di dati. Lezione 4

La prima applicazione Java. Creazione di oggetti - 1. La prima applicazione Java: schema di esecuzione. Gianpaolo Cugola - Sistemi Informativi in Rete

10 - Programmare con gli Array

RICERCA DI UN ELEMENTO

C.I.C. Centro Informazione e Consulenza. Guida all uso del registro elettronico

Esercizi classi e array

Fondamenti di Informatica T-1, 2009/2010 Modulo 2 Prova d Esame 5 di Giovedì 15 Luglio 2010 tempo a disposizione 2h30'

3 - Variabili. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Appello di Informatica B

Java:Struttura di Programma. Fabio Scanu a.s. 2014/2015

Supermarket Progetto di Programmazione Febbraio 2010

Esercitazione Informatica I AA Nicola Paoletti

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 2

LISTE, INSIEMI, ALBERI E RICORSIONE

Realizzazione di una classe con un associazione

Prossime lezioni. Dai TDA agli oggetti. Riassunto. Riassunto TDA. Oggi. Stefano Mizzaro 1

1238 1*8 2 +2*8 1 +3*8 0

Inizializzazione, Assegnamento e Distruzione di Classi

Codifica: dal diagramma a blocchi al linguaggio C++

Compito di Fondamenti di Informatica

Esercitazione N7:Gioco dei 21 fiammiferi (impariamo java giocando)

EXCEL FUNZIONI PRINCIPALI

La struttura dati ad albero binario

Esercizi Java. class somma2 { static int somma(int a,int b) {return a+b; }

Algoritmi su array / 2

COGNOME e NOME: FIRMA: MATRICOLA:

LAVORI ESTIVI DI INFORMATICA PER LA CLASSE IV Sez. Ainf (Prof. Tessore Luca)

Esercitazione 1. Sistemi Informativi T. Versione elettronica: L01.2.DDLDMLbase.pdf

Modulo 4: Ereditarietà, interfacce e clonazione

3. un metodo che restituisce l elenco delle matricole di tutti gli studenti del corso;

Laboratorio di Fondamenti di Informatica anno accademico Esercizi proposti il

Matematica in laboratorio

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

ARRAY E STRINGHE. G. Frosini Slide 1

Corso di Fondamenti di Informatica Algoritmi su array / 2

Algoritmi e Strutture Dati & Laboratorio di Algoritmi e Programmazione

13 - Gestione della Memoria nella Programmazione Orientata agli Oggetti

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

20. Appunti sulle liste (gestione in linguaggio C#) 16/04/2015 Arraylist

Transcript:

Cognome e Nome Matricola (se disponibile) Programmazione 1 A.A. 2015/2016 Parziale del 4 Novembre 2015 Compito n 1 Esercizio 1 (4 punti) Convertire da base 16 a base 2 il numero FA1 Convertire da base 10 a base 3 il numero 134 Convertire da base 5 a base 10 il numero 340 Convertire da base 8 a base 16 il numero 430012 Esercizio 2 (5 punti) 2.1 Cosa stampa il seguente programma Java? public class Main { int[] A = {1,3,5,7,9,11,13,15,17,19; int[] B = A; imposta (A,5,10); System.out.println(A[5]); System.out.println(B[0]); System.out.println(B[5]); static void imposta (int[] a, int pos, int n){ if (a==null pos<0 pos>=a.length) return; a[pos]=n; Esercizio 3 (6 punti) Scrivere un programma in Java che Chiede all utente di inserire da tastiera un numero intero compreso tra 0 e 10000, e ripete tale richiesta finché l utente non inserisce un numero valido; Chiede (ad un altro utente) di indovinare il numero inserito al punto 1. Ad ogni tentativo, il programma notifica all utente se il numero inserito è minore o maggiore del numero da indovinare. Appena l utente indovina il numero, viene stampato il numero di tentativi che ha utilizzato. Esempio di programma per leggere un intero (int numero) da tastiera: import java.util.scanner; public class MainClass { Scanner scanner= new Scanner (System.in); int numero = scanner.nextint(); scanner.nextline();

Esercizio 4 (12 punti) Dato un array a di numeri interi, un picco è definito come una posizione i (i=1,,a.length 2) dell array tale che a[i]>a[i 1] e a[i]>a[i+1]. 4.1) Scrivere un metodo static int contapicchi (int[] a) che, preso come parametro un array di numeri interi a, restituisce il numero di picchi dell array a. Se a è null o è un array vuoto, viene restituito 0. 4.2) Scrivere un metodo static int[] elencoposizionipicchi (int[] a) che, preso come parametro un array di numeri interi a, sfruttando il metodo precedente, crea e restituisce un nuovo array della opportuna lunghezza contenente tutte e sole le posizioni di a che sono dei picchi. Se a è null, viene restituito null. Ad esempio, se a = { 10, 4, 2, 20, 3, 2, 1, 4, 10, il metodo deve restituire {1, 3. Esercizio 5 (6 punti) Dato un array a di numeri interi, un intero n si dice componibile per l array a, se esistono due posizioni distinte i e j di a entrambe contenenti elementi diversi da 0 e tali a[i]+a[j]=n. Ad esempio, se a = { 10, 4, 2, 20, 3, 4, 1, 4, 10, 7 è componibile in quanto è uguale a 4+3. Scrivere un metodo static boolean componibile (int[] a, int n) che preso come parametro un array a di numeri interi ed un intero n, restituisce true se n è componibile per l array a, false altrimenti. Se a è null, viene restituito false. Regole per lo svolgimento della prova scritta: Per svolgere il compito si hanno a disposizione 90 minuti. Scrivere subito nome, cognome, matricola e numero del compito su OGNI FOGLIO. Le risposte ai primi due esercizi devono essere date direttamente nei riquadri di questo foglio. Durante la prova scritta non è possibile abbandonare l aula. Non è ammesso per nessun motivo comunicare in qualsiasi modo con altre persone Non è possibile consultare appunti, libri, dispense o qualsiasi altro materiale. Qualsiasi strumento elettronico di calcolo o comunicazione (telefoni cellulari, calcolatrici, palmari, computer, etc ) deve essere completamente disattivato e depositato in vista sulla cattedra Mettere in vista sul banco il proprio libretto universitario o documento di identità.

Cognome e Nome Matricola (se disponibile) Programmazione 1 A.A. 2015/2016 Parziale del 4 Novembre 2015 Compito n 2 Esercizio 1 (4 punti) Convertire da base 16 a base 2 il numero E05 Convertire da base 10 a base 5 il numero 134 Convertire da base 3 a base 10 il numero 210 Convertire da base 8 a base 16 il numero 730210 Esercizio 2 (5 punti) 2.1 Cosa stampa il seguente programma Java? public class Main { int[] A = {2,4,6,8,10,12,14,16,18,20; int[] B = A; imposta (A,5,11); System.out.println(A[5]); System.out.println(B[0]); System.out.println(B[5]); static void imposta (int[] a, int pos, int n){ if (a==null pos<0 pos>=a.length) return; a[pos]=n; Esercizio 3 (6 punti) Scrivere un programma in Java che Chiede all utente di inserire da tastiera un numero intero compreso tra 50 e 2500, e ripete tale richiesta finché l utente non inserisce un numero valido; Chiede (ad un altro utente) di indovinare il numero inserito al punto 1. Ad ogni tentativo, il programma notifica all utente se il numero inserito è minore o maggiore del numero da indovinare. Appena l utente indovina il numero, viene stampato il numero di tentativi che ha utilizzato. Esempio di programma per leggere un intero (int numero) da tastiera: import java.util.scanner; public class MainClass { Scanner scanner= new Scanner (System.in); int numero = scanner.nextint(); scanner.nextline();

Esercizio 4 (6 punti) Dato un array a di numeri interi, una depressione è definita come una posizione i (i=1,,a.length 2) dell array tale che a[i]<a[i 1] e a[i]<a[i+1]. Scrivere un metodo static int contadepressioni (int[] a) che, preso come parametro un array di numeri interi a, restituisce il numero di depressioni dell array a. Se a è null o è un array vuoto, viene restituito 0. Esercizio 5 (12 punti) Dato un array a di numeri interi, un intero n si dice componibile per l array a, se esistono due posizioni distinte i e j di a entrambe contenenti elementi diversi da 0 e tali a[i]*a[j]=n. Ad esempio, se a = { 10, 4, 2, 20, 3, 4, 1, 4, 10, 12 è componibile in quanto è uguale a 4*3. 5.1) Scrivere un metodo static boolean componibile (int[] a, int n) che preso come parametro un array a di numeri interi ed un intero n, restituisce true se n è componibile per l array a, false altrimenti. Se a è null, viene restituito false. 5.2) Scrivere un metodo static int[] estraicomponibili (int[] a) che preso come parametro un array a di numeri interi, sfruttando il metodo precedente, crea e restituisce un array di interi dell opportuna lunghezza contenente tutti e soli gli elementi di a che sono componibili per l array a, senza ripetizioni. Se a è null, viene restituito null. Ad esempio, se a = { 10, 4, 2, 20, 3, 4, 1, 5, 10, il metodo deve restituire {20, 10. Regole per lo svolgimento della prova scritta: Per svolgere il compito si hanno a disposizione 90 minuti. Scrivere subito nome, cognome, matricola e numero del compito su OGNI FOGLIO. Le risposte ai primi due esercizi devono essere date direttamente nei riquadri di questo foglio. Durante la prova scritta non è possibile abbandonare l aula. Non è ammesso per nessun motivo comunicare in qualsiasi modo con altre persone Non è possibile consultare appunti, libri, dispense o qualsiasi altro materiale. Qualsiasi strumento elettronico di calcolo o comunicazione (telefoni cellulari, calcolatrici, palmari, computer, etc ) deve essere completamente disattivato e depositato in vista sulla cattedra Mettere in vista sul banco il proprio libretto universitario o documento di identità.

Cognome e Nome Matricola (se disponibile) Programmazione 1 A.A. 2015/2016 Parziale del 4 Novembre 2015 Compito n 3 Esercizio 1 (4 punti) Convertire da base 16 a base 2 il numero AA0 Convertire da base 10 a base 5 il numero 394 Convertire da base 3 a base 10 il numero 221 Convertire da base 8 a base 16 il numero 315771 Esercizio 2 (5 punti) 2.1 Cosa stampa il seguente programma Java? public class Main { int[] A = {4,40,6,80,10,12,14,16,18,20; int[] B = A; imposta (A,5,19); System.out.println(A[5]); System.out.println(B[0]); System.out.println(B[5]); static void imposta (int[] a, int pos, int n){ if (a==null pos<0 pos>=a.length) return; a[pos]=n; Esercizio 3 (6 punti) Scrivere un programma in Java che Chiede all utente di inserire da tastiera un numero intero compreso tra 50 e 500, e ripete tale richiesta finché l utente non inserisce un numero valido; Chiede (ad un altro utente) di indovinare il numero inserito al punto 1. Ad ogni tentativo, il programma notifica all utente se il numero inserito è minore o maggiore del numero da indovinare. Appena l utente indovina il numero, viene stampato il numero di tentativi che ha utilizzato. Esempio di programma per leggere un intero (int numero) da tastiera: import java.util.scanner; public class MainClass { Scanner scanner= new Scanner (System.in); int numero = scanner.nextint(); scanner.nextline();

Esercizio 4 (12 punti) Dato un array a di numeri interi, una depressione è definita come una posizione i (i=1,,a.length 2) dell array tale che a[i]<a[i 1] e a[i]<a[i+1]. 4.1) Scrivere un metodo static int contadepressioni (int[] a) che, preso come parametro un array di numeri interi a, restituisce il numero di depressioni dell array a. Se a è null o è un array vuoto, viene restituito 0. 4.2) Scrivere un metodo static int[] elencoposizionidepressioni (int[] a) che, preso come parametro un array di numeri interi a, sfruttando il metodo precedente, crea e restituisce un nuovo array della opportuna lunghezza contenente tutte e sole le posizioni di a che sono delle depressioni. Se a è null, viene restituito null. Ad esempio, se a = { 10, 4, 1, 20, 3, 2, 1, 4, 10, il metodo deve restituire {2, 6. Esercizio 5 (6 punti) Dato un array a di numeri interi, un intero n si dice componibile per l array a, se esistono due posizioni distinte i e j di a entrambe contenenti elementi diversi da 0 e tali a[i] a[j]=n. Ad esempio, se a = { 10, 4, 2, 20, 3, 4, 1, 4, 10, 3 è componibile in quanto è uguale a 4 1. Scrivere un metodo static boolean componibile (int[] a, int n) che preso come parametro un array a di numeri interi ed un intero n, restituisce true se n è componibile per l array a, false altrimenti. Se a è null, viene restituito false. Regole per lo svolgimento della prova scritta: Per svolgere il compito si hanno a disposizione 90 minuti. Scrivere subito nome, cognome, matricola e numero del compito su OGNI FOGLIO. Le risposte ai primi due esercizi devono essere date direttamente nei riquadri di questo foglio. Durante la prova scritta non è possibile abbandonare l aula. Non è ammesso per nessun motivo comunicare in qualsiasi modo con altre persone Non è possibile consultare appunti, libri, dispense o qualsiasi altro materiale. Qualsiasi strumento elettronico di calcolo o comunicazione (telefoni cellulari, calcolatrici, palmari, computer, etc ) deve essere completamente disattivato e depositato in vista sulla cattedra Mettere in vista sul banco il proprio libretto universitario o documento di identità.

Cognome e Nome Matricola (se disponibile) Programmazione 1 A.A. 2015/2016 Parziale del 4 Novembre 2015 Compito n 4 Esercizio 1 (4 punti) Convertire da base 16 a base 2 il numero BC3 Convertire da base 10 a base 3 il numero 281 Convertire da base 5 a base 10 il numero 412 Convertire da base 8 a base 16 il numero 571244 Esercizio 2 (5 punti) 2.1 Cosa stampa il seguente programma Java? public class Main { int[] A = {2,2,5,6,9,10,12,13,14,15; int[] B = A; imposta (A,5,18); System.out.println(A[5]); System.out.println(B[0]); System.out.println(B[5]); static void imposta (int[] a, int pos, int n){ if (a==null pos<0 pos>=a.length) return; a[pos]=n; Esercizio 3 (6 punti) Scrivere un programma in Java che Chiede all utente di inserire da tastiera un numero intero compreso tra 0 e 1000, e ripete tale richiesta finché l utente non inserisce un numero valido; Chiede (ad un altro utente) di indovinare il numero inserito al punto 1. Ad ogni tentativo, il programma notifica all utente se il numero inserito è minore o maggiore del numero da indovinare. Appena l utente indovina il numero, viene stampato il numero di tentativi che ha utilizzato. Esempio di programma per leggere un intero (int numero) da tastiera: import java.util.scanner; public class MainClass { Scanner scanner= new Scanner (System.in); int numero = scanner.nextint(); scanner.nextline();

Esercizio 4 (6 punti) Dato un array a di numeri interi, un picco è definito come una posizione i (i=1,,a.length 2) dell array tale che a[i]>a[i 1] e a[i]>a[i+1]. Scrivere un metodo static int contapicchi (int[] a) che, preso come parametro un array di numeri interi a, restituisce il numero di picchi dell array a. Se a è null o è un array vuoto, viene restituito 0. Esercizio 5 (12 punti) Dato un array a di numeri interi, un intero n si dice componibile per l array a, se esistono due posizioni distinte i e j di a entrambe contenenti elementi diversi da 0 e tali a[i]+a[j]=n. Ad esempio, se a = { 10, 4, 2, 20, 3, 4, 1, 4, 10, 7 è componibile in quanto è uguale a 4+3. 5.1) Scrivere un metodo static boolean componibile (int[] a, int n) che preso come parametro un array a di numeri interi ed un intero n, restituisce true se n è componibile per l array a, false altrimenti. Se a è null, viene restituito false. 5.2) Scrivere un metodo static int[] estraicomponibili (int[] a) che preso come parametro un array a di numeri interi, sfruttando il metodo precedente, crea e restituisce un array di interi dell opportuna lunghezza contenente tutti e soli gli elementi di a che sono componibili per l array a, senza ripetizioni. Se a è null, viene restituito null. Ad esempio, se a = { 10, 4, 2, 20, 3, 4, 1, 4, 10, il metodo deve restituire {4, 3, 10. Regole per lo svolgimento della prova scritta: Per svolgere il compito si hanno a disposizione 90 minuti. Scrivere subito nome, cognome, matricola e numero del compito su OGNI FOGLIO. Le risposte ai primi due esercizi devono essere date direttamente nei riquadri di questo foglio. Durante la prova scritta non è possibile abbandonare l aula. Non è ammesso per nessun motivo comunicare in qualsiasi modo con altre persone Non è possibile consultare appunti, libri, dispense o qualsiasi altro materiale. Qualsiasi strumento elettronico di calcolo o comunicazione (telefoni cellulari, calcolatrici, palmari, computer, etc ) deve essere completamente disattivato e depositato in vista sulla cattedra Mettere in vista sul banco il proprio libretto universitario o documento di identità.