Le code Morse est un alphabet permettant de coder un message par des impulsions courtes et longues (comme des sons, des signaux visuels/lumineux, électriques, etc.). Adopté internationalement, l’alphabet Morse est un précurseur dans les télécommunications, bien qu’obsolète avec l’avènement du numérique, il en reste des traces dans les transmissions militaires, maritimes, radio, ou pour le code SOS.
Comment encoder avec le Code Morse ?
Le code Morse assigne à chaque lettre, chiffre et signe de ponctuation une unique combinaison de signaux intermittents (des courts et des longs, souvent représentés un point . et un trait –.
L’alphabet appelé table de chiffrement Morse complète est:
Le projet Code Morse
Dernier petit projet de fin d’année, le projet Code Morse qui a permis aux élèves de première générale en spécialité Numérique et sciences informatiques ( NSI ) du lycée Lamarck à Albert d’utiliser la notion de dictionnaire en langage Python.
Descriptif
Le programme en langage python du mini-projet “Code morse”, devait assurer les fonctions suivantes:
L’enseignement de spécialité NSI a vocation à multiplier les occasions de mise en activité des élèves, sous des formes variées qui permettent de développer des compétences transversales. La réalisation de projets est un cadre naturel pour exploiter et réinvestir ses connaissances.
Un objectif du programme de spécialité NSI
faire preuve d’autonomie, d’initiative et de créativité ;
présenter un problème ou sa solution,
développer une argumentation dans le cadre d’un débat ;
coopérer au sein d’une équipe dans le cadre d’un projet ;
rechercher de l’information, partager des ressources ;
faire un usage responsable et critique de l’informatique.
Déroulement du projet
Pendant plusieurs séances, les élèves de première NSI ont d’abord approfondie les notons de base en langage Python.
Ils vont ensuite mettre en pratique leurs compétences en python pour réaliser par groupe de 2 à 3 élèves un des projet.
Thème des projets
Un thème commun est imposé pour chaque projet mais les élèves choisissent librement leur sujet. Le thème commun est juste un fil conducteur qui a pour objectif de les guider.
Pour cette première session de projet, 4 jeux ont été choisis.
Dernier petit projet de révision, le Blablatron qui a permis aux élèves de terminale NSI du lycée Lamarck à Albert d’implémenter la notion de dictionnaire en langage Python déjà vu en classe de première.
Descriptif
Un générateur automatique de phrases (parfois appelé « pipotron ») est un programme qui génère des phrases à partir d’un corpus bien défini.
Il s’agit d’une supercherie dont le but est la vraisemblance d’un texte inventé par le programme.
Quelqu’un qui utilise une telle matrice sera étonné de la cohérence du propos pourtant composé de toutes pièces par assemblage au hasard de morceaux de phrases.
Comment un programme peut-il créer un discours entier qui ait du sens ?
En réalité un générateur de phrases ne donne que l’illusion de créer du sens. Une analyse des isotopies du texte généré montre qu’il n’a en fait quasiment aucun sens, et que le locuteur (le générateur de phrase) disserte sur un thème donné sans jamais entrer dans le vif du sujet, par supercherie, à la manière d’un locuteur qui parle la « langue de bois ».
Comment se passe la génération des phrases ?
Il suffit de demander au programme de générer des phrases sur un thème (linguistique) précis. Le programme sélectionne le champ lexical correspondant à ce thème, puis il assemble au hasard les termes du champ lexical de façon à former des phrases.
Le champ lexical en question doit être assez vaste pour que les mêmes termes ne reviennent pas trop souvent, de façon à donner l’illusion d’une variété dans le propos.
Chaque terme du champ lexical, placé au hasard dans la phrase générée, doit pouvoir faire partie de toute phrase générée sans qu’il y ait d’incohérence grammaticale.
On peut conserver ces termes dans la base lexicale en obligeant le générateur à les placer dans une phrase ou dans un texte à l’endroit où ils sont d’habitude : le terme premièrement, par exemple, sera placé quelques phrases avant le terme deuxièmement. Le texte généré gagne ainsi en complexité donc en vraisemblance. La base lexicale ne doit pas comporter trop de termes, sous peine d’un plus grand risque d’incongruité.
Les thèmes abordés par le générateur automatiques de phrases doivent être des thèmes où l’on croise ordinairement des termes techniques et inhabituels.
De cette façon, d’une part, les termes inconnus par le lecteur renforcent l’impression d’un discours réfléchi donc naturel, et d’autre part ils peuvent plus facilement faire partie d’un champ lexical plus serré donc présentant moins de risque d’incongruité.
Un générateur automatique de phrase est parfois très étonnant et peut servir de test ludique pour savoir si un professionnel d’un domaine précis peut détecter ou non la supercherie. Mais surtout, il est un objet de réflexion pour l’étude de la sémantique et des langages artificiels.
La technique informatique
Le Blablatron est une application informatique qui permet de générer de manière aléatoire des phrases ou des discours en langue de bois en Python utilisant la notion de dictionnaire.
Fonctionnalités
Le programme Blablatron permet de :
Générer automatiquement un texte à partir de 4 tables de morceaux de phrases.
Générer de manière aléatoire un discours d’un nombre n de phrase.
Sauvegarder le discours dans un fichier au format texte (*.txt).
Sauvegarder le discours dans un document Word au format docx.
Exemples
Un exemple de phrase générée par ordinateur n’ayant aucun sens, mais qui, pour le non-spécialiste, peut passer pour vraisemblable :
Exemple n°1 de phrases
Et ce n’est certainement pas vous, mes chers compatriotes, qui me contredirez la conjoncture actuelle doit prendre en compte les préoccupations de la population de base dans d’un plan correspondant véritablement aux exigences légitimes de chacun.
Exemple n°2 de phrases
Je reste fondamentalement persuadé que la conjoncture actuelle oblige à la prise en compte encore plus effective d’un plan correspondant véritablement aux exigences légitimes de chacun.
Exemple de discours
Je tiens à vous dire ici ma détermination sans faille pour clamer haut et fort le particularisme dû à notre histoire unique entraîne une mission somme toute des plus exaltantes pour moi : l’élaboration d’un processus allant vers plus d’égalité.
Et ce n’est certainement pas vous, mes chers compatriotes, qui me contredirez la volonté farouche de sortir notre pays de la crise entraîne une mission somme toute des plus exaltantes pour moi : l’élaboration d’un programme plus humain, plus fraternel et plus juste.
Dès lors, sachez que je me battrai pour faire admettre que l’effort prioritaire en faveur du statut précaire des exclus doit s’intégrer à la finalisation globale d’un plan correspondant véritablement aux exigences légitimes de chacun.
On remarquera l’outil par là-même, servant à relier d’une manière faussement savante deux idées sans aucun rapport l’une avec l’autre.
Le morpion est un jeu de réflexion à deux joueurs au tour par tour dont le but est de créer le premier un alignement. Le jeu se joue généralement avec papier et crayon.
Règle du jeu
Sur une grille de 3x 3, deux joueurs s’affrontent. Ils doivent remplir chacun à leur tour une case de la grille avec le symbole qui leur est attribué : O ou X. Le gagnant est celui qui arrive à aligner trois symboles identiques, horizontalement, verticalement ou en diagonale. Il est coutume de laisser le joueur jouant X effectuer le premier coup de la partie.
Objectif du projet
Réaliser en langage Python 3, une version numérique du jeu de réflexion “Morpion” pour ordinateur en mode textuelle.
Déroulement du projet
Pendant plusieurs séances, les élèves de Terminal NSI ont d’abord révisé la notion de liste et de tableau en langage Python comme représentation des données.
Ensuite élève va mettre en pratique ces connaissances en python pour réaliser le jeu Morpion.
Les règles peuvent être facilement modulables pour s’adapter à tous.
A l’origine, le jeu se jouait à deux : un Codificateur et un Décodeur.
Le but est de deviner, par déductions successives, la couleur et la position des 5 pions cachés derrière un écran. Les débutants peuvent adopter une formule moins difficile en ne cachant que 3 ou 4 pions et en n’utilisant que 6 couleurs au lieu de 8. C’est une question de convention préalable.
Les règles peuvent être facilement modulables pour s’adapter à tous.
A l’origine, le jeu se jouait à deux : un Codificateur et un Décodeur.
Le but est de deviner, par déductions successives, la couleur et la position des 5 pions cachés derrière un écran. Les débutants peuvent adopter une formule moins difficile en ne cachant que 3 ou 4 pions et en n’utilisant que 6 couleurs au lieu de 8. C’est une question de convention préalable.
Objectif du projet
Réaliser en langage Python 3, une version numérique du jeu de société Mastermind pour ordinateur en mode textuelle.
Déroulement du projet
Pendant plusieurs séances, les élèves de première NSI ont d’abord découvert la notion de liste et de tableau en langage Python comme représentation des données.
Ensuite en groupe de 2 à 3 élèves, ils vont mettre en pratique leurs nouvelles connaissances en python pour réaliser le jeu Mastermind.
Le jeu Quixo allie un système de déplacement très original et un principe de jeu très simple, qui lui ont valu entre autre l’Oscar du Jouet en France. Les 25 cubes sont prisonniers du plateau : chaque cube possède 4 faces neutres, une face marquée d’une croix, une face marquée d’un rond. Au départ, les cubes sont disposés faces supérieures neutres.
Chacun à son tour : – saisit en périphérie du plateau un cube neutre ou à sa marque (croix ou rond) – le replace avec sa marque sur la face supérieure, en poussant sur une rangée incomplète (principe du pousse – pousse)
But du jeu
À son tour de jeu, un joueur prend un dé neutre ou de sa marque et le place au début d’une autre rangée en poussant les autres dés. Le premier joueur parvenant à aligner 5 cubes avec sa marque remporte la partie.
Objectif du projet
Réaliser en langage Python 3, une version numérique du jeu de société Quixo pour ordinateur en mode textuelle.
Déroulement du projet
Pendant plusieurs séances, les élèves de première NSI ont d’abord découvert la notion de liste et de tableau en langage Python comme représentation des données.
Ensuite en groupe de 2 à 3 élèves, ils vont mettre en pratique leurs nouvelles connaissances en python pour réaliser le jeu Quixo.
Le quarto est un jeu de réflexion combinatoire sur un plateau avec 16 pièces différentes. L’inventeur du quarto est Blaise Muller. Le jeu de société a été édité pour la première fois en 1991 par Gigamic. Quarto se joue avec 2 joueurs de 8 ans ou plus. Une partie dure environ 15 minutes.
But du jeu
Il faut être le premier joueur à former un Quarto, c’est-à-dire une ligne de 4 pièces qui partagent au moins un point commun : la couleur (toutes foncées ou toutes claires) ; la taille (toutes petites ou toutes grandes) ; la forme (toutes rondes ou toutes carrées); le remplissage (toutes creuses ou toutes pleines). Le Quarto peut être horizontal, vertical ou en diagonale.
Les seize pièces du jeu, toutes différentes, possèdent chacune 4 caractères distincts : haute ou basse, ronde ou carrée, claire ou foncée, pleine ou creuse. Chacun à son tour choisit et donne une pièce à l’adversaire, qui doit la jouer sur une case libre. Le gagnant est celui qui, avec une pièce reçue, crée un alignement de 4 pièces ayant au moins un caractère commun et annonce : «QUARTO !».
La règle prévoit d’autres configurations de gain, suivant quatre niveaux de jeu.
La règle de base correspond au niveau un, la victoire est obtenue en réalisant un alignement.
Le niveau deux permet de gagner en réalisant un alignement ou un petit carré
Le niveau trois, en plus des positions de gain du niveau 2 permet de l’emporter en réalisant un carré plus grand
Le quatrième niveau, reprenant les positions de gain du niveau trois, y ajoute les carrés « tournants »
Objectif du projet
Réaliser en langage Python 3, une version numérique du jeu de société Quarto pour ordinateur en mode textuelle. Le jeu devra respecter les règles de niveau 1
Déroulement du projet
Pendant plusieurs séances, les élèves de première NSI ont d’abord découvert la notion de liste et de tableau en langage Python comme représentation des données.
Ensuite en groupe de 4 élèves, ils vont mettre en pratique leurs nouvelles connaissances en python pour réaliser le jeu Quarto.
Chifoumi est un jeu effectué avec les mains et opposant deux joueurs. Il possède de nombreux noms alternatifs, notamment en variant l’ordre des termes ou en remplaçant certains mots comme « papier » par « feuille » ou « pierre » par « caillou » ou « roche ». Le terme Pierre-papier-ciseaux est également l’appellation courante.
Quelles sont les règles du jeu ?
Les deux joueurs choisissent simultanément un des trois coups possibles en le symbolisant de la main :
De façon générale, la pierre bat les ciseaux (en les émoussant), les ciseaux battent la feuille (en la coupant), la feuille bat la pierre (en l’enveloppant). Ainsi chaque coup bat un autre coup, fait match nul contre le deuxième (son homologue) et est battu par le troisième.
L’objectif du projet
Il s’agit pour les élèves de première NSI ( Numérique et sciences informatiques) de réaliser le jeu en langage python sur ordinateur en mode textuel.
Déroulement du projet
Pendant plusieurs séances, les élèves de première NSI ont d’abord découvert ou re-découvert les bases du langage Python avec 4 modules de formation.
Module 1 – Les variables et le programme
Module 2 – Les boucles
Module 3 – les conditions
Module 4 – les fonctions
Ensuite, ils ont mis en pratique leurs nouvelles connaissances en python pour réaliser le jeu.
Le projet Katamino a été réalisé en 2018 par un élève (Cédric) du lycée Lamarck à Albert de terminal S option ISN informatique et systèmes numériques.
Katamino est un jeu de réflexion de la famille des jeux de plateau.
Le principe du jeu
Katamino est un casse-tête passionnant qui se présente comme un puzzle évolutif. Prenez les pièces imposées par le défi, faites le vide dans votre esprit et tentez de remplir l’espace délimité par la réglette. Jeu de logique tout en bois, les enfants comme les adultes se laisseront prendre au jeu !
Le projet
L’élève a été chargé de faire la transposition numérique ( le jumeau numérique) du jeu, c’est-à-dire réaliser le jeu sur PC en utilisant le langage python et des bibliothèques de fonction complémentaires.
Le projet Katamino s’est déroulé sur un volume horaire de 20 heures et une période de 8 semaines allant du mois de février à la mi-mai.
Epreuve du bac ISN
Dans le cadre du bac S option ISN, chaque élève a présenté oralement son travail sur le projet à un jury.
La note obtenue à la soutenance à compté coefficient 2 pour l’obtention du bac S.
Le projet ISN a donné lieu à la réalisation du programme informatique du jeu et d’une production numérique (diaporama, carte mentale, site internet, …) utilisée pour la soutenance orale.
Le projet a permis aux élèves de mettre en application les compétences en informatique vues durant l’année et regroupées autour de 4 thèmes.