LABORATORY OF INFORMATICS

Fisica LABORATORY OF INFORMATICS

0512600017
DIPARTIMENTO DI FISICA "E.R. CAIANIELLO"
EQF6
PHYSICS
2017/2018

OBBLIGATORIO
YEAR OF COURSE 1
YEAR OF DIDACTIC SYSTEM 2017
PRIMO SEMESTRE
CFUHOURSACTIVITY
324LESSONS
336LAB
Objectives
THE COURSE AIMS TO PROVIDE STUDENTS WITH THE FIRST NOTIONS OF COMPUTER SCIENCE AND TO MAKE THEM ABLE TO WRITE SMALL PROGRAMS
FOR SOLVING SIMPLE PROBLEMS. STARTING FROM AN ELEMENTARY DESCRIPTION OF VON NEUMANN’S COMPUTER MODEL, STUDENTS WILL BE
INTRODUCED TO THE STUDY OF THE MAIN COMPONENTS OF A MODERN COMPUTER.

THE COURSE WILL PROVIDE THE BASIC TOOLS TO IDENTIFY A SOLVING STRATEGY (ALGORITHM) FOR A GIVEN SIMPLE PROBLEM AND TO IMPLEMENT
IT IN THE C PROGRAMMING LANGUAGE.
THE PROCESS INCLUDES DATA REPRESENTATION AND MEMORY STORAGE.
THE BACKGROUND WILL BE ENRICHED BY THE STUDY OF SOME FUNDAMENTAL ALGORITHMS AND SOME BASIC
NOTION OF COMPUTATIONAL COMPLEXITY.

KNOWLEDGE AND UNDERSTANDING:
THE COURSE AIMS TO PROVIDE STUDENTS WITH THE BASIC PRINCIPLES OF COMPUTER SCIENCE AND TO MAKE THEM MASTER THE ELEMENTARY
SYNTAX OF THE C PROGRAMMING LANGUAGE.

APPLYING KNOWLEDGE AND UNDERSTANDING:
THE COURSE AIMS TO MAKE THE STUDENTS ABLE TO DESIGN SIMPLE ALGORITHMS APPLIED TO THE SOLUTION OF SIMPLE PROBLEMS AND TO
IMPLEMENT THEM USING THE PROGRAMMING TECHNIQUES OF THE C LANGUAGE.
Prerequisites
NONE (THE COURSE IS FOR FIRST-YEAR PHYSICS STUDENTS).
Contents
NOTIONS ON COMPUTER ARCHITECTURE; INTRODUCTION TO PROGRAM COMPILATION; FOUNDATIONS OF COMPUTER PROGRAMMING; INPUT/OUTPUT; READING USER INPUT; EXPRESSIONS; ARITHMETIC OPERATORS; ASSIGNMENT OPERATORS; COMPOSITE ASSIGMENT; INCREMENT AND DECREMENT OPERATORS; CONDITIONAL STATEMENTS; LOOPS: WHILE, DO-WHILE AND FOR INSTRUCTIONS; DATA TYPES; CHAR DATA TYPE; GETCHAR AND PUTCHAR FUNCTIONS; EXPLICIT TYPE CONVERSION (CAST), DATA TYPE DEFINITION (TYPEDEF INSTRUCTION) AND THE SIZEOF OPERATOR; ARRAYS; FUNCTIONS: DEFINITION, CALL AND DECLARATION; ARRAYS AS FUNCTION ARGUMENTS; RECURSION; POINTERS; LOCAL AND EXTERNAL VARIABLES; POINTERS AND ARRAYS; POINTER ARITHMETIC, ARRAY NAME AS POINTER, POINTERS AND MULTIDIMENSIONAL ARRAYS; STRINGS; STRING LITERALS, STRING VARIABLES AND THEIR INITIALIZATION; STRINGS AS ARRAYS OF CHARACTERS AND POINTERS TO CHARACTERS; COMMAND LINE ARGUMENTS; NOTIONS ON FILE MANAGEMENT; ELEMENTARY NOTIONS OF COMPUTATIONAL COMPLEXITY.
Teaching Methods
THE COURSE INCLUDES BOTH CLASS LECTURES AND LABORATORY PROGRAMMING PRACTICE. THE LABORATORY PRACTICE HOURS INCLUDE ALSO THE DEVELOPMENT OF PROGRAMMING PROJECTS UNDER THE GUIDANCE OF THE TEACHER.
Verification of learning
WRITTEN EXAM AND LABORATORY TEST.
THE WRITTEN EXAM IS A FIRST EVALUATION OF THE STUDENT'S BASIC KNOWLEDGE.
IN THE LABORATORY TEST THE STUDENT HAS TO WRITE A SMALL PROGRAM SOLVING A GIVEN SIMPLE PROBLEM.
Texts
TITLE: C PROGRAMMING: A MODERN APPROACH
AUTHOR: K. N. KING
PUBLISHER: W. W. NORTON & COMPANY, SECOND EDITION, 2008.

TITLE: THE C PROGRAMMING LANGUAGE.
AUTHORS: BRIAN W. KERNIGHAN, DENNIS M. RITCHIE.
PUBLISHER: PRENTICE HALL; 2 EDITION.
More Information
TEACHER'S E-MAIL ADDRESS: DEMARCO@DIA.UNISA.IT
  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2019-05-14]