Fundamental notions of computer architecture and programming 
The class completes the basic knowledge in terms of computer programming using the C language. Programming skills are seen as a way to solve problems of increasing complexity focusing on the designer’s ability of the students. Notions related to the dynamic memory structures, abstract data types, and recursive programming are introduced. 
C language complements [9 hours]: files, strings, structures, dynamic memory allocation
Simple problem solving: quadratic sorting algorithms, linear and binary search, merge of arrays, dynamic manipulation of onedimensional arrays, dynamic manipulation of twodimensional arrays, queues and stacks on static and dynamic array structures.
Recursion basics: recursion tree, termination condition. Simple recursive problem solving: factorial computation, Fibonacci’s numbers, binary search, merge sort, the 8queens problem.
Basic dynamic data structures: lists, queues, stacks
Basic notions of algorithms’ complexity 
Professor/Tutor responsible for teaching




Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari



Farouk Al Omari

