2 Flashcards
Algoritmo
Astrazione di una procedura passo passo che prende qualcosa come imput e produce un certo output, scritta in un linguaggio specifico in modo che le istruzioni che definisce possano essere comunicate e comprese da un computer (sia esso umano o macchina)
Programmatore
Persona che crea algoritmi e li specifica in programmi usando uno specifico linguaggio comprensibile dal computer
Prima programmatrice
Ada Lovelace
Linea di flusso
Per definire l’ordine in cui le operazioni sono eseguite
Terminale
Indica l’inizio e la fine di un algoritmo
Processo
Usato per esprimere un’istruzione che è eseguita e che può cambiare lo stato corrente di qualche variabile usata nell’algoritmo
Decisionale
Permette di esprimere operazioni condizionali
Input/output
Permette di specificare un possibile input o output
Pseudocodice
linguaggio informale che è solitamente usato per comunicare i passi principali di un algoritmo ad un uman
Diagramma di flusso
specifico tipo di diagramma che può essere usato per scrivere algoritmi, e che si basa su un limitato insieme di oggetti grafici
Primo programma, nonché algoritmo
Creato da Ada Lovelace senza avere neppure a disposizione la macchina reale, visto che la Macchina Analitica era soltanto una macchina teorica che Babbage non costruì mai.
Problema della terminazione
capire se fosse possibile sviluppare un algoritmo che fosse in grado di rispondere se un altro algoritmo, specificato come input, terminasse la sua esecuzione o no. È possibile sviluppare un algoritmo che non termina mai?
Hilbert nel 1900
Problema della terminazione
Chi sviluppò una macchina solo per risolvere il problema della terminazione di Hilbert?
Turing nel 1936, sviluppa una macchina prettamente teorica MA l’algoritmo che verifica se un altro termina non può esistere
Risposta al problema della terminazione
l’algoritmo che verifica se un altro termina non può esistere