Componenti hardware e architettura del calcolatore.
Algoritmi: proprietà ed esempi.
Elementi base della programmazione strutturata.
Algoritmi di ricerca sequenziale e binaria.
Alcuni algoritmi di ordinamento.
Cenni alla complessità degli algoritmi.
Elementi di logica proposizionale.
Elementi di calcolo binario.
Cenni ai circuiti logici.
Strutture dati astratte e interne (pila, coda, alberi binari, vettore, lista concatenata).
Contenuto del corso - Parte A
Corso di teoria ed esercitazioni su impiego di sistemi di calcolo digitali per applicazioni geologiche.
Dispense del corso, manuale di SAGA GIS e manuale di base Matlab
Obiettivi Formativi
E' intenzione fornire agli studenti le conoscenze di base della disciplina informatica. I concetti di struttura dati e algoritmo sono presentati come elementi fondamentali dell'Informatica. Il corso inoltre fornisce agli studenti gli strumenti principali per poter applicare correttamente il metodo informatico per la soluzione di qualche problema.
Obiettivi Formativi - Parte A
Fornire allo studente le basi di impiego di sistemi di calcolo informatici per la risoluzione di semplici problemi nell'ambito delle Scienze Geologiche
Prerequisiti
Corsi vincolanti: nessuno
Prerequisiti - Parte A
Matematica e calcolo
Metodi Didattici
Lezioni frontali: esposizione critica della teoria in programma, con interazione diretta docente-studente per facilitare e assicurare la piena comprensione della materia. Sono previste anche alcune esercitazioni al calcolatore per la risoluzione di qualche semplice problema.
Metodi Didattici - Parte A
Lezioni, esempi pratici al computer ed esercitazioni al computer
Modalità di verifica apprendimento
Prova finale scritta e orale. Vengono proposti alcuni esercizi e domande a risposta aperta. La prova è strutturata per valutare la capacità degli studenti di applicare le conoscenze teoriche e tecniche da loro acquisite. Viene valutata anche la capacità di presentare un certo argomento in modo chiaro e sintetico, con la dovuta correttezza.
Modalità di verifica apprendimento - Parte A
Compito scritto sugli argomenti del corso. In particolare, saranno richieste allo studente nozioni teoriche su argomenti di GIS e di Matlab e risoluzione di semplici problemi teorico-pratici su matrici, calcolo di base e programmazione Matlab.
Programma del corso
Introduzione storica all'Informatica. Cenni alla struttura fisica dell'elaboratore e alla sua architettura. Memorie centrali e di massa. Spazio di indirizzamento. Cenni alle periferiche. Il concetto di algoritmo. Proprietà ed esempi di algoritmi. Programmazione strutturata: dichiarazione e inizializzazione di variabili, costrutti iterativi e di selezione. Algoritmo di ricerca sequenziale e di ricerca binaria. Alcuni algoritmi di ordinamento: Bubble Sort, Insertion Sort, Selection Sort. Cenni alla complessità degli algoritmi. Elementi di calcolo binario: conversione dei numeri da una base all'altra. Operazione con numeri binari. Complemento a due a otto bit per la rappresentazione dei numeri negativi in memoria. Elementi di logica proposizionale: connettivi booleani (AND, OR, NOT) e connettivi logici tramite connettivi booleani. Tautologie e contraddizioni. Strutture dati interne. Vettore e lista concatenata: operazioni di inserimento, cancellazione e ricerca e relativa complessità. Strutture dati astratte: pila, coda, alberi binari. Visite anticipate, posticipate e simmetriche di alberi binari. Alberi binari di ricerca.
Programma del corso - Parte A
I dati geografici, modelli dei dati, vettori e raster. Analisi dei dati geografici. Il GIS open-source SAGA, installazione e uso.
Introduzione a Matlab, modelli di dati in Matlab, vettori e matrici. Calcolo con le matrici. File input e output. Programmazione Matlab di base (cicli, funzioni, istruzioni condizionali, variabili). Grafici in Matlab.