Podcast
Questions and Answers
Qual è il primo passo fondamentale nella risoluzione di un problema secondo il materiale presentato?
Qual è il primo passo fondamentale nella risoluzione di un problema secondo il materiale presentato?
Quale delle seguenti NON è una proprietà essenziale di un algoritmo?
Quale delle seguenti NON è una proprietà essenziale di un algoritmo?
In relazione all'esempio della biblioteca, quale scopo principale si raggiunge con la formulazione di un algoritmo?
In relazione all'esempio della biblioteca, quale scopo principale si raggiunge con la formulazione di un algoritmo?
Cosa si intende per 'sotto-algoritmo' nel contesto della programmazione?
Cosa si intende per 'sotto-algoritmo' nel contesto della programmazione?
Signup and view all the answers
Qual è l'obiettivo principale dell'algoritmo del crivello di Eratostene?
Qual è l'obiettivo principale dell'algoritmo del crivello di Eratostene?
Signup and view all the answers
Tra le strutture di controllo presentate, quale permette di ripetere un blocco di istruzioni finché una condizione è vera?
Tra le strutture di controllo presentate, quale permette di ripetere un blocco di istruzioni finché una condizione è vera?
Signup and view all the answers
Cosa caratterizza una 'azione elementare' nell'ambito della programmazione?
Cosa caratterizza una 'azione elementare' nell'ambito della programmazione?
Signup and view all the answers
Quale tra le seguenti opzioni descrive meglio il processo di 'formalizzazione dell'informazione' secondo il materiale?
Quale tra le seguenti opzioni descrive meglio il processo di 'formalizzazione dell'informazione' secondo il materiale?
Signup and view all the answers
Flashcards
Problema
Problema
Un problema è una situazione che richiede una soluzione.
Comprensione del problema
Comprensione del problema
La comprensione di un problema implica identificare l'obiettivo finale e i vincoli che limitano la soluzione.
Soluzione del problema
Soluzione del problema
Una soluzione al problema è un metodo che porta alla soluzione desiderata, rispettando i vincoli del problema.
Algoritmo
Algoritmo
Signup and view all the flashcards
Proprietà di un algoritmo
Proprietà di un algoritmo
Signup and view all the flashcards
Procedura non chiara
Procedura non chiara
Signup and view all the flashcards
Sotto-algoritmo
Sotto-algoritmo
Signup and view all the flashcards
Il crivello di Eratostene
Il crivello di Eratostene
Signup and view all the flashcards
Study Notes
Informatica (Fisica - Informatica - Statistica)
- Corso di Laurea Magistrale a ciclo unico in Medicina Veterinaria
- Anno Accademico 2024/2025
- Coordinatore del Corso Integrato: Prof. Nicola Toschi
- Docente: Dr. Luigi Vesce
- Email: [email protected]
Formalizzazione dell'Informazione - Algoritmi
- Problema: Descrizione di un problema, individuazione di una soluzione, identificazione del punto di partenza, dati necessari, scelta di metodologie/tecniche e ordine di esecuzione.
- Fase dell'Analisi: Dalla specifica di un problema al linguaggio macchina, comprensione del problema, modellazione del problema e ricerca della soluzione.
- Problema - Comprensione: Eliminare ambiguità della formulazione, focalizzare gli obiettivi, evidenziare obiettivi, regole, dati espliciti ed impliciti, eliminare dettagli inutili ed ambigui.
- Problema - Soluzione: La soluzione è presentata come una sequenza di operazioni, l'algoritmo risolutivo, che, una volta eseguite, portano alla soluzione del problema. Dati, Algoritmo, Soluzione.
- Algoritmo - Definizione: Una sequenza di azioni che trasformano i dati iniziali in un numero finito di passi elementari e non ambigui per ottenere il risultato finale. Deve essere valida per un insieme definito di dati iniziali e eseguibile da un esecutore. Dati iniziali, Algoritmo, Dati finali (soluzione).
- Algoritmo - Proprietà: Finitezza (numero finito di passi elementari), non ambiguità (determinismo), realizzabilità, efficienza (auspicabile).
- Esempio (Caso pratico): Come si cucina un uovo al burro
- Sciogliere il burro (20 g.),
- Aspettare che il colore del burro cambi,
- Rompere il guscio dell'uovo,
- Far scivolare albume e tuorlo nel tegamino,
- Salare,
- Spegnere il fuoco quando l'albume è ben rappreso.
- Procedura non chiara: Operazioni non semplici/elementari, necessità di scomporre il problema in sottoproblemi più semplici.
- Esempio – scomporre il problema: Problema diviso in sottoproblemi (es. spezzare un guscio d'uovo, calcolo di aree complesse).
- Esempio – Gestione Biblioteca
- Posizione univoca di ogni libro: numero scaffale e posizione nello scaffale.
- Schede ordinate per autore/titolo, con cognome/nome autore, titolo, data pubblicazione, numero scaffale, posizione del libro sullo scaffale.
- Scheda della Biblioteca (Esempio): Autore/i e titolo, scaffale e posizione.
- Formulazione Algoritmo: Decidere il libro richiesto, prelevare il libro richiesto. Se un passo non è chiaro, occorre scomporlo in un algoritmo più semplice. Top-Down o raffinamenti successivi.
- Algoritmo per il prelievo: Decidere il libro, ricercarne la scheda, annotare numero scaffale e posizione, trovare lo scaffale, accedere alla posizione ed ottenere il libro, registrare il prestito.
- Sotto-algoritmo:
- Prendere la prima scheda.
- Valutare se è quella cercata; se non lo è, prendere la successiva e ripetere l’operazione.
- Se non c'è nessuna scheda corrispondente, il libro non esiste.
- Sotto-algoritmo migliore: Procedere con una ricerca binaria sulla metà superiore o inferiore dello schedario schedario.
- Ulteriore Miglioramento (caso pratico): L'algoritmo termina se la scheda centrale corrisponde al libro cercato o se la parte di schedario da consultare è vuota.
- Il crivello di Eratostene: Metodo per trovare tutti i numeri primi compresi tra 2 ed n in modo efficiente.
- Esempio (algoritmo setaccio): - Si crea una lista di numeri da 2 a n. - Si estrae il primo numero (primo). - Si eliminano tutti i multipli del primo. - Se la lista non è vuota, si torna al passo precedente.
- Miglioramento: Non è più necessario setacciare la lista quando si supera n/2; tutto ciò che rimane è un numero primo. Miglioramento dell'analisi e della terminazione dell'algoritmo.
- Osservazioni: Analisi attenta del problema, comprensione degli invarianti, concetto di algoritmo parametrico, algoritmo organizzato come iterazione su un insieme di dati (elaborazione e smaltimento).
- Esempio – Algoritmo Risveglio: Alzarsi dal letto, togliere il pigiama, fare la doccia, vestirsi, fare colazione, prendere il bus (o l'ombrello se piove).
- Strutture di controllo:
- Sequenza: Le istruzioni vengono eseguite nell'ordine in cui sono presentate.
- Iterazione: Le istruzioni vengono ripetute fino a quando non si verifica una condizione.
- Esempio: Ripeti: componi una cifra del numero, fino al completamento
- Condizione: Le istruzioni vengono eseguite a seconda di una condizione.
- Esempio: Se il numero è libero, allora attendi la risposta, conduci la conversazione, deponi il ricevitore; altrimenti, deponi il ricevitore.
- Algoritmo (di nuovo): Sequenza finita di istruzioni comprensibili da un esecutore. Descrive come realizzare un compito (es. montaggio elettrodomestico, utilizzo bancomat).
- Esecutori e linguaggi: Definizione degli elementi per definire un esecutore (insieme operazioni, sintassi, semantica); calcolatore che capisce le istruzioni in linguaggio macchina (es. operazioni semplici, attenzione ad efficienza, velocità, complessità).
- Soluzione per l'esecutore: Se il problema è semplice per l'esecutore, lo esegue; altrimenti lo scompone in sottoproblemi più elementari, la soluzione è effettiva se l'esecutore le può comprendere ed eseguire.
- Azione elementare: Proprietà: Finitezza (azione che termina in tempo finito), osservabilità (effetto osservabile), riproducibilità (stesso risultato con lo stesso input).
- Realizzazione soluzione automatica: Specificare requisiti (cosa), progettazione (come), soluzione (algoritmo).
- Algoritmi - Proprietà: Correttezza (l'algoritmo perviene alla soluzione corretta), efficienza (minimi risorse fisiche – tempo, memoria).
- Algoritmi - Proprietà (di nuovo): Ingresso specificato (risultato coerente con l'input), uscita specificata (dati in uscita), determinatezza/univocità (nessun grado di libertà nel processore), efficacia (operazioni eseguibili meccanicamente), terminazione (in numero finito di passi).
- Verifica algoritmo: Valutazione di una ricetta (es. preparazione della crema pasticcera) per verificare se soddisfa le proprietà dell'algoritmo.
- Concetti – riepilogo: Algoritmo, programma, linguaggio macchina, linguaggio di programmazione, attenzione all'efficienza. Compito del programmatore: capire la sequenza dei passi per arrivare ad una soluzione, codificare in un linguaggio che il calcolatore capisce.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Questo quiz esplora le fasi della formalizzazione dell'informazione e la risoluzione di problemi attraverso algoritmi. Si concentrerà sui passaggi dall'analisi iniziale alla modellazione, fornendo chiarimenti sulle tecniche e metodologie necessarie. È rivolto agli studenti del Corso di Laurea Magistrale in Medicina Veterinaria per l'Anno Accademico 2024/2025.