The course goal is to let the student achieve the ability to design and code algorithms through the understanding of the rules that form the structure of the C language. In the second part, the concepts of data structures and algorithms are introduced with a focus on the representation of lists and search and sorting problems. The final part of the course includes the programming of algorithms using style sheets.
Course Content - Last names M-Z
The course goal is to let the student achieve the ability to design and code algorithms through the understanding of the rules that form the structure of the C language. In the second part, the concepts of data structures and algorithms are introduced with a focus on the representation of lists and search and sorting problems. The final part of the course includes the programming of algorithms using style sheets.
Stefano Berretti, Laura Carnevali, Enrico Vicario.
Fondamenti di Programmazione: linguaggio c, strutture dati e algoritmi elementari, C++
Learning Objectives - Last names A-L
The training objectives are the following:
i) Knowledge and understanding: (cc1, according to the Dublin descriptors) knowledge of mathematical principles and understanding of the role of mathematical sciences as a tool for analysis and problem solving. Knowledge of the principles of computer science and of the algorithmic and numerical approach to problems;
ii) Ability to apply knowledge and understanding (ca1, according to the Dublin Descriptors): Ability to apply mathematical methods to model, analyze and solve engineering problems, including using computer-based means.
Learning Objectives - Last names M-Z
The training objectives are the following:
i) Knowledge and understanding: (cc1, according to the Dublin descriptors) knowledge of mathematical principles and understanding of the role of mathematical sciences as a tool for analysis and problem solving. Knowledge of the principles of computer science and of the algorithmic and numerical approach to problems;
ii) Ability to apply knowledge and understanding (ca1, according to the Dublin Descriptors): Ability to apply mathematical methods to model, analyze and solve engineering problems, including using computer-based means.
Teaching Methods - Last names A-L
Textbook, use of slides, video, coding exercises.
Teaching Methods - Last names M-Z
Textbook, use of slides, video, coding exercises.
Further information - Last names A-L
Additional Information at the following web page:
http://www.disit.org/drupal/?q=en-US/node/7020
Further information - Last names M-Z
Additional information on moodle (https://e-l.unifi.it/)
Type of Assessment - Last names A-L
Students must be able to solve problems through algorithms with the help of computer tools.
In general, the exam includes a written and an oral test structured in such a way as to: i) stimulate the students' autonomy of judgement; ii) allow them to acquire technical language properties and thus increase their communicative skills.
In particular, the students must demonstrate that they have acquired: i) knowledge related to the use of data structures such as: arrays, matrices, lists, trees; ii) the ability to use these data structures to solve and implement the assigned problems with the use of C language.
Type of Assessment - Last names M-Z
Students must be able to solve problems through algorithms with the help of computer tools.
In general, the exam includes a written and an oral test structured in a way such as to: i) stimulate students autonomy of judgement; ii) allow them to acquire the proper use of technical language and thus increase their communicative skills.
In particular, students must demonstrate that they have acquired: i) knowledge related to the use of data structures such as: arrays, matrices, lists and trees; ii) the ability to use these data structures to solve and implement the assigned problems with the use of C language.
Course program - Last names A-L
Representation
• Introduction to C language
o Types, variables and constants
o Operators and expressions
o Instructions
• Data representation
o Numbers
o Entire without sign
o Characters
o Entire with sign
• Definition of a language
o Syntax of a language
o Grammar
o Syntactic tree
o BNF metalanguage
o Semantics and syntax
• The C language
o Variable and constant types
o Operators and expressions
o Pointers
o Arrays
o Instructions
o Functions
o Structured data
• Data structures and elementary algorithms
o Lists: i) Sequential representation; ii) representation in linked form with arrays and indexes; ii) Representation connected with pointers
o Iteration
• Sorting algorithms on vectors
o Sequential-sort
• A brief overview of the trees
o Trees
o Research Binary Trees: i) Visit in recursive form; ii) Research; iii) Ordered entry.
Application of algorithms
• Excel
o Basic Operations/Formulas (Filters, Sum, Average, Max and Min, simple formula creation, ...)
o Data analysis: Tables and Charts
o Creating and Using Macros
Course program - Last names M-Z
Representation
• Introduction to C language
o Types, variables and constants
o Operators and expressions
o Instructions
• Data representation
o Numbers
o Unsigned Integers
o Characters
o Signed Integers
• Elements of language syntax
Elements of computer architecture
Compiling and linking programs
• The C language
o Variable and constant types
o Operators and expressions
o Pointers
o Arrays
o Instructions
o Functions
o Structured data
• Data structures and elementary algorithms
o Lists: i) Sequential representation; ii) representation in linked form with arrays and indexes; ii) Representation with pointers
o Iteration
• Sorting algorithms on vectors
o Sequential-sort
• A brief overview of the trees
o Trees
o Binary Search Trees: i) Visit in recursive form; ii) Search; iii) Ordered entry.
Application of algorithms
• Excel
o Basic Operations/Formulas (Filters, Sum, Average, Max and Min, simple formula creation, ...)
o Data analysis: Tables and Charts
o Creating and Using Macros