FOUNDATIONS OF COMPUTER SCIENCE
(objectives)
Foundations of Computer Science To provide the basics of "computer culture" through the introduction of effective methodological and conceptual tools, aiming to face in a flexible way the evolution of technology and the broad world of applications. Specific objectives are:- To introduce computer science as a discipline for automatic problem solving;- To examine basic concepts related to programming electronic computers; in particular, syntax and semantics, methods and techniques for formal programming, algorithm efficiency and correctness;- To introduce programming techniques such as iteration and recursion;- To introduce fundamental data structures such as arrays and lists. To provide the basics of "computer culture" through the introduction of effective methodological and conceptual tools, aiming to face in a flexible way the evolution of technology and the broad world of applications, emphasizing the role of Computer Science as a discipline for the automatic solution of problems. Specific objectives: - To understand the essential elements related to computer architecture and operating systems, as well as information representation; - To gain the ability to design and code simple algorithms using structured programming and basic programming techniques such as iteration, as well as elementary data structures; - To understand and use testing methodologies (debugging) for the produced code.
To provide the fundamental skills concerning the “top-down approach” to algorithm design and modular programming, as well as the main methods that allow performing both qualitative and quantitative comparisons among different algorithmic solutions.
Specific objectives:
- To understand and apply problem-solving techniques for algorithm design, with particular reference to approaches based on problem decomposition and simplification; - To understand and apply modular and recursive programming paradigms; - To understand and apply methodological tools for the asymptotic evaluation of algorithm efficiency; - To understand and apply both formal and pragmatic techniques for algorithm correctness verification and program validation; - To gain practical skills in using fundamental data collections in code development.
|
Code
|
20810526 |
Language
|
ITA |
Type of certificate
|
Profit certificate
|
Module: FOUNDATIONS OF COMPUTER SCIENCE
(objectives)
Foundations of Computer Science To provide the basics of "computer culture" through the introduction of effective methodological and conceptual tools, aiming to face in a flexible way the evolution of technology and the broad world of applications. Specific objectives are:- To introduce computer science as a discipline for automatic problem solving;- To examine basic concepts related to programming electronic computers; in particular, syntax and semantics, methods and techniques for formal programming, algorithm efficiency and correctness;- To introduce programming techniques such as iteration and recursion;- To introduce fundamental data structures such as arrays and lists. To provide the basics of "computer culture" through the introduction of effective methodological and conceptual tools, aiming to face in a flexible way the evolution of technology and the broad world of applications, emphasizing the role of Computer Science as a discipline for the automatic solution of problems. Specific objectives: - To understand the essential elements related to computer architecture and operating systems, as well as information representation; - To gain the ability to design and code simple algorithms using structured programming and basic programming techniques such as iteration, as well as elementary data structures; - To understand and use testing methodologies (debugging) for the produced code.
|
Code
|
20810526-1 |
Language
|
ITA |
Type of certificate
|
Profit certificate
|
Credits
|
6
|
Scientific Disciplinary Sector Code
|
ING-INF/05
|
Contact Hours
|
54
|
Type of Activity
|
Basic compulsory activities
|
Group: CANALE 1
Teacher
|
LIMONGELLI CARLA
(syllabus)
COURSE PROGRAM
Computer operations and representation of information -computer architecture -operating systems -binary arithmetic -compilation and execution of programs
Algorithms -program specification -programming quality -representation and algorithm design
Programming Fundamentals -programming langauges -variables -Instructions -types data -Instructions structured -style programming -structure of the program -functions
Software correctness -testing methods -debugging
Management of data sets -arrays -strings
Pointers and dynamic memory allocation Data structures, struct, files Recursion Sorting and searching algorithms Computational cost of programs - Big O, Omega and Theta notations - best, average, and worst case analysis Data types: lists
(reference books)
Alessandro Bellini, Andrea Guidi Linguaggio C - Quinta edizione ISBN: 9788838668210- Autore: Kernighan, Ritchie Titolo: Il linguaggio C. Principi di programmazione e manuale di riferimento Editore: Pearson
|
Dates of beginning and end of teaching activities
|
From 30/09/2024 to 17/01/2025 |
Delivery mode
|
Traditional
|
Attendance
|
not mandatory
|
Evaluation methods
|
Written test
|
Group: CANALE 2
Teacher
|
FRATI FABRIZIO
(syllabus)
Computer operations and representation of information -computer architecture -operating systems -binary arithmetic -compilation and execution of programs
Algorithms -program specification -programming quality -representation and algorithm design
Programming Fundamentals -programming langauges -variables -Instructions -types data -Instructions structured -style programming -structure of the program -functions
Software correctness -testing methods -debugging
Management of data sets -arrays -strings
(reference books)
Author: Bellini, Guidi Title: Linguaggio C - Una guida alla programmazione con elementi di Objective-C Edition: 5-th edition Editor: McGraw-hill Year: 2013
|
Dates of beginning and end of teaching activities
|
From 30/09/2024 to 17/01/2025 |
Delivery mode
|
Traditional
|
Attendance
|
not mandatory
|
|
|
Module: FOUNDATIONS OF COMPUTER SCIENCE |
Code
|
20810526-2 |
Language
|
ITA |
Type of certificate
|
Profit certificate
|
Credits
|
6
|
Scientific Disciplinary Sector Code
|
ING-INF/05
|
Contact Hours
|
54
|
Type of Activity
|
Basic compulsory activities
|
|
|
|