Programming fundamentals

Algorithms: learn to reason before you code

Learn to reason like a developer: variables, conditions, loops, arrays, functions and sorting.

Request this program
Duration
21 h · 3 days
Level
Beginner
Format
On site · Remote · Blended
Max. group size
12 participants

Overview

This program gives the foundations common to all languages: breaking down a problem, expressing it as an algorithm, using variables, conditions, loops, arrays and functions, then tackling sorting, recursion and traversal of structures. Exercises are independent of any specific language to develop logic before syntax.

Who this program is for

  • Future developers and career changers
  • Computer science students
  • Professionals who want to understand programming

Prerequisites

  • Rigor and a taste for logic
  • Good command of computer tools

Learning objectives

  • Break a problem down into steps
  • Write algorithms with variables, expressions and operators
  • Use conditions and loops, including nested ones
  • Work with one- or multi-dimensional arrays
  • Write functions and procedures
  • Compare sorting and search algorithms
  • Understand recursion

Detailed curriculum

6 modules · 21 h · 3 days

Day 1
Thinking in algorithms3.5 h🛠 1 workshop
30% theory · 70% practice
  • What is an algorithm
  • Variables, constants and types
  • Expressions and operators
  • Input, output and display
  • Pseudocode and flowcharts
🛠 Hands-on workshops
First algorithms1.5 h

Solve simple calculation and conversion problems.

✅ Deliverable : A collection of algorithms
Conditions and logic3.5 h
50% theory · 50% practice
  • Conditional statements
  • Logical operators and truth tables
  • Multiple cases
  • Simplifying conditions
  • Tests and test cases
Day 2
Loops3.5 h🛠 1 workshop
30% theory · 70% practice
  • Counter loops, while, repeat
  • Nested loops
  • Accumulators and counters
  • Sentinels and stops
  • Classic mistakes: infinite loops
🛠 Hands-on workshops
Drawings and sequences1.5 h

Produce patterns and number sequences with loops.

✅ Deliverable : A series of loop algorithms
Data, arrays and functions3.5 h🛠 1 workshop
30% theory · 70% practice
  • Strings and booleans
  • One-, two- and three-dimensional arrays
  • Lists and linked structures
  • Functions and procedures
  • Parameters and scope
🛠 Hands-on workshops
Grade management2 h

Manage and analyze a table of grades.

✅ Deliverable : A statistics program
Day 3
Sorting and searching3.5 h🛠 1 workshop
30% theory · 70% practice
  • Selection, bubble and insertion sort
  • Sequential and binary search
  • Comparing costs
  • Choosing an algorithm
  • Practical cases
🛠 Hands-on workshops
Sorting contest1.5 h

Implement and time several sorts.

✅ Deliverable : A quantified comparison
Recursion, traversal and documentation3.5 h
50% theory · 50% practice
  • Recursive functions
  • Stacks and queues: LIFO and FIFO traversal
  • Tree traversal: notions
  • Documenting and testing your algorithms
  • From pseudocode to a language: first translations

Tools and technologies

Visual Studio Code

Teaching methods

  • Alternating short lectures and hands-on work
  • Live demonstrations by the trainer
  • Capstone project built throughout the modules
  • Group corrections and discussion of best practices

Assessment

  • Hands-on exercises corrected in each module
  • Mini-project completed at the end of the course
  • Knowledge-check quiz

Required equipment

  • A computer with an internet connection
  • A text editor or an online algorithm tool

Resources provided

  • Course materials and repository of corrected exercises
  • Collection of solved exercises
  • Summary sheets on data structures

Career outcomes

  • An ability to analyze and break down problems
  • A solid foundation to learn any language
  • A collection of personal algorithms