Servizi per la didattica
PORTALE DELLA DIDATTICA

Algoritmi e programmazione

05MNONX

A.A. 2021/22

2020/21

Algoritmi e programmazione

L’insegnamento, obbligatorio per tutti gli studenti, ha un duplice obiettivo: - introdurre gli studenti alla programmazione con il linguaggio C, fino alla trattazione di aspetti avanzati, quali puntatori, allocazione dinamica della memoria, modularità e realizzazione di Tipi di Dato Astratti; - insegnare l’utilizzo di algoritmi, strutture dati avanzate, paradigmi risolutivi, e loro implementazione in C, per la risoluzione di problemi complessi

Algoritmi e programmazione

This course, mandatory for all the students, has a twofold objective: - to introduce the student to C programming, including advanced topics as pointers, dynamic memory allocation, modularity, and Abstract Data Types; - to teach how to use algorithms, complex data structures, problem solving paradigms, and their C implementation, to solve complex problems.

Algoritmi e programmazione

Lo studente deve acquisire due tipologie fondamentali di conoscenze: (i) la capacità di risolvere problemi concreti mediante programmi da implementare in linguaggio C ed eseguire su un calcolatore; (ii) la capacità di pianificare e quantificare la complessità della soluzione di un problema attraverso la conoscenza di algoritmi, strutture dati complesse e paradigmi computazionali. Queste capacità vengono applicate alla soluzione di problemi complessi di rilevanza pratica.

Algoritmi e programmazione

The student must acquire two fundamental types of knowledge: (i) the ability to solve concrete problems through programs implemented using the C programming language and executed on a computer; (ii) the ability to design and quantify the solution to a complex problem using algorithms, abstract data structures, and computational paradigms. These skills will be applied to the solution of practical complex problems.

Algoritmi e programmazione

Vista la natura incrementale di questo corso rispetto a quello di “Informatica” del I semestre del I anno, vi sono prerequisiti stringenti in termini di abilità di programmazione, in particolare: • Architettura elementare dei sistemi di elaborazione • Capacità di sviluppare semplici algoritmi con flow-chart o pseudo-codice, utilizzando costrutti condizionali e iterativi, dati scalari a aggregati, I/O standard, file testo e funzioni

Algoritmi e programmazione

Given the incremental nature of this course w.r.t. the “Computer Science” course of the 1st semester of the 1st year, there are strict requirements in terms of programming skills; in particular: • Basic knowledge of computers’ architecture • Ability to develop simple algorithms with flow-charts or pseudo-code, using conditional and iterative control flow structures, scalar and aggregated data, I/O, files, and functions.

Algoritmi e programmazione

o Costrutti fondamentali del linguaggio C e problem-solving elementare o Concetti base di programmazione sicura o Algoritmi di ordinamento o Strutture dati statiche e dinamiche e loro realizzazione in C o Modularità e realizzazione modulare di algoritmi e strutture dati o Ricorsione e programmi ricorsivi o Liste o Oggetti astratti, collezioni di oggetti e ADT o Paradigmi algoritmici o Problem solving avanzato: strategie di analisi e di definizione di strutture dati e algoritmi o Alberi binari o Funzioni di hash o Teoria e algoritmi dei grafi

Algoritmi e programmazione

o C programming basics and simple problem-solving o Secure Programming o Sorting Algorithms o Static and dynamic data structures and their C implementation o Modularity in algorithms and data structures o Recursion o Lists o Abstract objects, collections, and ADT o Computational paradigms o Advanced Problem solving: strategies to analyze and define data structures and algorithms o Binary trees o Hash functions o Graph theory and algorithms

Algoritmi e programmazione

Il corso prevede circa 20 ore di esercitazione in laboratorio, nelle quali gli argomenti discussi in aula verranno tradotti in programmi C.

Algoritmi e programmazione

The course includes about 20 hours of lab, in which the topics covered in the classes will be implemented as C programs.

Algoritmi e programmazione

Il corso si svilupperà attraverso lezioni in aula, esercitazioni in laboratorio, ed approfondimenti da svolgere in autonomia

Algoritmi e programmazione

This course includes traditional lectures, lab exercises, as well as sections to be autonomously completed by the students.

Algoritmi e programmazione

Testi di riferimento: • Deitel & Deitel, ‘Corso completo di programmazione C’, Apogeo, 2010 Materiale didattico a disposizione su Web: • trasparenze proiettate in aula • esercizi e soluzioni

Algoritmi e programmazione

Textbooks: • Deitel & Deitel, ‘Corso completo di programmazione C’, Apogeo, 2010 Learning material on the web: • course slides • suggested exercises and solutions

Algoritmi e programmazione

Modalità di esame: Test informatizzato in laboratorio; Prova scritta (in aula);

Algoritmi e programmazione

L’esame consiste in una prova scritta (possibilmente da svolgere al computer) mirata ad accertare le conoscenze dello studente sia sugli aspetti teorici della materia (tramite esercizi numerici o quiz a risposta aperta o chiusa), sia sulla parte di programmazione (tramite la realizzazione di uno o più programmi in linguaggio C che implementino la soluzione di problemi pratici). La durata della prova scritta è di 3 ore e non prevede l'uso di materiale didattico da parte degli studenti. La prova scritta prevede un voto massimo di 30 e lode.

Algoritmi e programmazione

Exam: Computer lab-based test; Written test;

Algoritmi e programmazione

The exam consists of a written test (possibly on the computer) that aims at assessing the students’ knowledge of the theoretical aspects of the course (through numerical exercises or open/close-answer questions) and the programming skills (through the writing on paper of a C program that implements the solution of a practical problem). The duration of the written test is 3 hours and it is a closed book test. The maximum score for the written test is 30 cum laude.

Algoritmi e programmazione

Modalità di esame: Prova orale facoltativa; Prova scritta a risposta aperta o chiusa tramite PC con l'utilizzo della piattaforma di ateneo Exam integrata con strumenti di proctoring (Respondus);

Algoritmi e programmazione

L'esame consistera' di una parte di teoria e una di programmazione ed in particolare: - 3 domande di teoria - 2/3 esercizi di programmazione in cui verra' richiesto di svolgere altrettanti programmi (o frammenti di programma) in C, ciascuno di dimensione piu' contenuta rispetto allo scritto tradizionale, preservando la difficolta' complessiva. La durata dell'esame verra' comunicata prima dell’esame ma non sarà superiore a 2 ore L’orale è a discrezione del docente ed esclusivamente per voti >= 18.

Algoritmi e programmazione

Exam: Optional oral exam; Computer-based written test with open-ended questions or multiple-choice questions using the Exam platform and proctoring tools (Respondus);

Algoritmi e programmazione

Algoritmi e programmazione

Modalità di esame: Prova orale facoltativa; Prova scritta a risposta aperta o chiusa tramite PC con l'utilizzo della piattaforma di ateneo Exam integrata con strumenti di proctoring (Respondus);

Algoritmi e programmazione

L'esame consistera' di una parte di teoria e una di programmazione ed in particolare: - 3 domande di teoria - 2/3 esercizi di programmazione in cui verra' richiesto di svolgere altrettanti programmi (o frammenti di programma) in C, ciascuno di dimensione piu' contenuta rispetto allo scritto tradizionale, preservando la difficolta' complessiva. La durata dell'esame verra' comunicata prima dell’esame ma non sarà superiore a 2 ore L’orale è a discrezione del docente ed esclusivamente per voti >= 18.

Algoritmi e programmazione

Exam: Optional oral exam; Computer-based written test with open-ended questions or multiple-choice questions using the Exam platform and proctoring tools (Respondus);

Algoritmi e programmazione

Esporta Word


© Politecnico di Torino
Corso Duca degli Abruzzi, 24 - 10129 Torino, ITALY
Contatti