Nome
                       
Cognome
                       
Matricola
          
Soluzione esame gg/mm/aaaa
DomandaRisposta
1

Assumendo che la classe Java "Cane" contenga nome e puntatore a una struttura "Razza" che contiene nome ed età media, creare gli oggetti per un cane lupo "Pedro" e la sua razza, vita media 15 anni.

(linguaggi di programmazione)

class Pedro {
	public static void main(String[] args) {
		Cane pedro = new Cane();
		Razza canelupo = new Razza();

		pedro.nome = "Pedro";
		pedro.razza = canelupo;

		canelupo.nome = "cane lupo";
		canelupo.media = 15;
	}
}
2

Il numero 11001101 è in binario, complemento a due a otto cifre. Calcolare quanto vale il suo valore assoluto, sempre nella stessa rappresentazione.

(rappresentazioni numeriche o logica applicata)

Un modo possibile è convertirlo in decimale, trovare il valore assoluto e convertire questo in binario.

11001101b =
- 1 × 27 + 1 × 26 + 0 × 25 + 0 × 24 + 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 =
-128 + 64 + 0 + 0 + 8 + 4 + 0 + 1 = 
-51
51 / 2 = 25 resto 1
25 / 2 = 12 resto 1
12 / 2 =  6 resto 0
 6 / 2 =  3 resto 0
 3 / 2 =  1 resto 1
 1 / 2 =  0 resto 1

Risultato: 110011.

3

Disegnare il grafo K3 e le scrivere le istruzioni che lo creano in Python.

(grafi)

  o ----- o
   \     /
     \ /
      o

from tabella import Grafo

k3 = Grafo({1,2,3}, {(1,2), (2,3), (1,3)})
print(k3)
4

Disegnare l'automa che accetta tutte le stringhe composte solo da caratteri a,b,c e che iniziano oppure terminano con a. Dire se l'automa è deterministico o meno.

(linguaggi formali)

L'automa può seguire due strade: o inizia con a oppure termina con a.

         +---+
	 |   |
 +----> OO   | abc
 |       |   |
 |       ^---+
 | a
 |
>O
 |
 | bc
 |        a
 +---> 0 ---> 00
     ^   |
     |   |
     +---+
      abc

5

Fornire due esempi di problemi che non si possono risolvere con una macchina di Turing.

(calcolabilità e complessità)

  1. problema della fermata: decidere se un programma termina
  2. determinare se un certo insieme di piastrelle dai bordi colorati possono riempire un piano infinito collimando per colore ai bordi

NOTA: risposte prive di esauriente motivazione (es. i passaggi delle operazioni numeriche) verranno considerate nulle.