COMPUTER LAB

Giuseppe SCANNIELLO COMPUTER LAB

0512900009
DEPARTMENT OF PHYSICS "E. R. CAIANIELLO"
EQF6
SCIENCE AND NANOTECHNOLOGY FOR SUSTAINABILITY
2023/2024

OBBLIGATORIO
YEAR OF COURSE 1
YEAR OF DIDACTIC SYSTEM 2022
AUTUMN SEMESTER
CFUHOURSACTIVITY
324LESSONS
336LAB
Objectives
THE OBJECTIVE OF THIS COURSE IS TO PROVIDE STUDENTS WITH THE BASIC TECHNIQUES OF STRUCTURED PROGRAMMING AND TO INTRODUCE THE BASIC CONCEPTS OF OBJECT-ORIENTED PROGRAMMING THROUGH THE DESIGN AND IMPLEMENTATION OF PROGRAMS USING THE PYTHON PROGRAMMING LANGUAGE (PYTHON 3).

KNOWLEDGE AND UNDERSTANDING
- STUDENTS WILL ACQUIRE THE KNOWLEDGE OF STRUCTURED PROGRAMMING AND BASIC CONCEPTS OF OBJECT-ORIENTED PROGRAMMING.

ABILITY TO APPLY KNOWLEDGE AND UNDERSTANDING
- THANKS TO THE THEORETICAL NOTIONS AND PRACTICAL EXAMPLES PROVIDED IN THE LESSONS, STUDENTS WILL BE ABLE TO IMPLEMENT PROGRAMS USING THE PYTHON PROGRAMMING LANGUAGE.
Prerequisites
NONE
Contents
INTRODUCTION: COMPUTERS AND PROGRAMS, THE ANATOMY OF A COMPUTER, THE PYTHON PROGRAMMING LANGUAGE, VARIABLES, ARITHMETIC OPERATORS AND FUNCTIONS, STRINGS, I / O, HINTS OF GRAPHICS.

DECISIONS: THE STATEMENT IF, COMPARISON OF VALUES, STRING COMPARISON, COMPARISON OF OBJECTS, COMPARISON WITH NULL, MULTIPLE ALTERNATIVES, USE OF BOOLEAN EXPRESSIONS.

ITERATIONS: WHILE LOOPS, FOR LOOPS, NESTED LOOPS, PROCESSING OF INCOMING DATA, RANDOM NUMBERS AND SIMULATION.

COMPLEXITY ANALYSIS: COMPUTATIONAL AND ASYMPTOTIC COMPLEXITY, O AND O NOTATIONS, PROPERTIES OF THESE NOTATIONS, EXAMPLES OF COMPLEXITY, ASYMPTOTIC COMPLEXITY, THE BEST, MEDIUM AND WORST CASES.

FUNCTIONS: FUNCTIONS SUCH AS BLACK BOXES, IMPLEMENTATION AND TESTING OF FUNCTIONS, PASSAGE OF PARAMETERS, RETURNED VALUES, DESIGN OF TOOLS FOR IMAGE PROCESSING, HINTS ON RECURSIVE FUNCTIONS.

LISTS: BASIC PROPERTIES OF LISTS, OPERATIONS WITH LISTS, ELEMENTARY ALGORITHMS, USE OF LISTS IN FUNCTIONS, ADAPTATION OF ALGORITHMS, TABLES.

EXCEPTIONS AND FILES: READ AND WRITE TEXT FILES, BINARY FILES AND RANDOM ACCESS, EXCEPTION HANDLING.

SETS AND DICTIONARIES: SETS, CREATING AND USING SETS, DICTIONARIES,
COMPLEX STRUCTURES.

OBJECTS AND CLASSES: OBJECT-ORIENTED PROGRAMMING, DEFINE THE PUBLIC INTERFACE OF A CLASS, CONSTRUCTORS, CREATE METHODS, OBJECT REFERENCES, SHARED REFERENCES, NONE AND SELF, INHERITANCE HIERARCHIES, INVOKE THE SUPERCLASS CONSTRUCTOR, OVERRIDE METHODS, POLYMORPHISM.

SORTING AND SEARCH: SORTING BY SELECTION AND ITS ANALYSIS, SORTING BY MERGING (MERGE SORT) AND ITS ANALYSIS, LINEAR AND BINARY SEARCH AND COMPUTATIONAL ANALYSIS.
Teaching Methods
THE COURSE INCLUDES BOTH FRONTAL AND LABORATORY LESSONS. ALTHOUGH ATTENDANCE TO LESSONS IS NOT MANDATORY, IT IS STRONGLY RECOMMENDED.
Verification of learning
THE ACHIEVEMENT OF THE TEACHING OBJECTIVES IS CERTIFIED BY PASSING A WRITTEN AND/OR PRACTICAL AND/OR ORAL TEST WITH A MARK OUT OF THIRTY. THE EXAM TESTS AIM TO ASSESS THE LEVEL OF KNOWLEDGE AND UNDERSTANDING THE STUDENT ATTAINED, AS WELL AS THE ABILITY TO APPLY THE ATTAINED KNOWLEDGE.
Texts
CAY HORSTMANN - RANCE D. NECAISE, “PYTHON FOR EVERYONE"2ND EDITION, JOHN WILEY & SONS INC.
More Information
EMAILS: SIROMANO@UNISA.IT (PROF.,SIMONE ROMANO), GSCANNIELLO@UNISA.IT (PROF.,GIUSEPPE SCANNIELLO)
  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2024-11-05]