Corso Vittorio Emanuele II, 39 - Roma 0669207671

Ingegneria Gestionale (Anno Accademico 2018/2019) - Indirizzo produzione

Programming



Slides

Lezione n. 1: Basic computer architecture
   Goals

   Overview
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 2: Data representation - Introduction to computer and programming (part I)
   Representations
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 3: Data representation - Introduction to computer and programming (part II)
   2's Complement

   Errors, Range

   ASCII code
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 4: Basic arithmetic
   Operations

   2C Operations

   Number Circle
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 5: Boolean algebra
   Definition by properties

   Algebra of Classes

   Boolean representation
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 6: Computer architecture
   Bus System Model

   ALU

   Memories
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 7: From hardware to software
   Instruction Cycle

   Assembly

   Executable code
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 8: Introduction to programming
   Data type

   Elementary blocks

   Loops
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 9: Elementary problem solving (parte I)
   Examples of solving problems

   Examples with flow charts
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 10: Elementary problem solving (parte II)
   Iterative constructs

   Recursive algorithms
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 11: Programming languages & starting example
   Procedural programming

   Classification of programming languages

   Compilation phases of the C language

   The first program
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 12: Program structure
   Elements of a program
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 13: Input/Output (Part I)
   Operators

   I/O of values
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 14: Input/Output (Part II)
   printf/scanf conversion specificiers

   Example of using printf
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 15: Input/Output (Part III)
   Advanced conversion specifiers

   Examples
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 16: Conditional statements (part I)
   The IF statement

   The SWITCH statement

   The conditional statement
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 17: Conditional statements (part II)Iterative Statements (part I)
   Iterative Statements
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 18: Iterative Statements (part II)
   The WHILE statement

   The FOR statement
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 19: Iterative Statements (part III)- Arrays (part I)
   Reti locali

   Ethernet

   Reti locali wireless (WLAN)

   PAN-Personal area network
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 20: Arrays (part II)
   Initialization

   Example of use of arrays with FOR loops
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 21: Arrays (part III) Sorting algorithms (part I)
   Matrices

   Sorting algorithms
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 22: Sorting algorithms (part II)
   Bubble sort

   Selection Sort

   Counting Sort
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 23: Functions (Part I)
   Divide and conquer strategy for solving problems

   Function semantics

   Global variables

   Parameter passing
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 24: Functions (Part II) Pointers (Part I)
   Pointers
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 25: Pointers (Part II)
   Examples
Vai alla slide della lezione Paolo Enrico Camurati
Lezione n. 26: Files
   File Handling in C

   File Access

   Access Rules

   Functions
Vai alla slide della lezione Farouk Al Omari
Lezione n. 27: Pointers I
   Computer Memory

   Pointers
Vai alla slide della lezione Farouk Al Omari
Lezione n. 28: Pointers II
   Pointers and Functions Arguments

   Pointers and Array

   Address Arithmetic
Vai alla slide della lezione Farouk Al Omari
Lezione n. 29: Strings
   Strings

   Strings as character pointers

   The strcmp() Function
Vai alla slide della lezione Farouk Al Omari
Lezione n. 30: Structures
   Structures in C

   Keeping Data Together

   Structures vs. Arrays

   Nested Structures

   Pointers to structures

   Array of structures

   General Notes on structures
Vai alla slide della lezione Farouk Al Omari
Lezione n. 31: Sorting I
   Why Sorting

   External and Internal Sorting

   Sorting Algorithms

   Our Focus

   Insertion Sort
Vai alla slide della lezione Farouk Al Omari
Lezione n. 32: Sorting II
   Selection Sort Algorithm

   Examples

   Sample Code

   Complexity Analysis

   Properties
Vai alla slide della lezione Farouk Al Omari
Lezione n. 33: Sorting III
   Bubble Sort

   Bubble Sort Algorithm

   Bubble Sort C Code

   Complexity Analysis

   Properties of Bubble Sort
Vai alla slide della lezione Farouk Al Omari
Lezione n. 34: Searching
   Notation

   Sequential Search

   Binary Search

   Complexity Analysis
Vai alla slide della lezione Farouk Al Omari
Lezione n. 35: 2d Arrays
   Two Dimensional Arrays

   Declaration

   Accessing 2D Arrays

   Arrays and Functions

   Array of Strings

   Dynamic Memory Allocation
Vai alla slide della lezione Farouk Al Omari
Lezione n. 36: Stacks I
   Stacks in our life

   Computer Stacks

   Stacks Manipulation

   Basic Operations on A Stack

   Implementing Stack with Array

   Data Structure
Vai alla slide della lezione Farouk Al Omari
Lezione n. 37: Stacks II
   Basic Operations - Push

   Example

   Stack Initialization - Revisited
Vai alla slide della lezione Farouk Al Omari
Lezione n. 38: Queues I
   Queues in out life

   Computer Queues

   Application of Queues

   Basic Operations on A Queue
Vai alla slide della lezione Farouk Al Omari
Lezione n. 39: Queues II
   Prototypes of functions on Queues

   Implementation of Queues
Vai alla slide della lezione Farouk Al Omari
Lezione n. 40: Queues III
   Implementing Circular Arrays in C

   Create A Queue

   Array implementation of queues
Vai alla slide della lezione Farouk Al Omari
Lezione n. 41: Linked Lists I
   Properties and Limitations of Array Representation

   Abstract Data Types

   Linked Lists

   Node and List Declarations
Vai alla slide della lezione Farouk Al Omari
Lezione n. 42: Linked Lists II
   Simple List Operations

   Set Position

   Insertion Function Prototype

   Insertion Code
Vai alla slide della lezione Farouk Al Omari
Lezione n. 43: Linked Lists III
   Simple List Operations

   Comments on Node Deletion

   Traverse a List

   Find a List size

   Find a Target Node
Vai alla slide della lezione Farouk Al Omari
Lezione n. 44: Stacks and Queues: Linked lists implementation I
   Stack is an Abstract Data type (ADT)

   Multiple Implementations

   key structures in C

   Create a Stack
Vai alla slide della lezione Farouk Al Omari
Lezione n. 45: Stacks and Queues: Linked lists implementation II
   Pop Operation

   Stack full function

   Compare Implementations
Vai alla slide della lezione Farouk Al Omari
Lezione n. 46: Recursion I
   Introduction

   Recursion Tree

   Recursion Process
Vai alla slide della lezione Farouk Al Omari
Lezione n. 47: Recursion II
   Designing Recursive Algorithms

   Implementation Considerations

   Binary Search
Vai alla slide della lezione Farouk Al Omari
Lezione n. 48: Recursion III
   Key Step Outline

   Backtracking Algorithms

   Choosing the data structure

   Implementation
Vai alla slide della lezione Farouk Al Omari
Lezione n. 49: Recursion IV
   The Towers of Hanoi

   Power Function

   Divide and Conquer Sorting

   Merge Sort
Vai alla slide della lezione Farouk Al Omari
Lezione n. 50: Notions of Algorithms Complexity
   Measures of Algorithm Complexity

   Efficiency Measures

   Big - O - Notation
Vai alla slide della lezione Farouk Al Omari
Lezione n. 51: Programming
   Pointers revisited
Vai alla slide della lezione Aliaa Youssif
Lezione n. 52: Pointers II
   Pointers revisited as arguments

   Pointers and arrays
Vai alla slide della lezione Aliaa Youssif
Lezione n. 53: Files
   Files general concept revisited
Vai alla slide della lezione Aliaa Youssif