





















Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Una panoramica introduttiva all'informatica di base, con un focus sui concetti fondamentali di algoritmi e computabilità. Il testo include esempi pratici e storici, oltre a spiegazioni dettagliate. disponibile sotto licenza Creative Commons Attribuzione 4.0 Internazionale.
Tipologia: Slide
1 / 29
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!






















Mentre aspettiamo elimina le distrazioni
Luigi Asprino Dipartimento di Filologia Classica e Italianistica, Università di Bologna, Bologna, Italia [email protected] - https://www.unibo.it/sitoweb/luigi.asprino Quest'opera è distribuita con Licenza Creative Commons Attribuzione 4.0 Inter nazionale Autore delle slide: prof. Silvio Peroni
Sorgente: https://www.ikea.com/ch/it/catalog/products/S09017826/
Sorgente: https://www.swiss-jazz.ch/standards-jazz/RemarkYouMade.pdf
Un’astrazione di una procedura passo passo che prende qualcosa come input 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 in modo da ottenere qualcosa come conseguenza dell’ elaborazione di qualche materiale di input Un algoritmo è: Un programmatore è una persona che crea algoritmi e li specifica in programmi usando uno specifico linguaggio comprensibile dal computer (elettronico)
Tra le varie annotazioni che Ada aggiunse al testo, c’era anche una descrizione di come usare la Macchina Analitica per calcolare i numeri di Bernoulli Questo è riconosciuto come il primo programma della storia dei computer, creato senza avere a disposizione la macchina reale, visto che la Macchina Analitica era soltanto teorica, che di fatto fa di Ada la prima programmatrice della storia “[La Macchina Analitica] potrebbe operare su altre cose oltre ai numeri, se si trovassero oggetti le cui relazioni fondamentali possano essere espresse da quelle della scienza astratta delle operazioni” Scienza astratta delle operazioni = informatica
Non esiste un linguaggio standard per descrivere un algoritmo in modo che possa essere immediatamente comprensibile da un qualunque computer Di solito si usa uno pseudocodice , ovvero un linguaggio informale per descrivere i passi principali di un algoritmo ad un umano, anche se non è direttamente eseguibile da un computer elettronico – anche se i suoi costrutti sono strettamente connessi con quelli tipicamente definiti nei linguaggi di programmazione Un esempio di pseudocodice: i diagrammi di flusso – li abbiamo informalmente introdotti prima quando abbiamo visto la “Mappa per le discussioni”
Prendi in input tre stringhe , ovvero due parole e un riferimento bibliografico di un articolo pubblicato, e restituisci : ● (^) 2 se entrambe le parole sono contenute nel riferimento bibliografico ● (^) 1 se solo una delle parole è contenuta nel riferimento bibliografico ● (^0) altrimenti Esempio riferimento bibliografico: Shannon, C. E. (1948). A Mathematical Theory of Communication. Bell System Technical Journal, 27(3), 379–423. doi:10.1002/j.1538-7305.1948.tb01338.x Esempio parole: “Theory” e “Journal”, “Conference” e “Bells”, “Logical” e “System”
Prendi in input due stringhe, una parola e un riferimento bibliografico, e restituisci 1 se la parola è contenuta nel riferimento bibliografico, 0 altrimenti
Prendi in input due parole e un riferimento bibliografico e restituisci 2 se entrambe le parole sono contenute nel riferimento bibliografico 1 se solo una delle parole è contenuta nel riferimento bibliografico,0 altrimenti
Possiamo usare gli algoritmi per computare qualsiasi cosa vogliamo? Esiste un limite a quello che possiamo computare? È possibile definire un problema computazionale – ovvero un problema che può essere risolto algoritmicamente da un computer – che non può essere risolto da nessun algoritmo? Che ne pensate?