Programming and data structures

5JUCSN03

ECTS3SEMESTER5
lecturesclasses / seminarspractical workintegrative teachingindependent work
10h20h0h0h30h
Language used
French


Course supervisor(s)

Pierre-Etienne Moreau and Guillaume Bonfante

Key words
Data numerical encoding, databases, algorithmic, programming languages
PrerequisitesThe scientific undergraduate level is sufficient
Overall objective

Learn to design algorithms and implement them

Course content and organisation

The main goal for this course is to give the students the fundamentals as well as a general knowledge about computer sciences which are mandatory for any engineer to possess in order to understand the world in which he will hopefully work.


Level to be reached:

  • Know the vocabulary that characterizes a programming language (interpreted, compiled, variable scope, typing, instructions, etc.)
  • Be able to choose adequate data structures to solve a problem
  • Be able to describe an algorithm to solve a problem
  • Be able to model information in the form of data structures
  • Be able to program an algorithm in a programming language (Python)
  • Understand the semantics of the constructs of a language

Content - Program

  • characteristics of a programming language
  • basic algorithmics
  • basic data types (integers, strings, tuples), memory model, namespace and instructions
  • input-output, files, graphical interfaces
  • advanced data structures (sets, dictionaries, lists)
  • advanced constructions (lambda expressions, comprehensions)

Skills

Levels Description and operational verbs
Know The fundamental aspects of computer science: notion of coding, notion of algorithmic, notion of syntax
UnderstandMemory representation of information. Notion of value, notion of variable.
Semantics of an algorithm
Apply  Programming via a language like python. Mastery of a programming environment: editing, execution, debugging, project organization, synthesis of executables
Analyse 

Definition of representation, specification of the problem, functional analysis of problems

Summarise

A computer solution for elementary problems.

Single or double loop iterative algorithms

AssessThe adequacy of a representation, the quality of an algorithm
Compliance with the United Nations Sustainable Development Goals
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  


Evalution methods
Continuous assessment
  •  
Written test
  •  
Oral presentation / viva
  •  
Written report / project
  •  
  • Aucune étiquette