Aller au contenu principal

Défis de programmation

Les défis de programmation sont des exercices autonomes. Ils te demandent de choisir toi-même une méthode de résolution en utilisant les notions vues dans les cours et les laboratoires précédents.

Contrairement aux laboratoires, les défis ne donnent pas toutes les étapes à suivre. Lis attentivement le besoin, planifie ta solution, puis programme et teste ton application.

Comment relever un défi

  1. Reformule le besoin avec tes propres mots.
  2. Identifie les informations à demander, les règles à respecter et les résultats à produire.
  3. Prévois au moins un résultat avant de programmer.
  4. Choisis les variables, conditions, boucles, fonctions ou structures de données nécessaires.
  5. Commence par une version simple qui répond au besoin principal.
  6. Teste ton programme avec plusieurs situations, y compris des cas inhabituels.
  7. Améliore ton programme seulement lorsque la version de base fonctionne correctement.

Les deux premiers défis portent uniquement sur la compréhension et l'analyse d'un mandat. Ils ne demandent aucun code. Dans les quatre premiers défis de programmation, une section Analyse avant de coder t'aide ensuite à appliquer la même méthode. Le soutien diminue progressivement afin que tu deviennes capable de préparer ta propre analyse.

Ce que tu trouveras dans chaque défi

Chaque défi présente un contexte, les besoins à respecter, les valeurs à utiliser, les notions attendues, les contraintes, un exemple complet et des critères de réussite. Les défis d'intégration sont plus longs et combinent plusieurs notions vues récemment.

Dans les exemples, respecte les libellés, leur ordre et les unités indiquées. Tu peux toutefois choisir les espaces, les bordures et l'apparence générale de ton affichage, à moins qu'une contrainte précise le contraire.

Chaque défi contient aussi une section Tests manuels et résultats attendus. Après avoir terminé ton programme, utilise les valeurs proposées, puis compare ce qui s'affiche ou ce qui est enregistré avec le résultat attendu indiqué.

Choisir un défi

Les défis sont classés dans un ordre progressif, mais ils ne dépendent pas des numéros de rencontres. Choisis un défi selon les notions que tu maîtrises déjà.

DéfiTu peux commencer si tu sais…
Compréhension : La commande de chandailslire un court mandat et justifier une réponse à partir du texte; aucun code n'est demandé
Analyse : Le prêt d'équipementorganiser des informations et effectuer des calculs simples; aucun code n'est demandé
Affichage et chaînes : Billet de bienvenueafficher du texte et utiliser une variable string
Variables et calculs : Coût des brochureslire, convertir et calculer des valeurs numériques
Conditions : Tarif du centre des sciencesutiliser if, else if, else et les opérateurs logiques
Fonctions : Commande de pizzasdéclarer une fonction, utiliser des paramètres et retourner une valeur
Intégration — Conditions et fonctions : Bilan d'un ateliercombiner fonctions, conditions et calculs décimaux
Boucle for : Préparation de troussesrépéter des instructions et accumuler une valeur
Tableaux 1D : Bilan des températurescréer et parcourir un tableau à une dimension
Intégration — Tableaux 1D et fonctions : Pointages de Unocombiner tableaux, boucles, fonctions et conditions
Tableaux 2D : Plan de salleparcourir les rangées et les colonnes d'un tableau 2D
switch et boucles conditionnelles : Borne de conversioncréer et répéter un menu tout en validant les saisies
Intégration — Menus et tableaux 2D : Prototypes robotscombiner tableaux 2D, fonctions et menu répété
Écriture de fichiers texte : Journal d'entraînementconstruire puis enregistrer une ligne de texte
Lecture de fichiers texte : Analyseur de journallire, séparer et convertir les données d'un fichier
Fichiers CSV : Rapport de venteslire et écrire des données séparées en colonnes
Objets et classes : Compte de fidélitéinstancier un objet et utiliser ses propriétés et ses méthodes

Au début de chaque défi, l'encadré Tu peux commencer ce défi si… te permet de vérifier tes préalables. Si une notion te manque, utilise les liens proposés pour la réviser avant de commencer.