20810526-1 - 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, 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.

Curriculum

Canali

teacher profile | teaching materials

Programme

COURSE PROGRAM

Computer Operation and Information Representation
- Computer architecture
- Operating systems
- Binary arithmetic
- Compilation and execution of programs
Algorithms
- Specifications
- Quality
- Representation and design of algorithms
Programming Fundamentals
- Programming languages
- Variables
- Statements
- Data types
- Structured statements
- Programming style
- Program structure
- Functions
Software Correctness
- Testing methods
- Debugging
Data Set Management
- Arrays
- Strings

Prerequisiti

None

Core Documentation

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


Reference Bibliography

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

Type of delivery of the course

- live and online lectures, live and online exercise sessions - attending is not mandatory

Attendance

- attending is not mandatory

Type of evaluation

- The exam consists of some multiple-choice answers and of some programming exercises, to be realized on a computer. Two intermediate examinations, together with a preliminary one, replace the exam, if passed with success.

teacher profile | teaching materials

Programme

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

Prerequisiti

None

Core Documentation

Autore: Bellini, Guidi
Titolo: Linguaggio C - Guida alla programmazione con elementi di Python
Edizione: Settima edizione
Editore: McGraw-hill
Anno: 2025

Reference Bibliography

Author: Kernighan, Ritchie Title: Il linguaggio C. Principi di programmazione e manuale di riferimento Edition: Seconda edizione Editor: Pearson Year: 2004

Type of delivery of the course

live and online lectures, live and online exercise sessions

Attendance

attending is not mandatory

Type of evaluation

The exam consists of some multiple-choice answers and of some programming exercises, to be realized on a computer. Two intermediate examinations, together with a preliminary one, replace the exam, if passed with success. Student assessment is based on the Dublin Descriptors and takes into account the level of knowledge, understanding, and critical processing of the topics covered in the course. Students who demonstrate that they have acquired the fundamental concepts and are able to apply them in simple contexts will receive a passing grade. Average grades will be awarded to those who, in addition to mastering the basics, show the ability to analyze and independently elaborate on more complex concepts. The highest grades are reserved for students who demonstrate in-depth understanding, synthesis skills, critical thinking, and autonomy in solving problems, including new ones or those not explicitly addressed during the course.

Canali

teacher profile | teaching materials

Mutuazione: 20810526-1 FONDAMENTI DI INFORMATICA I MODULO in Ingegneria Informatica e dell'Intelligenza Artificiale L-8 R CANALE 1 LIMONGELLI CARLA

Programme

COURSE PROGRAM

Computer Operation and Information Representation
- Computer architecture
- Operating systems
- Binary arithmetic
- Compilation and execution of programs
Algorithms
- Specifications
- Quality
- Representation and design of algorithms
Programming Fundamentals
- Programming languages
- Variables
- Statements
- Data types
- Structured statements
- Programming style
- Program structure
- Functions
Software Correctness
- Testing methods
- Debugging
Data Set Management
- Arrays
- Strings

Prerequisiti

None

Core Documentation

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


Reference Bibliography

Author: Kernighan, Ritchie Title: Il linguaggio C. Principi di programmazione e manuale di riferimento Edition: Seconda edizione Editor: Pearson Year: 2004

Type of delivery of the course

- live and online lectures, live and online exercise sessions - attending is not mandatory

Attendance

- attending is not mandatory

Type of evaluation

- The exam consists of some multiple-choice answers and of some programming exercises, to be realized on a computer. Two intermediate examinations, together with a preliminary one, replace the exam, if passed with success.

teacher profile | teaching materials

Mutuazione: 20810526-1 FONDAMENTI DI INFORMATICA I MODULO in Ingegneria Informatica e dell'Intelligenza Artificiale L-8 R CANALE 2 FRATI FABRIZIO

Programme

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

Prerequisiti

None

Core Documentation

Autore: Bellini, Guidi
Titolo: Linguaggio C - Guida alla programmazione con elementi di Python
Edizione: Settima edizione
Editore: McGraw-hill
Anno: 2025

Reference Bibliography

Author: Kernighan, Ritchie Title: Il linguaggio C. Principi di programmazione e manuale di riferimento Edition: Seconda edizione Editor: Pearson Year: 2004

Type of delivery of the course

live and online lectures, live and online exercise sessions

Attendance

attending is not mandatory

Type of evaluation

The exam consists of some multiple-choice answers and of some programming exercises, to be realized on a computer. Two intermediate examinations, together with a preliminary one, replace the exam, if passed with success. Student assessment is based on the Dublin Descriptors and takes into account the level of knowledge, understanding, and critical processing of the topics covered in the course. Students who demonstrate that they have acquired the fundamental concepts and are able to apply them in simple contexts will receive a passing grade. Average grades will be awarded to those who, in addition to mastering the basics, show the ability to analyze and independently elaborate on more complex concepts. The highest grades are reserved for students who demonstrate in-depth understanding, synthesis skills, critical thinking, and autonomy in solving problems, including new ones or those not explicitly addressed during the course.

Canali

teacher profile | teaching materials

Mutuazione: 20810526-1 FONDAMENTI DI INFORMATICA I MODULO in Ingegneria Informatica e dell'Intelligenza Artificiale L-8 R CANALE 1 LIMONGELLI CARLA

Programme

COURSE PROGRAM

Computer Operation and Information Representation
- Computer architecture
- Operating systems
- Binary arithmetic
- Compilation and execution of programs
Algorithms
- Specifications
- Quality
- Representation and design of algorithms
Programming Fundamentals
- Programming languages
- Variables
- Statements
- Data types
- Structured statements
- Programming style
- Program structure
- Functions
Software Correctness
- Testing methods
- Debugging
Data Set Management
- Arrays
- Strings

Prerequisiti

None

Core Documentation

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


Reference Bibliography

Author: Kernighan, Ritchie Title: Il linguaggio C. Principi di programmazione e manuale di riferimento Edition: Seconda edizione Editor: Pearson Year: 2004

Type of delivery of the course

- live and online lectures, live and online exercise sessions - attending is not mandatory

Attendance

- attending is not mandatory

Type of evaluation

- The exam consists of some multiple-choice answers and of some programming exercises, to be realized on a computer. Two intermediate examinations, together with a preliminary one, replace the exam, if passed with success.

teacher profile | teaching materials

Mutuazione: 20810526-1 FONDAMENTI DI INFORMATICA I MODULO in Ingegneria Informatica e dell'Intelligenza Artificiale L-8 R CANALE 2 FRATI FABRIZIO

Programme

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

Prerequisiti

None

Core Documentation

Autore: Bellini, Guidi
Titolo: Linguaggio C - Guida alla programmazione con elementi di Python
Edizione: Settima edizione
Editore: McGraw-hill
Anno: 2025

Reference Bibliography

Author: Kernighan, Ritchie Title: Il linguaggio C. Principi di programmazione e manuale di riferimento Edition: Seconda edizione Editor: Pearson Year: 2004

Type of delivery of the course

live and online lectures, live and online exercise sessions

Attendance

attending is not mandatory

Type of evaluation

The exam consists of some multiple-choice answers and of some programming exercises, to be realized on a computer. Two intermediate examinations, together with a preliminary one, replace the exam, if passed with success. Student assessment is based on the Dublin Descriptors and takes into account the level of knowledge, understanding, and critical processing of the topics covered in the course. Students who demonstrate that they have acquired the fundamental concepts and are able to apply them in simple contexts will receive a passing grade. Average grades will be awarded to those who, in addition to mastering the basics, show the ability to analyze and independently elaborate on more complex concepts. The highest grades are reserved for students who demonstrate in-depth understanding, synthesis skills, critical thinking, and autonomy in solving problems, including new ones or those not explicitly addressed during the course.

Canali

teacher profile | teaching materials

Mutuazione: 20810526-1 FONDAMENTI DI INFORMATICA I MODULO in Ingegneria Informatica e dell'Intelligenza Artificiale L-8 R CANALE 1 LIMONGELLI CARLA

Programme

COURSE PROGRAM

Computer Operation and Information Representation
- Computer architecture
- Operating systems
- Binary arithmetic
- Compilation and execution of programs
Algorithms
- Specifications
- Quality
- Representation and design of algorithms
Programming Fundamentals
- Programming languages
- Variables
- Statements
- Data types
- Structured statements
- Programming style
- Program structure
- Functions
Software Correctness
- Testing methods
- Debugging
Data Set Management
- Arrays
- Strings

Prerequisiti

None

Core Documentation

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


Reference Bibliography

Author: Kernighan, Ritchie Title: Il linguaggio C. Principi di programmazione e manuale di riferimento Edition: Seconda edizione Editor: Pearson Year: 2004

Type of delivery of the course

- live and online lectures, live and online exercise sessions - attending is not mandatory

Attendance

- attending is not mandatory

Type of evaluation

- The exam consists of some multiple-choice answers and of some programming exercises, to be realized on a computer. Two intermediate examinations, together with a preliminary one, replace the exam, if passed with success.

teacher profile | teaching materials

Mutuazione: 20810526-1 FONDAMENTI DI INFORMATICA I MODULO in Ingegneria Informatica e dell'Intelligenza Artificiale L-8 R CANALE 2 FRATI FABRIZIO

Programme

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

Prerequisiti

None

Core Documentation

Autore: Bellini, Guidi
Titolo: Linguaggio C - Guida alla programmazione con elementi di Python
Edizione: Settima edizione
Editore: McGraw-hill
Anno: 2025

Reference Bibliography

Author: Kernighan, Ritchie Title: Il linguaggio C. Principi di programmazione e manuale di riferimento Edition: Seconda edizione Editor: Pearson Year: 2004

Type of delivery of the course

live and online lectures, live and online exercise sessions

Attendance

attending is not mandatory

Type of evaluation

The exam consists of some multiple-choice answers and of some programming exercises, to be realized on a computer. Two intermediate examinations, together with a preliminary one, replace the exam, if passed with success. Student assessment is based on the Dublin Descriptors and takes into account the level of knowledge, understanding, and critical processing of the topics covered in the course. Students who demonstrate that they have acquired the fundamental concepts and are able to apply them in simple contexts will receive a passing grade. Average grades will be awarded to those who, in addition to mastering the basics, show the ability to analyze and independently elaborate on more complex concepts. The highest grades are reserved for students who demonstrate in-depth understanding, synthesis skills, critical thinking, and autonomy in solving problems, including new ones or those not explicitly addressed during the course.