INTRODUCTION TO IMPERATIVE PROGRAMMING

INTRODUCTION TO IMPERATIVE PROGRAMMING

_
iten
Code
52473
ACADEMIC YEAR
2018/2019
CREDITS
8 credits during the 1st year of 8766 Mathematical Statistics and Data Management (L-35) GENOVA

8 credits during the 1st year of 8760 Mathematics (L-35) GENOVA

SCIENTIFIC DISCIPLINARY SECTOR
INF/01
LANGUAGE
Italian
TEACHING LOCATION
GENOVA (Mathematical Statistics and Data Management)
semester
2° Semester
Teaching materials

OVERVIEW

The purpose of the course is to provide the tools to imperative programming through the introduction of high-level languages.

AIMS AND CONTENT

LEARNING OUTCOMES

Introduction to programming languages through the construction of simple algorithms in C ++.

AIMS AND LEARNING OUTCOMES

In particular, the following topics will be covered:

  1.  Basics about computers: data representation and arithmetic processors; Computer architecture hints and operating systems for the execution basic understanding of programs.
  2.  Introduction to Programming: the high-level programming languages; state and change of state; statements and basic instructions;  basic and structured types;; simple algorithms and their implementation; structured and modular programming.
  3. Programming: design of sequential size programs starting from the informal specification of the problem; compilation; code execution; basic ideas of testing.


In the first part of the course (first two weeks) we will introduce MATLAB, an environment for the numerical calculation and statistical analysis.

The programming parts will use a subset of the C ++ language as an example of high-level language.

Teaching methods

The course provides 3 hours of lessons in the classroom and 4 hours of lab per week.

SYLLABUS/CONTENT

  1. Basics about computers: data representation and arithmetic processors; Computer architecture hints and operating systems for the execution basic understanding of programs.
  2.  Introduction to Programming: the high-level programming languages; state and change of state; statements and basic instructions;  basic and structured types;; simple algorithms and their implementation; structured and modular programming.
  3. Programming: design of sequential size programs starting from the informal specification of the problem; compilation; code execution; basic ideas of testing.


In the first part of the course (first two weeks) we will introduce MATLAB, an environment for the numerical calculation and statistical analysis.

The programming parts will use a subset of the C ++ language as an example of high-level language.

RECOMMENDED READING/BIBLIOGRAPHY

 

Programming Principles and Practice using C++, Addison-Wesley Professional, 2008
C++. Fondamenti di programmazione -- H. M. Deitel, P. J. Deitel; Editore: Apogeo 2009

TEACHERS AND EXAM BOARD

Ricevimento: Send a mail to patrizia.boccacci@unige.it to make an appointment    

Ricevimento: Appointment by email

Ricevimento: On Thursday from 16.00 to 18.00 by appointment agreed on email (The teacher has more courses for various courses of study, always specify the name and course)

Exam Board

PATRIZIA BOCCACCI (President)

GIANNA REGGIO (President)

FRANCESCO MASULLI

LESSONS

Teaching methods

The course provides 3 hours of lessons in the classroom and 4 hours of lab per week.

LESSONS START

The class will start according to the academic calendar.

EXAMS

Exam description

The final exam consists of:

  • a written test  (questions using Aulaweb) (maximum grade 31)
  • a laboratory test, consisting in writing a C ++ program (maximum grade 31).


It is not necessary that the two tests are passed in the same session.

The exam is passed when the written test  (with Rate> = 18) and laboratory (with Rate> = 18) are passed. The final grade will be the average of the two votes, plus an extra of 2 points (depending on laboratory exercises). Who will obtain a final grade> = 31, will get "30 e lode".

Assessment methods

The written examination will want to evaluate the acquisition of basic concepts presented during the course.


The  laboratory test wants to evaluate the ability to produce the C ++ code running to solve small problems, and consists of completing a "template" program that will be provided as a file with the extension .cpp. The file will be included guide on what you need to enter, and on the evaluation of the different parties. It will also be provided an input to test it with the results expected for each part. Deliveries will be evaluated taking into account the following aspects in order of decreasing importance:

  1. code  running and producing  correct numeric results (minimum requirement)
  2. style and readability of the code
  3. calculation efficient

FURTHER INFORMATION

Prerequisites:

No prerequisite is required.  Basics of logic and mathematics normally provided by the high school are still useful.