L'outil de référence pour atteindre l'excellence en sciences

>> Capsule #1 : Energie et puissance électrique

>> Accéder à la simulation (Télécharger Windows ou Mac nécessite Flash player).

edf

edf2

edf3

Les booléens :

Vidéos supports :

Vidéo 1

Site 1

Vidéo 2

Vidéo 3

Vidéo 4 (de 3’25 à 7’20 puis 15’ à 20’ puis après 20’) : explication physique du fonctionnement du tore comme mémoire et observations puis avantages et inconvénients.

Vidéo 5

Thème 2 : L'eau

Séance 1 : Création d’une carte mentale

>> Utiliser le logiciel XMind installé sur les machines ou alors lien de Xmind Portable

Installation : clic droit sur le fichier >> 7 zip >> extraire ici >> Aller dans le repertoire créé >> Démarrer dokeosmind.exe

>> Tutoriel vidéo Xmind / Dokeos Mind

La carte à compléter : 

 

Séance 1 : Création d’une carte mentale

>> lien de Xmind Portable

Installation : clic droit sur le fichier >> 7 zip >> extraire ici >> Aller dans le repertoire créé >> Démarrer dokeosmind.exe

>> Tutoriel vidéo Xmind / Dokeos Mind

La carte à compléter : 

 



Source : https://www.dailymail.co.uk/sciencetech/article-7525627/The-fastest-phone-typers-tap-85-words-minute-touchscreens-match-keyboard-users.html

Typing test : http://typingtest.aalto.fi/

>> Sujet distribué

Travail à réaliser :

I. Distance entre deux mots

1. Créer un algorithme permettant de trouver la distance entre deux mots de même longueur.

Documentez et expliquez votre algorithme avec un diaporama

II. Distance enre un mot et les mots d’un dictionnaire

2. Créer un algorithme permettant de trouver la distance entre un mot (ou un début de mot) et les mots d’un dictionnaire. Tous les mots ont la même longueur de 4 lettres. L’utilisateur saisit 1, 2, 3 ou 4 lettre(s).

Utilisez le script de démarrage : 00-start.py

Etape 1 : Tout d’abord, vous pouvez afficher la suite des distances entre le mot rentré par l’utilisateur et chaque mot du dictionnaire. Le programme affichera une suite de chiffres comme suit (stockés dans une liste) :

Cas 1 : [0, 2, 2, 2, 2, 2, 1, 2, 2, 2, 3, 3, 3, … pour EntreUtilisateur = « ABAT » si l’utilisateur écrit correctement un mot.

Cas 2 : [1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 3, 2, 3, … pour EntreUtilisateur = « ABAS » si l’utilisateur fait une faute de frappe et que le mot n’est pas dans le dictionnaire.

Etape 2 :

Dans le cas 1, aucune intervention n’est nécessaire, l’algorithme affiche « mot correctement orthographié ». Vous pouvez utiliser la commande break pour arrêter la boucle dans ce cas, car nous n’avons pas besoin de suggestion.

Dans le cas 2, l’algorithme propose la liste de mot les plus proches, de distance 1, sinon 2 etc…

Voici le résultat obtenu avec l’entrée utilisateur « ABAS » avec les rangs des mots dans le dictionnaire

ABAT – 0

ABUS – 8

ADAS – 23

AGAS – 35

AMAS – 80

ANAS – 91

Documentez et expliquez votre algorithme avec un diaporama

III. Performance de l’algorithme :

Une des principales caractéristiques d’un algorithme de correction orthographique est sa rapidité. Un algorithme trop lent pourrait perturber l’expérience utilisateur. Etudions comment le temps d’exécution de votre algorithme évolue en fonction de la taille de votre dictionnaire et de la taille des mots.

Etape 1 : Repartir d’un script vide. Créer un algorithme pour générer une liste, de taille n, de mots de 4 lettres,

Pour générer des séquences de 4 lettres, vous pouvez utiliser ce que nous avons vu sur la table ASCII (chr… voir cours) et la fonction suivante permettant de générer des nombres aléatoires. Générer uniquement que des mots avec des majuscules.

from random import randrange
a = randrange(26)
print(a)

 

Etape 2 : Appliquer votre algorithme du II. à ce dictionnaire créé en mesurant le temps d’exécution. La mesure du temps d’exécution s’effectue comme suit :

import time
start = time.time()
VOTRE CODE DU II. A MESURER ICI. RAPPELEZ VOUS D'ENLEVER LES PRINT DE VOTRE CODE, CAR LE TEMPS D'AFFICHAGE EST SOUVENT TRES IMPORTANT;
end = time.time()
print(end - start)

 

Etape 3 : Mesurer le temps d’exécution de l’algorithme avec un dictionnaire dont la taille qui augmente de 10 000 mots à chaque fois. Notez vos valeurs obtenues et réalisez un graphique sur un tableur. Commentez

(Optionnel) Vous êtes un fan de matplotlib ? Modifiez l’algorithme pour que l’algorithme réalisé précédemment s’exécute dix fois avec le même mot, mais avec une taille de dictionnaire qui augmente de 10 000 mots à chaque fois. Réalisez un graphique avec matplotlib. Commentez

Documentez et expliquez votre algorithme avec un diaporama

IV. Historique des entrées utilisateurs

Proposer comme dans le II. des suggestions par ordre alphabétique, est un bon début pour aider l’utilisateur à écrire, mais il serait intéressant de réaliser des propositions de mots qui se basent sur ce qu’il a l’habitude d’écrire, sinon ce dernier devra toujours parcourir fastidieusement les propositions. L’idée est donc d’afficher les propositions, non pas alphabétiquement, mais en fonction des mots précédemment entrés.

Reprendre votre algorithme du II. et vous ajouterez une liste nommée HistoriqueUtilisateur comportant quelques mots du dictionnaire de votre choix. Par exemple HistoriqueUtilisateur = [« YOGA », « ZOUK », « YOYO », « ANAS »]

Votre algorithme doit faire remonter dans la liste, en première position les mots présents dans HistoriqueUtilisateur, afin de proposer en priorité les mots que l’utilisateur a l’habitude d’écrire.

Exemple de comportement attendu :

Si on tape « ABAS », on obtient dans l’ordre alphabétique : [‘ABAT’, ‘ABUS’, ‘ADAS’, ‘AGAS’, ‘AMAS’, ‘ANAS’]

Si HistoriqueUtilisateur contient « ANAS« , alors ce mot devra remonter en première position de la liste, et on obtient alors [ ‘ANAS‘, ‘ABAT’, ‘ABUS’, ‘ADAS’, ‘AGAS’, ‘AMAS’, ]

Il faut donc réaliser une comparaison de contenus de deux listes pour extraire les éléments similaires et les faire remonter tout en haut. Il est recommandé d’avoir les propositions de mots, non pas affichées à l’écran, mais stockées dans une liste pour pouvoir manipuler les positions des mots.

De nombreuses méthodes peuvent être envisagées ici. (voici un indice, mais on peut faire sans 🙂 )

Documentez et expliquez votre algorithme avec un diaporama

 V. Créer une interface utilisateur avec TKINTER

Créer une interface graphique pour votre projet. L’utilisateur rentre un mot, appuie sur un bouton, et les mots proposés s’affichent.

Documentation extensive : https://www.python-course.eu/tkinter_labels.php

Tutoriel sur Openclassrooms : https://openclassrooms.com/fr/courses/235344-apprenez-a-programmer-en-python/234859-creez-des-interfaces-graphiques-avec-tkinter

Documentez et expliquez votre algorithme avec un diaporama

Application à télécharger sur vos smartphones iOS ou Android

Disponible-sur-GooglePlay
Disponible-sur-itunes

Base de numération : Support vidéos

Décollage de la fusée Ariane : https://www.youtube.com/watch?v=PK_yguLapgA

Addition en binaire : https://www.youtube.com/watch?v=i4sIn9dcPxA

Méthode du complément à 2 : https://www.youtube.com/watch?v=mui5ZwF77B4

Addition binaire et complément à 2 : https://www.youtube.com/watch?v=OMSLBhOiJns

Multiplicatio nde nombres binaires : https://www.youtube.com/watch?v=ce6IEa_8Z-Y

Les nombres flottants : https://www.youtube.com/watch?v=mtizhxkB-Zw

Activité carte mentale sur les encodages :

FreePlane Portable (clic droit 7zip > extraire vers c:\temp par exemple > démarrer freeplane.exe)

Tutoriel Freeplane

Consigne : réaliser une carte mentale sur les différents types d’encodage en partant de Baudot, ASCII, ISO-8859-1, Unicode, UTF-8, Windows-1252, etc… Intégrer les informations suivante :

  • Historique et Chronologie,
  • Raison de l’invention du standard en question,
  • Aspect mémoire et nombre de bits utilisés,
  • Sélectionner des encodages répondant aux spécificités de la langue française et d’autres langues.

Utilisez les possibilités de la carte mentale pour représenter spatialement les informations et éventuellement des liens entre les normes.

Ressources générales :

Boucles et conditions

Les chaines de caractères

>> Méthode de César

>> La machine Enigma

>> Chiffrement de Vigenère

Les listes

Texte support

C’est un trou de verdure où chante une rivière, accrochant follement aux herbes des haillons d’argent où le soleil, de la montagne fière, luit. C’est un petit val qui mousse de rayons. Un soldat jeune, bouche ouverte, tête nue, et la nuque baignant dans le frais cresson bleu, dort. Il est étendu dans l’herbe, sous la nue, pâle dans son lit vert où la lumière pleut. Les pieds dans les glaïeuls, il dort. souriant comme sourirait un enfant malade, il fait un somme. Nature, berce-le chaudement, il a froid. Les parfums ne font pas frissonner sa narine. Il dort dans le soleil, la main sur sa poitrine, tranquille. Il a deux trous rouges au côté droit.

Projet : l’écriture intuitive