Premiers pas en algorithmique

BTS SIO — Première année

🎯 Décomposer

Découper un problème en étapes simples et ordonnées

📦 Manipuler

Stocker et modifier des données dans des variables

❓ Décider

Utiliser une condition pour adapter le comportement

Un cas concret : commander des claviers

Imaginez : vous passez une commande en ligne. Le prix unitaire est 25 € et vous en voulez 3.

Quelles données ?

Quelles informations faut-il connaître avant de commencer ?

Quel calcul ?

Quelle opération permet d'obtenir le résultat attendu ?

Quel résultat ?

Qu'est-ce que l'on souhaite afficher ou transmettre à l'utilisateur ?

Qu'est-ce qu'un algorithme ?

Une suite ordonnée et précise d'instructions permettant de résoudre un problème.

Les trois étapes clés

1

Entrées

prixUnitaire = 25, quantite = 3

2

Traitement

25 × 3

3

Sortie

75 €

Le pseudo-code

Le pseudo-code décrit la solution en langage naturel structuré, sans imposer de langage de programmation. Il est lisible par tous et facile à traduire ensuite en Python, Java ou autre.

Les variables

Une variable est un emplacement nommé en mémoire qui contient une valeur pouvant changer au cours du programme.

Le nom reste fixe, la valeur peut évoluer à tout moment.

prixUnitaire

Valeur : 25

quantite

Valeur : 3

total

Valeur : 75

Instructions fondamentales

Lire

Saisie clavier — récupère une valeur depuis l'utilisateur

←

Affectation — la variable reçoit la valeur à droite

Afficher

Sortie — affiche un résultat à l'écran

Que va afficher ce code ?

quantite ← 3
quantite ← quantite + 1
Afficher quantite

Premier algorithme complet

Début
    Afficher "Prix d'un article ?"
    Lire prixUnitaire
    Afficher "Quantité ?"
    Lire quantite
    total ← prixUnitaire × quantite
    Afficher total
Fin

Identifiez chaque rôle

1

Entrées

Les deux instructions Lire récupèrent les données saisies.

2

Traitement

L'affectation calcule et stocke le résultat dans total.

3

Sortie

L'instruction Afficher présente le résultat à l'utilisateur.

Exécution pas à pas

L'ordinateur exécute les instructions dans l'ordre, une par une, sans initiative. Suivons l'algorithme étape par étape :

— signifie "pas encore renseigné" (≠ zéro)

Ajouter une condition : la réduction

Le magasin accorde une réduction de 10 % pour toute commande atteignant ou dépassant 100 €.

Si total ≥ 100 Alors
    total ← total × 0,90
FinSi
Afficher total

Comment ça fonctionne ?

Condition vraie (total ≥ 100)

On applique la réduction : multiplier par 0,90 conserve exactement 90 % du montant.

Condition fausse (total < 100)

Le bloc Alors est ignoré : le montant reste inchangé.

À vous de tester !

Pour chacun des cas suivants, la réduction s'applique-t-elle ? Quel est le montant final ?

1

Total initial : 75 €

Total < 100 €

Réduction ? ? — Montant final : ?

2

Total initial : 100 €

Total = 100 €

Réduction ? ? — Montant final : ?

3

Total initial : 150 €

Total > 100 €

Réduction ? ? — Montant final : ?

Exercice — Frais de livraison

Travail en binômes

Le problème

Les frais de livraison sont de 5 € pour toute commande inférieure à 50 €, et offerts à partir de 50 €.

Afficher le montant final à payer.

Votre mission

1

Identifier

Entrée(s) et sortie(s) du problème

2

Écrire

Le pseudo-code complet

3

Tester

Avec 30 € puis avec 60 €

Correction — Frais de livraison

Début
    Afficher "Montant de la commande ?"
    Lire montantCommande
    Si montantCommande ≥ 50 Alors
        fraisLivraison ← 0
    Sinon
        fraisLivraison ← 5
    FinSi
    montantFinal ← montantCommande + fraisLivraison
    Afficher montantFinal
Fin

Si… Sinon… FinSi

Cette structure choisit entre deux actions exclusives selon la condition.

Test 30 €

30 < 50 → frais = 5 €
Résultat : 35 €

Test 60 €

60 ≥ 50 → frais = 0 €
Résultat : 60 €

Ticket de sortie ✏️

5 minutes — individuel

Question 1 — Livraison

Avec l'algorithme de livraison vu ensemble :

  • Montant final pour une commande de 40 € ?
  • Montant final pour une commande de 50 € ?

Question 2 — Trace d'exécution

Que va afficher ce code ?

x ← 5
x ← x + 2
Afficher x

📥 Données

Les informations en entrée

⚙️ Instructions

Les opérations dans l'ordre

📤 Résultat

La valeur produite en sortie