Nome
                       
Cognome
                       
Matricola
          
Esame 05/06/2025
1

Scrivere un programma Java che contiene un errore di tipo delle classi che non si verificherebbe in Python.

2

Convertire il numero decimale -23 in binario con complemento a due a sei bit, diminuirlo di uno e riconvertire il risultato in decimale.

3

Scrivere un programma che verifica se un grafo diretto ha un ciclo che contiene esattamente n elementi senza nodi ripetuti.

4

Disegnare l'automa che riconosce le stringhe 1a, 2aa, 3aaa. Disegnare poi l'automa che riconosce tutte le stringhe di questo genere, che iniziano con un numero qualsiasi seguito da un numero uguale di caratteri a. Un esempio è 12aaaaaaaaaaaa, il numero 12 seguito da dodici caratteri a. Se uno di questi due automi non esiste, spiegare perché.

5

Mostrare cosa fa la macchina di Turing che ha il seguente automa interno, usando come esempio la stringa aba. Dire quali stringhe accetta e come le modifica.

a/Db
 +-+
 | |
 | v   _
> 0 ------> (A)
 | ^
 | |
 +-+
b/Da

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