Vai al contenuto principale

Università degli Studi di Parma, il mondo che ti aspetta

FONDAMENTI DI PROGRAMMAZIONE A ( cod. 1000747)

Insegnamento di INFORMATICA (Corsi di Laurea)

Facoltà di Corsi di Laurea triennale (D.M. 270/04)

 

TIPOLOGIA DELL'INSEGNAMENTO: ATTIVITÀ FORMATIVE DI BASE

 
Lingua Insegnamento: 
Italiano

FREQUENZA FACOLTATIVA

Obiettivi

Il corso si propone di fornire le basi sia teoriche che pratiche della programmazione imperativa utilizzando come linguaggio di riferimento il linguaggio di programmazione C++.

Prerequisiti

Nessuno

Contenuti dell'insegnamento

Fondamenti di programmazione. Programmazione imperativa. Linguaggio di programmazione C++

Programma esteso

FONDAMENTI. Problemi e algoritmi - La nozione di algoritmo. I diagrammi di flusso. Risoluzione di semplici problemi. Linguaggi di programmazione - Linguaggi esistenti (cenni). Struttura generale di un programma. Convenzioni di programmazione. Ambienti integrati di sviluppo programmi (IDE). Variabili: caratteristiche, dichiarazione. Identificatori. Dichiarazione di costante. Assegnamento. Espressioni: sintassi, valutazione (associativita' e precedenza), tipo. Programmazione strutturata - Strutture di controllo. Teorema di Bohm-Jacopini. Statement goto. Progetto "top-down" e sviluppo programmi "per raffinamenti successivi". Nomi, ambienti e regole di "scope": struttura a blocchi, ambiente locale e non-locale, variabili globali. Ricorsione - Definizioni e funzioni ricorsive. Esempi. Implementazione ricorsione (cenni). LINGUAGGIO C++. Dichiarazione di variabile. Tipi semplici primitivi: valori, costanti, operazioni. Dichiarazione di costante. Input/output di base. Operatori di estazione ed inserimento. Input/output a caratteri (funzioni get e put). Assegnamento e statement composto. Espressioni. Statement per il controllo di sequenza: if, switch, while, do_while, for, break. Esempio. Verifica dell'input. Tipi strutturati. Array: dichiarazione, selezione elementi, memorizzazione, operazioni. Array bi-dimensionali. Matrici. Esempi operazioni su matrici e vettori (in partic., ordinamento per selezione). Stringhe: realizzazione tramite array, operazioni, funzioni di libreria. struct: dichiarazione, selezione elementi, operazioni. Tabelle: definizione, realizzazione tramite array di struct. Dichiarazione e chiamata di funzione. Passaggio parametri: per valore, per riferimento. Passaggio parametri di tipo array. Funzioni void. Strutturazione di un programma e regole di "scope". Input/output su file. Creazione ed apertura di uno stream. Lettura/scrittura "tipata" e a caratteri. Sviluppo di semplici programmi nel frammento imperativo del C++. Utilizzo di funzioni di libreria.

Bibliografia Consigliata

L.J. Aguilar. Fondamenti di programmazione in C++ , McGraw-Hill, 2008.
Anno accademico: 
2012
Anno di corso: 
1
Semestre: 
1
Numero CFU: 
6
SSD: 
INFORMATICA (INF/01)
Ambito: 
Formazione informatica di base
Ore di attivita frontale: 
48