INF-5082-2

Initiation à la programmation

Présentation

Le cours Initiation à la programmation a pour objet de vous fournir les moyens de résoudre des situations-problèmes en vous servant d'un langage de programmation structuré. Il vise à vous initier à la rédaction d'algorithme en informatique et à la logique de programmation structurée.

Déroulement du cours

  • Faire la section Algorithmes au complet incluant les activités
  • Lire la page Programmation
  • Choisir un logiciel parmi les suivants: Scratch, Blocks, BlocksCad, MBotRanger. Attention, tenir compte de la disponibilité au matériel et aux accès de votre centre.
  • Choisir un logiciel parmi les suivants: JavaScript, Python.
  • Faire un des projets proposés. Attention, tenir compte de la disponibilité au matériel et aux accès de votre centre.
  • Passez l'évaluation

Objectifs

Initier à la rédaction d'algorithmes en informatique et à la logique de programmation structurée.

Explorer les bases de la programmation.

Réaliser un projet impliquant la programmation.

L'extension à utiliser

  • Coding With Chrome. Peut être utilisé sur un ordinateur et sur un Chrome Book. Il est préférable d'avoir un compte afin de sauvegarder ses travaux.

Les logiciels proposés sont:

  • Pour la programmation en blocs: Scratch, Blocks, MBotRanger ou BlocksCad
  • Pour la programmation en codes: JavaScript ou Python

Selon les projets, le matériel proposé est:

  • Robots tels: MBot Ranger (ou le MBot), EV3, NXT ou Shero
  • Arduino (ou autre micro-processeur), Rasberry Pi, (programmable en Python)
  • Cellulaires (création d'une application mobile)

Compétences disciplinaires

  • Interagir dans un environnement informatique;
  • Produire des documents informatisés.

Savoirs

  • Introduction à la notion d'algorithme
    • Définition
    • Ordinogramme
      • Symboles
      • Direction des flux
    • Pseudocodes
  • Structures et fonctions
    • Variables
      • Types (entiers, réel, booléen, caractère, chaine de caractères)
      • Affectation
      • Portée
    • Opérateurs mathématiques
    • Opérateurs logiques
    • Éléments de structures alternatives simples
    • Éléments de structures répétitives
    • Fonctions intégrées dans différentes classes d'objets
      • Syntaxe
      • Arguments
      • Retour de fonction
  • Syntaxe de programmation
    • Instructions
    • Mots réservés
    • Entrées et sorties
  • Contrôles
    • Bouton
    • Case à cocher, case à option
    • Image
    • Étiquette, zone de texte
    • Zone de liste
    • Cadre
  • Types de programmation
    • Événementielle
    • Séquentielle
  • Principaux langages de programmation
    • Programmation par blocs
    • JavaScript
    • Python
    • C++
  • Ergonomie d'interface
    • Norme ISO 9241-210
    • Architecture
  • Vocabulaire usuel associé au langage de programmation choisi
  • Lecture d'un algorithme
  • Conception d'un algorithme en fonction d'un besoin
  • Traduction de l'algorithme dans un langage de programmation structuré
    • Interpréter un algorithme
    • Concevoir l'interface utilisateur du programme
    • Appliquer les notions d'ergonomie d'interface
    • Rédiger les lignes de codes en faisant usage d'indentation
    • Respecter la syntaxe de programmation
    • Commenter le code
  • Dépannage informatique
    • Améliorer l'efficience d'un algorithme
    • Relever les possibles inexactitudes dans les lignes de code d'un programme
    • Résoudre les inexactitudes relevées
  • Compilation
    • Générer la version exécutable du programme
    • Exécuter et valider la version définitive du programme avec un jeu d'essai