Diario delle lezioni
Data | Argomenti trattati | Download |
---|---|---|
Lezione 1 03/10/2011 |
Introduzione Cos’è un calcolatore Risoluzione di un problema Algoritmo Esempio MCD Cifrario di cesare |
[download id=”66″] |
Esercitazione 1 03/10/2011 |
Ambiente di sviluppo Stampa di una linea di testo Variabile Assegnamento Area di un rettangolo |
[download id=”65″] |
Lezione 2 05/10/2011 |
Proprietà fondamentali algoritmi Hardware e software Sistemi operativi Programmi Astrazione Linguaggio di programmazione Compilatore Linguaggio imperativo, funzionale e ad oggetti Programma Es.: i blocchi Dal Problema al Programma Es.: somma primi 100 naturali Tracciamento Es.: somma numeri da N ad M Processo risoluzione programma Dati Classi di istruzioni Pseudo codice |
[download id=”67″] |
Lezione 3 10/10/2011 |
Istruzioni di lettura e scrittura Istruzioni di assegnazione Istruzioni composta Istruzioni condizionali Istruzioni di controllo Livelli di rappresentazione Ciclo di vita di un programma Storia del linguaggio C Salve mondo Le funzioni printf, include, scanf Com’è fatto un programma in C Quadrato di un numero Somma di due numeri Tipi di dati Rappresentazione in memoria Tavola ASCII |
[download id=”69″] |
Esercitazione 2 10/10/2011 |
Istruzioni di I/O Operatori relazionali Istruzioni if – else Ramificazione del flusso Esercizi |
[download id=”70″] |
Lezione 4 11/10/2011 |
Errori frequenti Soluzione esercizi del laboratorio Il tipo di dato reale Espressioni Operatori matematici Esercizi vari Operatori di uguaglianza e relazionali Priorità degli operatori Teorema di Bohm-Jacopini Strutture di selezione Esercizi vari |
[download id=”71″] |
Lezione 5 17/10/2011 |
Prototipo, definizione, chiamata Programma con funzioni Passaggio di argomenti Variabili locali Es.: funzioni in un programma Librerie matematiche |
[download id=”73″] |
Esercitazione 3 17/10/2011 |
Le funzioni: prototipi, dichiarazione, chiamata, … esercizi |
[download id=”72″] |
Lezione 6 18/10/2011 |
Funzioni come scatole nere Le funzioni nel DevCpp Es. 1: min e max di 3 numeri Es. 2: semplice calcolatrice Es. 3: somma tra frazioni Strutture di controllo FOR, WHILE, DO WHILE, … Esempi ed esercizi |
[download id=”74″] |
Lezione 7 24/10/2011 |
Soluzione esercizi Scambio di due variabili Es.: individuare il tipo di un triangolo Strutture di selezione Esercizi vari Operatori logici Esercizi sugli operatori logici IF equivalenti Ricerca del MIN e MAX di una sequenza di numeri |
[download id=”75″] |
Esercitazione 4 24/10/2011 |
Fattoriale di un numero Esercizi vari sui caratteri Trasformazione da decimale a binario Piramide di asterischi Esercizi vari sulle for |
[download id=”76″] |
Lezione 8 2/11/2011 |
Il calcolatore di Von Neumann: unità di I/O, Memoria, CPU Cenni sulla rappresentazione delle informazioni Informazioni rappresentabili Esempi di rappresentazioni Calcolatore elettronico: sottoinsiemi funzionali Struttura di Von Neumann Memoria principale Interazione CPU-Memoria principale Struttura della CPU Esecuzione delle istruzioni: fetch, decode, execute Linguaggi macchina Dispositivi di I/O Memoria secondaria KByte, MByte, GByte, … Interazione tra le unita’ Sistemi operativi Struttura del bus Programmazione dei calcolatori Linguaggi assemblativi Assembler CPU didattica: somma di due numeri Linguaggi ad alto livello Compilatori Progetto:scrittura-> compilazione-> collegamento-> esecuzione Linguaggio macchina elementare Istruzioni di trasferimento, aritmetiche di I/O e di salto e salto condizionato Esempio di programma Codici delle operazioni Allocazione in memoria di programma e dati Svantaggi del linguaggio assembler Novità dell’assembler codice-op mnemonici Le etichette Es. somma di due numeri con confronto finale |
[download id=”77″] |
Lezione 9 7/11/2011 |
Es. potenza di un numero Cenni sulla complessità (approfonditi in seguito) Comportamento della CPU nell’interpretazione dell’assembler La SWITCH Due possibili espressioni per la switch Es. calcolare il giorno dopo di una determinata data considerando anche gli anni bisestili |
[download id=”78″] |
Esercitazione 5 7/11/2011 |
Serie di Taylor Conta vocali Somma numeri da 1 a N Stampa i dispari e i pari Rettangolo di caratteri Trasforma da maiuscolo in minuscolo e viceversa Calcolo della media Sotto sequenza di 0 più lunga Verifica che un numero sia primo |
[download id=”79″] |
Lezione 10 9/11/2011 |
Qualificatori di tipo Tipi di dato primitivi Tipo :: short int Tipo :: int Tipo :: long int Tipo :: unsigned short int Tipo :: short Tipo :: unsigned long int Tipo :: byte Tipo :: float Tipo :: double Specifiche di conversione per tipi interi Operandi interi Tipo di una costante Operandi aritmetici per interi Operatori di assegnamento Conversione di tipo Espressioni che coinvolgono tipi di dato primitivi numerici diversi Assegnazioni fra tipi di dato primitivi numerici diversi Esempi ed esercizi |
[download id=”80″] |
Lezione 11 14-16/11/2011 |
Conversione esplicita :: il cast Operatori logici Tabelle di verita’ Variabili e parametri Variabili globali Variabili e memoria Indirizzo Numero di byte occupati Il tipo puntatore Operatore indirizzo Dichiarazione e uso di puntatori Operatore di indirezione * Esempi ed esercizi |
[download id=”84″] |
Esercitazione 6 14/11/2011 |
Sottosequenza di 0 Verifica se numero primo Giorno successivo Switch Conta vocali |
[download id=”83″] |
Lezione 12 21/11/2011 |
Il Debugger Esecuzione da cursore Breakpoint Ispezione delle variabili getchar() Break Return Exit Soluzione per raffinamenti successivi Struttura di un programma C Funzione Unità chiamante e chiamata Parametri formali e attuali Associazione tra parametri formali e attuali Prototipo, definizione, chiamata Definizione di una funzione :: tipo di ritorno, lista di parametri, variabili locali, istruzioni Coercizione degli argomenti Esempi ed esercizi |
[download id=”85″] |
Lezione 13 23/11/2011 |
Legame per valore Legame per riferimento Legami per riferimento e valore in C Blocchi Caratteristica delle variabili Tipo Valore Ciclo di vita Campo d’azione Regole di visibilita’ Formattazione dell’output Visualizzazione interi Visualizzazione numeri in virgola mobile Visualizzazione stringhe e caratteri Altri operatori di formattazione Visualizzare con le dimensioni di campo e la precisione Specifiche di precisione Array Inizializzazione Array Stampa degli Array Esempi ed esercizi |
[download id=”87″] |
Lezione 14 28/11/2011 |
Min e suo indice di un Array Ricerca indice di un valore Area del rettangolo di punti P1, P2, P3, P4 Verifica della palindromia di una stringa Trova le posizioni di un numero in un Array e trasferiscine gli indici in un altro array Esercizi per casa |
[download id=”90″] |
Esercitazione 7 28/11/2011 |
Vettore Array di Fibonacci Minimo di un array Trova in array Area rettangolo Palindroma Trova occorrenze |
[download id=”86″] |
Lezione 15 30/11/2011 |
Puntatori e Array Modi alternativi per accedere agli elementi degli Array Memorizzazione degli Array in memoria Passare gli Array alle funzioni Esercizio del DNA Chiamata per indirizzo Esercizi per casa |
[download id=”88″] |
Esercitazione 8 14/11/2011 |
DNA Esercizi matrici Trova parola Capovolgi Calc array |
[download id=”89″] |
Lezione 16 07/12/2011 |
Scambio di due variabili passate per indirizzo Caricamento di un Array Es.: calcolo delle frequenze dei voti di una classe Es.: Array passati per riferimento, elementi passati per valore Qualificatore const Array Multidimensionali Inizializzazione Array bidimensionali e puntatori Array multidimensionale come argomento di funzione Memorizzazione di una matrice leggendo i dati da un file Esercizi per casa |
[download id=”91″] |
Lezione 17 12/12/2011 |
Le stringhe-Memorizzazione -Inizializzazione -Lettura e scrittura Strutture-Memorizzazione -Accesso ai campi Composizione di una struttura Accesso diretto Accesso indiretto tramite puntatore Modi alternativi di definire una struttura typedef Inizializzazione Esercizi per casa |
[download id=”93″] |
Esercitazione 9 12/12/2011 |
Esercizio sui Clienti Inversione stringa massimoMatrice filtro simmetrica e diagonale Esercizi vari sulle matrici |
[download id=”92″] |
Lezione 18 14/12/2011 |
File Confronto: -printf / frprintf -scanf / fscanf Descrittore di file Connessione Modalità d’uso Chiusura della connessione Eccezioni EOF Esempi Esercizi per casa |
[download id=”94″] |
Esercitazione 10 21/12/2011 |
Vari esercizi | [download id=”95″] |