- Oggetto:
- Oggetto:
Informatica (COGNOMI A-K)
- Oggetto:
COMPUTER SCIENCE
- Oggetto:
Anno accademico 2024/2025
- Codice attività didattica
- MAT0289
- Docente
- Amon Rapp (Titolare)
- Corso di studio
- Laurea in Matematica
- Anno
- 1° anno
- Periodo
- Primo semestre
- Tipologia
- D.M. 270 TAF A - Base
- Crediti/Valenza
- 6
- SSD attività didattica
- INF/01 - informatica
- Erogazione
- Mista
- Lingua
- Italiano
- Frequenza
- Facoltativa
- Tipologia esame
- Scritto
- Prerequisiti
-
L'insegnamento non ha prerequisiti particolari.
The course has no prerequisites. - Propedeutico a
-
Tutti gli insegnamenti della Laurea in Matematica.
All the teachings of the degree in Mathematics. - Oggetto:
Sommario insegnamento
- Oggetto:
Obiettivi formativi
Coerentemente con gli obiettivi formativi del Corso di Studio previsti dalla scheda SUA-CdS, l'insegnamento si propone di fornire allo studente le basi della programmazione, considerata come parte integrante della cultura di un matematico. I macro-obiettivi sono: (i) sapere programmare algoritmi di difficoltà media (inizialmente forniti dal docente); (ii) apprendere qualche elemento di utilizzo di librerie software; (iii) migliorare le proprie capacità di problem solving.
L'insegnamento prevede lezioni miste teorico-pratiche in laboratorio e il supporto di un tutor. Si vuole stimolare lo studente a affrontare problemi di difficoltà crescente, in modo da passare gradualmente da situazioni di tipo imitativo, a casi in cui occorra uno sforzo autonomo per affrontare situazioni non puramente ripetitive.
Coherently with the "obiettivi formativi" (educational goals) of the Corso di Studio as indicated in the SUA-CdS form, this course has the aim to teach some programming basics to the students, as an essential skill for a mathematician. The macro-objectives are: (i) to program algorithms of medium difficulty (initially supplied by the teacher); (ii) to learn how to approach software libraries; (iii) to develop some problem-solving skills.
The course provides lectures that are both theoretical and practical, all held in the lab, and the support of a tutor. We aim to stimulate the capacity of the students to tackle problems of increasing difficulty, in such a way to go from the imitation of the teacher's work to more autonomous work.
- Oggetto:
Risultati dell'apprendimento attesi
CONOSCENZA E CAPACITÀ DI COMPRENSIONE
L'insegnamento si propone di fornire allo studente le basi della programmazione.CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE
I macro-obiettivi di tale capacità sono: (i) sapere programmare algoritmi di difficoltà media (inizialmente forniti dal docente); (ii) apprendere qualche elemento di utilizzo di librerie software; (iii) migliorare le proprie capacità di problem solving.AUTONOMIA DI GIUDIZIO
Lo studente si esercita a valutare la correttezza dei programmi scritti da altri e da sé, nonché impara a valutare la bontà della propria soluzione (dal punto di vista dell'eleganza del codice e della sua complessità pratica).
ABILITÀ COMUNICATIVE
Lo studente impara a utilizzare con proprietà il linguaggio tecnico-scientifico della materia nell'esposizione dei concetti appresi.
CAPACITÀ DI APPRENDIMENTO
Si vuole stimolare lo studente a affrontare problemi di difficoltà crescente, in modo da passare gradualmente da situazioni di tipo imitativo, a casi in cui occorra uno sforzo autonomo per affrontare situazioni non puramente ripetitive.
KNOWLEDGE AND UNDERSTANDING
This course has the aim to teach some programming basics to the students.
APPLYING KNOWLEDGE AND UNDERSTANDING
The macro-objectives for fulfilling this skill are: (i) to program algorithms of medium difficulty (initially supplied by the teacher); (ii) to learn how to approach software libraries; (iii) to develop some problem-solving skills.
INDEPENDENT JUDGEMENT
The students must be able to evaluate the correctness of programs written by others and themselves, moreover to judge the value of their solutions (from a practical complexity and a tidiness points of view).
COMMUNICATION SKILLS
The students learn the appropriate usage of the technical-scientific language of the subject, in order to present the learned concepts succesfully.
LEARNING SKILLS
We aim to stimulate the capacity of the students to tackle problems of increasing difficulty, in such a way to go from the imitation of the teacher's work to more autonomous work.
- Oggetto:
Programma
Il corso verte sulla programmazione, spiegata attraverso il linguaggio C++. L'oggetto del corso, tuttavia, non è il C++ in tutti i suoi dettagli, ma su alcuni aspetti di base della programmazione. Gli argomenti del corso sono:
1. Variabili e tipi
2. Funzioni
3. Condizionale e ricorsione
4. Iterazione
5. Stringhe e oggetti elementari
6. Strutture
7. VettoriThe course is about programming, introduced through the language C++. The goal of the course, however, is not to explain the language C++ in all details, but to illustrate basic topics of programming. This is the list of topics that are covered:
1. Variables and types
2. Functions
3. Conditionals and recursion
4. Iteration
5. Strings and elementary objects
6. Structures
7. Vectors- Oggetto:
Modalità di insegnamento
Il corso si svolge in presenza prevede 48 ore di insegnamento (6 CFU), divise in 24 lezioni di 2 ore ciascuna, e si svolge interamente in laboratorio, alternando lezioni teoriche ed esercitazioni pratiche con gli elaboratori.
The course is in presence and 48-hour long (6 CFU), divided in 24 lectures of 2 hours each. It consists in alternating theoretical lessons and practice with the computer.
Lectures and exercises sessione will not be available as live streaming and will not be recorded.
- Oggetto:
Modalità di verifica dell'apprendimento
L’esame sarà scritto e somministrato tremite la Piattaforma Esami I-learn.
Gli esami si svolgeranno in presenza.
L’esame consiste nel rispondere a una serie di domande che possono, ad esempio, richiedere il completamento del codice di semplici programmi in conformità alle richieste del docente.
La preparazione sarà considerata adeguata se lo studente dimostrerà di essere in grado di usare un compilatore C++ per costruire semplici programmi, di saper correggere eventuali errori scoperti con l'aiuto del computer e di sapere ragionare sul codice di un programma per valutarne la correttezza.
The exam consists of answering tests including both open and closed questions. The open questions require mainly completing the code of short programs.
Exam will be in the classroom.
Students will pass the exam provided they demonstrate to be familiar with an IDE for programming in C++, to be able to write well structured programs, to debug and fix errors reacting to the compiler messages, and to reason about the correctness of the code.
- Oggetto:
Attività di supporto
Oltre alle lezioni, il corso prevede 10-12 attività di tutorato in laboratorio, di due ore ciascuna. Ci si avvale inoltre della piattaforma I-learn per la distribuzione di materiale didattico (lucidi, codice, dispense ed esercizi).
In addition to lectures, the course includes 10-12 tutoring activities in the lab, of two hours each. We also make use of the I-learn platform for distribution of teaching materials (transparencies, code, handouts and exercises).
Testi consigliati e bibliografia
- Oggetto:
Tutto il materiale (dispense ed esercizi svolti a lezione) sarà distribuito attraverso il sito I-learn (http://math.i-learn.unito.it) del corso.
Testo di consultazione:
Allen B. Downey, How to Think Like a Computer Scientist C++ Version, capitoli 1-10
scaricabile liberamente da http://greenteapress.com/thinkcpp/index.html
All material (handouts and exercises) will be available on the I-learn site:
Text:
Allen B. Downey, How to Think Like a Computer Scientist C++ Version, chapters 1-10
freely available from http://greenteapress.com/thinkcpp/index.html
- Oggetto:
Note
Il corso ha il seguente calendario:
Gio 26 Settembre: 14:30-18:30
Me 16 Ottobre: 10:30-12:30
Gio 17 Ottobre: 14:30-18:30
Me 23 Ottobre: 10:30-12:30
Gio 24 Ottobre: 14:30-18:30
Me 30 Ottobre: 10:30-12:30
Gio 31 Ottobre: 14:30-18:30
Me 6 Novembre: 10:30-12:30
Gio 7 Novembre: 14:30-18:30
Me 13 Novembre: 10:30-12:30
Gio 14 Novembre: 14:30-18:30
Me 20 Novembre: 10:30-12:30
Gio 21 Novembre: 14:30-18:30
Me 27 Novembre: 10:30-12:30
Gio 28 Novembre: 14:30-16:30
Me 4 Dicembre: 10:30-12:30
Gio 5 Dicembre: 14:30-16:30
Me 11 Dicembre (10:30-12:30) - Gio 12 Dicembre (14:30-18:30) (eventuali recuperio/esercitazioni)
- Registrazione
- Aperta
- Oggetto: