Vai al contenuto principale
Oggetto:
Oggetto:

Informatica

Oggetto:

Computer Science

Oggetto:

Anno accademico 2022/2023

Codice dell'attività didattica
INT0399
Docente
Luca Luigi Paolini (Titolare del corso)
Corso di studi
[090712] MATEMATICA PER LA FINANZA E L'ASSICURAZIONE
Anno
1° anno
Periodo didattico
Primo semestre
Tipologia
D.M. 270 TAF A - Base
Crediti/Valenza
9
SSD dell'attività didattica
INF/01 - informatica
Modalità di erogazione
Mista
Lingua di insegnamento
Italiano
Modalità di frequenza
Facoltativa
Tipologia d'esame
Scritto e Orale
Prerequisiti
Capacita di gestire file e cartelle (creare, salvare, aprire, comprimere, ...) in ambienti grafici (come quelli forniti da Linux, MacOS, Windows, ...).
Basic management skills with files and folders (create, save, open, compress, ...) in graphic environment (as that provided by Linux, MacOS, Windows, ...).
Oggetto:

Sommario insegnamento

Oggetto:

Obiettivi formativi

Gli obiettivi formativi sono individuati in coerenza con gli obiettivi formativi del Corso di Studio previsti dalla scheda SUA-CdS. Lo studente acquisisce conoscenze di base sull'architettura ed il funzionamento di un elaboratore, sui sitemi operativi, sulle reti e sulla sicurezza. Apprende le basi della programmazione degli elaboratori, e impara a metterle in pratica.

Formative goals are coeherent with that identied in the SUA-CdS sheet. The student learns the basic knolewdge on computer's architecture, operating systems, networks and security. Moreover, he learns practical programming basis.

Oggetto:

Risultati dell'apprendimento attesi

Lo studente che avrà proficuamente acquisito le competenze offerte dal corso, sarà in grado di comprendere in maniera astratta le problematiche del calcolatore. In particolare, potrà sostenere una discussione a livello di utente informato e competente sulle tecnologie informatiche. Inoltre, lo studente apprenderà i rudimenti di programmazione in modo sufficiente a comprendere la logica  dell'implementazione di programmi iterativi, e potrà cogliere cogliere elementi di  ricorsione e sulla metodologia di sviluppo orientata agli oggetti.

 

Students who have successfully acquired the skills offered by the course,  will be able to understand in an abstract manner the main aspects of the computer. In particular, they should be able to hold a discussion at the level of informed user about computers and their technologies. Also, they will learn rudiments of programming which are sufficient to understand the logic that allows the implementation of iterative programs, and in addition they will be able to grasp some nuances of recursion and object-oriented development methodology.

Oggetto:

Modalità di insegnamento

Le lezioni saranno frontali. La presenza è seriamente consigliata (siccome incrementa significativamente le possibilità di superare l'esame anche per coloro che conoscono già gli argomenti).

Clik per ORARIO delle LEZIONI

Click per Linee-Guida

 

Lessons will be delivered frontally. The presence is suggested (because, it significantly increases the chances of passing the exam).

Click for TIMETABLE 

Click per Linee-Guida

 

Oggetto:

Modalità di verifica dell'apprendimento

  Le prove d'esame saranno svolte in presenza. La verifica prevede una prova di programmazione seguita da un esame orale. Il superamento della prova pratica è propedeutico al sostenimento dell'esame orale.

Exams will be held in presence. Each exam consists of a programming test followed by an oral test. Passing the practical test is a prerequisite for taking the oral exam.

Oggetto:

Attività di supporto

Durante il corso si svolgeranno numerosi esercizi sul calcolatore che si consiglia di svolgere con solerzia al fine di prepararsi all'esame con decisamente minor sforzo.

During lessons, we will perform many exercises on the computer. We suggest to carry out diligently them, in order to prepare yourself with less effort.

Oggetto:

Programma

Informazioni piu dettagliate sul corso sono disponibili alla pagina di supporto alla didattica MOODLE (link a fondo pagina).

Introduzione all'informatica ed alle sue tecnologie

  • Cosa è l'informatica. Algoritmi e Macchine Digitali. Altri paradimi computazionali. Linguaggi di programmazione.
  • Rappresentazione dell'informazione: bit, byte, multipli, ascii, unicode, immagini, audio, video e compressione dei dati.
  • Modello astratto delle macchine di elaborazione e loro possibilita, Architettura e Dispositivi: HW & SW, Tipologie ,Macchina astratta, Bus di sistema, Motherboard,  Chipsets, CPU, Memoria Centrale, Cache,Memorie in Chip, Gerarchia delle Memorie, Dischi Rigidi, I/O, controller e driver, USB, SCSI, Firewire, Video e Connettori.
  •  Cenni ai sistemi operativi ed ai processi: Software, Gestione Processi, Gestione Memoria, Gestione Risorse, File System, Gestione del disco, Librerie di Sistema, Interfacce grafiche e testuali, virtualizzazione, para-virtualizzazione e emulazione.
  • Reti: commutazioni, internet e livelli, URL, ethernet, CSMA/CD, hub, switch, bridge, router, Wifi e Bluetooth, telefonia mobile (GSM, GPRS,EDGE, UMTS, HDSPA, HSUPA, LTE)
  • Sicurezza: problematiche della crittografia, simmetrica, asimmetrica, hash, password e firma digitale
Introduzione alla Programmazione
  • Compilazione ed esecuzione di semplici programmi.
  • Elementi dei Programmi e main. Tipi di dati e string. Operatori aritmetici e Precedenze. Espressioni. Conversioni. Costanti, variabili ed enunciati di assegnamento. Operatori di incremento e decremento. Enunciati di output: cout. Direttive per il preprocessore. Impaginazione ed indentazione del codice.
  • Operatori relazionali. Operatori ed espressioni booleani o logiche. Strutture di controllo: if,if-else ,switch.
  • Funzioni predefinite e Funzioni definite. Funzioni Value-returning e Funzioni Void. Passaggio dei parametri per valore e relativo modello di allocazione della memoria.
    Passaggio dei parametri per referenza e relativo modello di allocazione della memoria. Scope (ambito di visibilità) di un identificatore (variabile e/o funzione). Effetti collaterali.
  • Definizioni ricorsive. Esecuzione della ricorsione e allocazione della memoria. Soluzione di problemi mediante ricorsione.
  • Enunciato input (o lettura da tastiera). Messaggi di prompt di Input. Input Failure. Ancora sullo stile di programmazione. Input/output con file: variabili di stream. Cenni ad i manipolatori.
  • Array: generalita. Array di caratteri (C-stringhe). Array bidimensionali e multidimensionali. Dichiarazioni, inizializzazione, limiti nel loro uso nelle funzioni.
  • Ripetizioni: while, for, do-while , break. Annidamento di strutture.
  • Cenni a classi, Costruttori, Astrazione dei dati, classi e tipi di dati astratti, Membri statici di una classe, Differenze tra struct e class.

 

More details can be found in the MOODLE page (see the link at footpage).

Introduction to computer science technologies

  • Computer-science, algorithms and digital computer. Other computational paradigms. Programming Languages.
  • Information representation: bit, byte, multipliers, ascii, unicode, imagines, audio, video.
  • Abstract model of computing machines, architecture and devices: HW & SW, kinds, abstract machine, system bus, Motherboard,  Chipsets, CPU, Central memory, Cache, Memory in Chip, the Hierachy of Memory, hard dsk, I/O, controller e driver, USB, SCSI, Firewire, Video and connectors.
  • Operating systems and processes: Software, Process management, Memory management, Resource management, File System, Disk management, DLL, graphical and textual interfaces, virtualization, para-virtualization and emulation.
  • Nets and security:  anternet and its levels, URL, ethernet, CSMA/CD, hub, switch, bridge, router, Wifi e Bluetooth, mobile-phone (GSM, GPRS,EDGE, UMTS, HDSPA, HSUPA, LTE)
  • Security: criptography issues, symmetric and asymmetric, hash, password and digital sign

Programming

  • Compiling and executing programs.
  • Basics on Programs and main. Data types and string. Arithmetic operators and priority. Expressions. Conversions. Constants, variables and assignments. Increasing and decreasing operators. Output statement: cout. Preprocessor directives. Indenting and impaginating the source.
  • Relational operators. Boolean and logicla operators. Control structures: if,if-else ,switch.
  • Functions. Value-returning and Void functions. Parameter passing: call-by-value and its memory model. Parameter passing: call-by-reference and its memory model. Scope (visibility) of identifiers (variables, function-names). Side effects.
  • Recursive definitions. Run-time model. Problem solving with recursion.
  •  Input statement (keybord reading). Input propt. Input Failure. Programming style. Input/output with files: stream variables.
  • Array: basics. Array of characters (C-string). Bidimensionali e multidimensional array. Declarations, initializations,  function constraints.
  • Repeatitions: while, for, do-while , break.
  • Class, Construtors, data abstraction, abstract data type, static members of a class, struct and class comparison.

 

Testi consigliati e bibliografia



Oggetto:
Libro
Titolo:  
Programmazione in C++
Anno pubblicazione:  
2011
Editore:  
APOGEO
Autore:  
D.S. Malik
Obbligatorio:  
Si
Oggetto:

  • D.S. Malik. Programmazione in C++, 2011 APOGEO. (In alternativa http://greenteapress.com/thinkcpp/index.html). 
  • J.G. Brookshear, D. Brylow, P. Postinghel. Informatica-Una panoramica generale. Ed. Pearson 2016.

Esercizi e note integrative sul corso saranno pubblicati alla pagina MOODLE (il link è a fondo pagina).

  • D.S. Malik. Programmazione in C++, 2011 APOGEO. (An alternative good OPEN-SOURCE book can be found at http://greenteapress.com/thinkcpp/index.html).
  • J.G. Brookshear, D. Brylow, P. Postinghel. Informatica-Una panoramica generale. Ed. Pearson 2016.

Additional exercises and notes will be made available during the lectures via MOODLE (a e-learn tool, linked at the bottom of this page).



Oggetto:

Orario lezioni

Oggetto:
Ultimo aggiornamento: 15/09/2022 15:20

Location: https://matematicafinanza.campusnet.unito.it/robots.html
Non cliccare qui!