La plupart des étudiants en informatique que je connais considèrent l'apprentissage de la programmation comme la partie la plus pénible et la plus démoralisante de leur éducation. Je resterais donc à l'écart de tout ce qui concerne la programmation elle-même. Comme l'a déjà signalé scphantm , vous n'aurez probablement pas le temps pour cela.
Ce que vous cherchez, c'est un exercice de deux heures qui répond à deux objectifs:
- C’est assez excitant de maintenir l’intérêt des diplômés du secondaire pendant deux heures,
- Cela leur donnera un aperçu de ce qu'est la science informatique et les intéressera, espérons-le.
Le premier objectif est assez indépendant de ce que vous allez réellement montrer et a beaucoup plus à voir avec le fait d'être un bon enseignant / présentateur. Bonne pratique didactique, c'est-à-dire garder votre public sur pied, le laisser essayer de petites choses en groupe, lui donner une respiration toutes les 15 minutes, etc.
Le deuxième objectif est un peu délicat, et ce qui, à mon avis, fonctionne le mieux ici est de prendre un problème qui peut être expliqué avec leurs connaissances actuelles, de montrer comment vous pouvez décrire la solution de manière algorithmique, puis de montrer comment cette solution peut être analysée. et amélioré.
Un bon exemple est le problème de chemin le plus court dans les graphiques, également appelé système de navigation GPS. Aucune explication nécessaire. Vous pouvez leur donner une petite carte avec des poids / longueur des bords dessinés et un groupe de crayons pour exécuter réellement l'algorithme tel que vous le décrivez.
Vous pouvez ensuite entamer une discussion sur la manière de trouver le chemin le plus court, et ainsi de suite, laissez-les essayer de le formuler sous forme d'algorithme, etc. Vous décrivez ensuite l'algorithme de Dijkstra , leur permettant de colorer les nœuds comme étant visités , provisoires et ensembles non visités . Bam. Vous avez un algorithme!
O
PNP