La vieillesse n'ôte à l'homme d'esprit que des qualités inutiles à la sagesse.
Joseph Joubert (sur mon T shirt!)
fim2006 (FIM= "first in math") est un logiciel ludique, qui entraine petits et grands au calcul mental (de 6 ans à 177 ans environ).
Régulièrement mis à jour et amélioré pour mieux répondre aux attentes des utilisateurs (sur vos conseils) il a sa place dans la logithèque pédagogique de chacun.
fim2006 (re)donne le goût des nombres aux élèves en (grandes) difficultés et permet aux élèves de primaire de préparer leur entrée en sixième en étant débarassés des problèmes de base au niveau opératoire.
fim2006 fonctionne en réseau, est OPEN SOURCE (Sous Licence GNU/GPL) et gratuit.
Vous pouvez télécharger fim2006 en cliquant sur un lien, en bas de cette page, après avoir lu les avertissements et le contrat de licence.
La page principale:
Le réglage des options:
La page de jeu:
Fim2006, logiciel ludique d'entrainement au calcul mental Copyright (C) 2006 Laurent Petitprez 'Wouf'
Ce programme est libre, vous pouvez le redistribuer et/ou le modifier selon les termes de la Licence Publique Générale GNU publiée par la Free Software Foundation
Ce programme est distribué car potentiellement utile, mais SANS AUCUNE GARANTIE, ni explicite ni implicite, y compris les garanties de commercialisation ou d'adaptation dans un but spécifique. Reportez-vous à la Licence Publique Générale GNU pour plus de détails.
This is an unofficial translation of the GNU General Public License into French. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU GPL--only the original English text of the GNU GPL does that. However, we hope that this translation will help French speakers understand the GNU GPL better.
Voici (http://www.linux-france.org/article/these/gpl.html) une adaptation non officielle de la Licence Publique Générale du projet GNU. Elle n'a pas été publiée par la Free Software Foundation et son contenu n'a aucune portée légale car seule la version anglaise de ce document détaille le mode de distribution des logiciels sous GNU GPL. Nous espérons cependant qu'elle permettra aux francophones de mieux comprendre la GPL.
Le texte officiel (en anglais) est disponible ici: Official GPL
Copyright © Free Software Foundation, Inc.
59 Temple Place, Suite 330, Boston, MA 02111-1307
États-Unis, 1989, 1991.
La copie et la distribution de copies exactes de ce document sont
autorisées, mais aucune modification n'est permise.
Les licences d'utilisation de la plupart des programmes sont définies pour limiter ou supprimer toute liberté à l'utilisateur. À l'inverse, la Licence Publique Générale (General Public License) est destinée à vous garantir la liberté de partager et de modifier les logiciels libres, et de s'assurer que ces logiciels sont effectivement accessibles à tout utilisateur.
Cette Licence Publique Générale s'applique à la plupart des programmes de la Free Software Foundation, comme à tout autre programme dont l'auteur l'aura décidé (d'autres logiciels de la FSF sont couverts pour leur part par la Licence Publique Générale pour Bibliothèques GNU (LGPL)). Vous pouvez aussi appliquer les termes de cette Licence à vos propres programmes, si vous le désirez.
Liberté des logiciels ne signifie pas nécessairement gratuité. Notre Licence est conçue pour vous assurer la liberté de distribuer des copies des programmes, gratuitement ou non, de recevoir le code source ou de pouvoir l'obtenir, de modifier les programmes ou d'en utiliser des éléments dans de nouveaux programmes libres, en sachant que vous y êtes autorisé.
Afin de garantir ces droits, nous avons dû introduire des restrictions interdisant à quiconque de vous les refuser ou de vous demander d'y renoncer. Ces restrictions vous imposent en retour certaines obligations si vous distribuez ou modifiez des copies de programmes protégés par la Licence. En d'autre termes, il vous incombera en ce cas de :
Nous protégeons vos droits de deux façons : d'abord par le copyright du logiciel, ensuite par la remise de cette Licence qui vous autorise légalement à copier, distribuer et/ou modifier le logiciel.
En outre, pour protéger chaque auteur ainsi que la FSF, nous affirmons solennellement que le programme concerné ne fait l'objet d'aucune garantie. Si un tiers le modifie puis le redistribue, tous ceux qui en recevront une copie doivent savoir qu'il ne s'agit pas de l'original afin qu'une copie défectueuse n'entache pas la réputation de l'auteur du logiciel.
Enfin, tout programme libre est sans cesse menacé par des dépôts de brevets. Nous souhaitons à tout prix éviter que des distributeurs puissent déposer des brevets sur les Logiciels Libres pour leur propre compte. Pour éviter cela, nous stipulons bien que tout dépôt éventuel de brevet doit accorder expressément à tout un chacun le libre usage du produit.
Les dispositions précises et les conditions de copie, de distribution et de modification de nos logiciels sont les suivantes :
La présente Licence s'applique à tout Programme (ou autre travail) où figure une note, placée par le détenteur des droits, stipulant que ledit Programme ou travail peut être distribué selon les termes de la présente Licence. Le terme Programme désigne aussi bien le Programme lui-même que tout travail qui en est dérivé selon la loi, c'est-à-dire tout ouvrage reproduisant le Programme ou une partie de celui-ci, à l'identique ou bien modifié, et/ou traduit dans une autre langue (la traduction est considérée comme une modification). Chaque personne concernée par la Licence Publique Générale sera désignée par le terme Vous.
Les activités autres que copie, distribution et modification ne sont pas couvertes par la présente Licence et sortent de son cadre. Rien ne restreint l'utilisation du Programme et les données issues de celui-ci ne sont couvertes que si leur contenu constitue un travail basé sur le logiciel (indépendemment du fait d'avoir été réalisé en lançant le Programme). Tout dépend de ce que le Programme est censé produire.
Vous pouvez copier et distribuer des copies conformes du code source du Programme, tel que Vous l'avez reçu, sur n'importe quel support, à condition de placer sur chaque copie un copyright approprié et une restriction de garantie, de ne pas modifier ou omettre toutes les stipulations se référant à la présente Licence et à la limitation de garantie, et de fournir avec toute copie du Programme un exemplaire de la Licence.
Vous pouvez demander une rétribution financière pour la réalisation de la copie et demeurez libre de proposer une garantie assurée par vos soins, moyennant finances.
Vous pouvez modifier votre copie ou vos copies du Programme ou partie de celui-ci, ou d'un travail basé sur ce Programme, et copier et distribuer ces modifications selon les termes de l'article 1, à condition de Vous conformer également aux conditions suivantes :
Toutes ces conditions s'appliquent à l'ensemble des modifications. Si des éléments identifiables de ce travail ne sont pas dérivés du Programme et peuvent être raisonnablement considérés comme indépendants, la présente Licence ne s'applique pas à ces éléments lorsque Vous les distribuez seuls. Mais, si Vous distribuez ces mêmes éléments comme partie d'un ensemble cohérent dont le reste est basé sur un Programme soumis à la Licence, ils lui sont également soumis, et la Licence s'étend ainsi à l'ensemble du produit, quel qu'en soit l'auteur.
Cet article n'a pas pour but de s'approprier ou de contester vos droits sur un travail entièrement réalisé par Vous, mais plutôt d'ouvrir droit à un contrôle de la libre distribution de tout travail dérivé ou collectif basé sur le Programme.
En outre, toute fusion d'un autre travail, non basé sur le Programme, avec le Programme (ou avec un travail dérivé de ce dernier), effectuée sur un support de stockage ou de distribution, ne fait pas tomber cet autre travail sous le contrôle de la Licence.
Vous pouvez copier et distribuer le Programme (ou tout travail dérivé selon les conditions énoncées dans l'article 1) sous forme de code objet ou exécutable, selon les termes des articles 0 et 1, à condition de respecter l'une des clauses suivantes :
Le code source d'un travail désigne la forme de cet ouvrage sous laquelle les modifications sont les plus aisées. Sont ainsi désignés la totalité du code source de tous les modules composant un Programme exécutable, de même que tout fichier de définition associé, ainsi que les scripts utilisés pour effectuer la compilation et l'installation du Programme exécutable. Toutefois, l'environnement standard de développement du système d'exploitation mis en oeuvre (source ou binaire) -- compilateurs, bibliothèques, noyau, etc. -- constitue une exception, sauf si ces éléments sont diffusés en même temps que le Programme exécutable.
Si la distribution de l'exécutable ou du code objet consiste à offrir un accès permettant de copier le Programme depuis un endroit particulier, l'offre d'un accès équivalent pour se procurer le code source au même endroit est considéré comme une distribution de ce code source, même si l'utilisateur choisit de ne pas profiter de cette offre.
Vous ne pouvez pas copier, modifier, céder, déposer ou distribuer le Programme d'une autre manière que l'autorise la Licence Publique Générale. Toute tentative de ce type annule immédiatement vos droits d'utilisation du Programme sous cette Licence. Toutefois, les tiers ayant reçu de Vous des copies du Programme ou le droit d'utiliser ces copies continueront à bénéficier de leur droit d'utilisation tant qu'ils respecteront pleinement les conditions de la Licence.
Ne l'ayant pas signée, Vous n'êtes pas obligé d'accepter cette Licence. Cependant, rien d'autre ne Vous autorise à modifier ou distribuer le Programme ou quelque travaux dérivés : la loi l'interdit tant que Vous n'acceptez pas les termes de cette Licence. En conséquence, en modifiant ou en distribuant le Programme (ou tout travail basé sur lui), Vous acceptez implicitement tous les termes et conditions de cette Licence.>
La diffusion d'un Programme (ou de tout travail dérivé) suppose l'envoi simultané d'une licence autorisant la copie, la distribution ou la modification du Programme, aux termes et conditions de la Licence. Vous n'avez pas le droit d'imposer de restrictions supplémentaires aux droits transmis au destinataire. Vous n'êtes pas responsable du respect de la Licence par un tiers.
Si, à la suite d'une décision de Justice, d'une plainte en contrefaçon ou pour toute autre raison (liée ou non à la contrefaçon), des conditions Vous sont imposées (que ce soit par ordonnance, accord amiable ou autre) qui se révèlent incompatibles avec les termes de la présente Licence, Vous n'êtes pas pour autant dégagé des obligations liées à celle-ci : si Vous ne pouvez concilier vos obligations légales ou autres avec les conditions de cette Licence, Vous ne devez pas distribuer le Programme.
Si une partie quelconque de cet article est invalidée ou inapplicable pour quelque raison que ce soit, le reste de l'article continue de s'appliquer et l'intégralité de l'article s'appliquera en toute autre circonstance.
Le présent article n'a pas pour but de Vous pousser à enfreindre des droits ou des dispositions légales ni en contester la validité ; son seul objectif est de protéger l'intégrité du système de distribution du Logiciel Libre. De nombreuses personnes ont généreusement contribué à la large gamme de Programmes distribuée de cette façon en toute confiance ; il appartient à chaque auteur/donateur de décider de diffuser ses Programmes selon les critères de son choix.
Si la distribution et/ou l'utilisation du Programme est limitée dans certains pays par des brevets ou des droits sur des interfaces, le détenteur original des droits qui place le Programme sous la Licence Publique Générale peut ajouter explicitement une clause de limitation géographique excluant ces pays. Dans ce cas, cette clause devient une partie intégrante de la Licence.
La Free Software Foundation se réserve le droit de publier périodiquement des mises à jour ou de nouvelles versions de la Licence. Rédigées dans le même esprit que la présente version, elles seront cependant susceptibles d'en modifier certains détails à mesure que de nouveaux problèmes se font jour.
Chaque version possède un numéro distinct. Si le Programme précise un numéro de version de cette Licence et « toute version ultérieure », Vous avez le choix de suivre les termes et conditions de cette version ou de toute autre version plus récente publiée par la Free Software Foundation. Si le Programme ne spécifie aucun numéro de version, Vous pouvez alors choisir l'une quelconque des versions publiées par la Free Software Foundation.
Si Vous désirez incorporer des éléments du Programme dans d'autres Programmes libres dont les conditions de distribution diffèrent, Vous devez écrire à l'auteur pour lui en demander la permission. Pour ce qui est des Programmes directement déposés par la Free Software Foundation, écrivez-nous : une exception est toujours envisageable. Notre décision sera basée sur notre volonté de préserver la liberté de notre Programme ou de ses dérivés et celle de promouvoir le partage et la réutilisation du logiciel en général.
Parce que l'utilisation de ce Programme est libre et gratuite, aucune garantie n'est fournie, comme le permet la loi. Sauf mention écrite, les détenteurs du copyright et/ou les tiers fournissent le Programme en l'état, sans aucune sorte de garantie explicite ou implicite, y compris les garanties de commercialisation ou d'adaptation dans un but particulier. Vous assumez tous les risques quant à la qualité et aux effets du Programme. Si le Programme est défectueux, Vous assumez le coût de tous les services, corrections ou réparations nécessaires.
Sauf lorsqu'explicitement prévu par la Loi ou accepté par écrit, ni le détenteur des droits, ni quiconque autorisé à modifier et/ou redistribuer le Programme comme il est permis ci-dessus ne pourra être tenu pour responsable de tout dommage direct, indirect, secondaire ou accessoire (pertes financières dues au manque à gagner, à l'interruption d'activités ou à la perte de données, etc., découlant de l'utilisation du Programme ou de l'impossibilité d'utiliser celui-ci).
Si vous développez un nouveau programme et désirez en faire bénéficier tout un chacun, la meilleure méthode est d'en faire un Logiciel Libre que tout le monde pourra redistribuer et modifier selon les termes de la Licence Publique Générale.
Pour cela, insérez les indications suivantes dans votre programme (il est préférable et plus sûr de les faire figurer au début de chaque fichier source ; dans tous les cas, chaque module source devra comporter au minimum la ligne de « copyright » et indiquer où résident toutes les autres indications) :
Ce programme est libre, vous pouvez le redistribuer et/ou le modifier selon les termes de la Licence Publique Générale GNU publiée par la Free Software Foundation (version 2 ou bien toute autre version ultérieure choisie par vous).
Ce programme est distribué car potentiellement utile, mais SANS AUCUNE GARANTIE, ni explicite ni implicite, y compris les garanties de commercialisation ou d'adaptation dans un but spécifique. Reportez-vous à la Licence Publique Générale GNU pour plus de détails.
Vous devez avoir reçu une copie de la Licence Publique Générale GNU en même temps que ce programme ; si ce n'est pas le cas, écrivez à la Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, États-Unis.
Ajoutez également votre adresse électronique, le cas échéant, ainsi que votre adresse postale.
Si le programme est interactif, faites-lui afficher un court avertissement du type de celui-ci à chaque invocation :
...(nom du programme) est fourni sans AUCUNE GARANTIE.
Pour plus de détails, tapez `g'.
Ce programme est libre et vous êtes encouragé à le redistribuer sous certaines conditions ; tapez `c' pour plus de détails.
Les commandes hypothétiques `g' et `c' doivent afficher les sections appropriées de la Licence Publique Générale GNU. Bien entendu, vous pouvez implanter ces commandes comme bon vous semble : options dans un menu, ou bien accessibles d'un clic de souris, etc., tout dépend de votre programme.
Si vous officiez en tant que programmeur, n'omettez pas de demander à votre employeur, votre établissement scolaire ou autres de signer une décharge stipulant leur renoncement aux droits qu'ils pourraient avoir sur le programme :
La Licence Publique Générale ne permet pas d'inclure votre programme dans des logiciels sous licence commerciale spécifique. Si votre programme est une fonction de bibliothèque, vous jugerez probablement plus judicieux de le faire relever de la Licence Générale de Bibliothèque GNU (LGPL) plutôt que de la présente.
A chaque fois que fim2006 est quitté, la base de donnée locale est purgée (Sur des ordinateurs assez anciens, la fermeture de fim2006 peut prendre quelques secondes.) Par défaut seule les 100 premiers scores de chaque catégorie sont conservés. Mais l'administrateur de votre ordinateur peut changer ce nombre en éditant le fichier ini.txt dans le répertoire de FIM et ajouter la ligne:
nbenr=30 (par exemple)
En cas d'erreur, pas de panique, il suffit de détruire le fichier ini.txt, fim2006 le reconstruira.
La base locale des scores de fim2006 peut être synchroniser (en réseau local) avec une autre base.
Pour cela, il faut simplement qu'une base soit sur le réseau, dans un repertoire partagé et défini comme un lecteur réseau.
Dans le menu "options avancés", il suffit de définir le chemin d'accès à cette base.En cas de difficulté,
consultez votre administrateur réseau.
La base distante peut être la base locale d'un autre poste, ou une copie d'une des bases locales, collée sur un lecteur réseau. Mais en aucun cas la base distante et la base locale ne peuvent être confondues.
Avec une architecture multi-postes, on peut soit synchroniser vers une seule base distante, ou synchroniser en chaine d'un poste vers un autre. Si la première solution me semble plus rationnelle, la seconde offre l'avantage de ne privilégier aucun poste sur le réseau et est adaptée aux réseaux sans serveur.
L'architecture de fim2006 permet une traduction rapide du logiciel dans une autre langue. (Anglais, français et allemand dans la version 2.0.) Les fichiers langues sont des fichiers textes, dans le sous-répertoire "lang". La syntaxe est simple, pour s'en rendre compte il suffit d'éditer le fichier "english":
Exemple:
Vous pouvez participer au projet FIM en m'envoyant un fichier langue, ou en corrigeant mes erreurs de traduction...
Vous pouvez ouvrir et modifier le contenu de la base de donnée "fim_scores.mdb" pour éventuellement corriger une faute de frappe sur un nom (par exemple.) La base est au format access 2000. Vous pouvez aussi supprimer la base pour effacer tous les scores sauvegardés.
FIM 2006
Version 2.1.0
Correction par rapport à la version 2.0.3:
Cette version installe le logiciel Fim2006 et copie les sources zippées, dans le repertoire d'installation.
Télécharger uniquement les sourcesSources en VB6
La problématique était la suivante :
L'équipe pédagogiques du collège dans lequel j'exerce désirait, dans le cadre de la semaine des Mathématiques, créer une activité en ligne à destination de toutes les classes de sixième. Chaque élève joue pour sa classe. Il doit donc avoir un pseudo et nous devons, grâce à lui, savoir dans quelle classe il est inscrit.
Or la nécessité d'être en conformité avec le RGPD nous oblige à une certaine prudence.
Notre idée est la suivante :
Nous créons pas classe une liste de 50 pseudos dans lequel un code numérique identifie la classe d'origine. Chaque élève choisit un pseudo et le raye de la liste.
Ce pseudo est son identifiant pour accéder aux activités (via Canopé) . Aucune donnée personnelle n'est sauvegardée...
J'utilise un fichier texte avec quelques noms d'animaux :
[text] CHIEN CHAT TAUREAU VACHE AGNEAU CHEVRE CERF LAPIN COCHON CHEVAL LION TIGRE PANTHERE JAGUAR GUEPARD OURS LOUP RENARD HYENE ELEPHANT RHINOCEROS HIPPOPOTAME ZEBRE GIRAFE ANTILOPE KOALA KANGOUROU CASTOR SINGE PANDA LOUTRE TORTUE SERPENT LEZARD IGUANE CROCODILE ALLIGATOR DRAGON PYTHON MOUSTIQUE MOUTON CHEVREUIL OURSON SOURIS RAT POULE CANARD OIE COQ PAON PERROQUET PINGOUIN FLAMANT FOUINE HERISSON COLOMBE PIGEON [/text]Avec le code python qui suit on génère un fichier texte qui répond au cahier des charges:
Et on obtient le fichier texte " result.txt ":
[text]6A CHEVRE17 GUEPARD17 OURS29 FOUINE21 POULE13 OURSON17 COLOMBE21 VACHE13 CHEVREUIL21 COQ25 FLAMANT17 COCHON13 HYENE21 CASTOR29 PERROQUET13 KANGOUROU21 GIRAFE29 ANTILOPE33 TORTUE21 TIGRE21 CHIEN17 IGUANE29 TAUREAU17 CHEVAL25 ALLIGATOR25 RENARD25 LION17 PINGOUIN21 PIGEON21 RHINOCEROS21 CHAT13 SERPENT33 MOUTON21 HERISSON21 KOALA29 MOUSTIQUE13 DRAGON25 ZEBRE17 PAON21 SOURIS25 AGNEAU33 PANTHERE33 CROCODILE33 RAT25 PANDA29 SINGE17 LEZARD29 LOUP25 OIE13 CANARD33 ---------------------------------------- 6B PANDA38 RENARD38 CHEVREUIL26 CHAT22 CHIEN22 CHEVRE14 OURSON34 HYENE18 CERF38 PYTHON14 LOUTRE22 VACHE34 HIPPOPOTAME22 CASTOR18 MOUSTIQUE14 LOUP26 FOUINE26 OURS26 LEZARD34 COCHON38 OIE38 SOURIS22 CROCODILE26 SERPENT14 TIGRE26 DRAGON22 IGUANE34 AGNEAU18 PINGOUIN26 SINGE26 ANTILOPE22 ZEBRE14 KANGOUROU14 ALLIGATOR18 HERISSON34 LAPIN22 PERROQUET18 PAON14 COLOMBE26 POULE26 MOUTON38 COQ14 JAGUAR34 ELEPHANT18 LION18 RHINOCEROS14 TAUREAU34 GUEPARD26 FLAMANT26 PANTHERE38 ---------------------------------------- 6C COCHON27 CROCODILE31 ZEBRE11 LOUTRE31 FOUINE19 KANGOUROU23 LEZARD19 GUEPARD11 LAPIN31 PYTHON19 TIGRE19 OIE31 GIRAFE15 COQ31 CHEVAL27 CASTOR19 ELEPHANT15 OURSON15 RENARD19 DRAGON11 TORTUE27 ALLIGATOR11 HYENE31 CHAT31 KOALA15 RHINOCEROS31 LION19 FLAMANT19 PAON23 LOUP15 HIPPOPOTAME11 CERF11 CHEVREUIL11 VACHE19 CHIEN23 SINGE23 AGNEAU27 CHEVRE11 OURS31 IGUANE27 PANTHERE23 SERPENT23 TAUREAU23 POULE31 CANARD23 COLOMBE11 PIGEON23 RAT23 PINGOUIN19 PANDA27 ---------------------------------------- 6D CHEVRE28 PAON32 ZEBRE12 CASTOR16 MOUSTIQUE32 LOUTRE12 CHEVAL36 RENARD24 OURSON36 CHEVREUIL32 ANTILOPE36 TORTUE36 SINGE16 TIGRE12 TAUREAU16 COCHON28 LEZARD24 AGNEAU12 PIGEON28 JAGUAR12 HYENE36 HERISSON36 FLAMANT32 CHAT24 RAT16 PERROQUET28 VACHE16 GIRAFE24 ELEPHANT12 PINGOUIN36 SERPENT24 MOUTON16 POULE28 OURS24 PYTHON24 HIPPOPOTAME28 COLOMBE32 LION12 ALLIGATOR24 GUEPARD12 RHINOCEROS24 COQ16 OIE24 SOURIS12 LOUP16 CERF32 CROCODILE32 PANDA24 KOALA12 FOUINE24 ---------------------------------------- [/text]J'ai choisi les nombres de deux chiffres pour qu'on puisse rapidement retrouver la classe en question : Le reste dans la division euclidienne de ce nombre par 4 donne le rang de la classe :
13 = 4 × 3 + 1 : première classe
Le code Python n'est pas commenté, il est très simple !
lien vers l'article sur wouf blogAllhtml est plus qu'un site, c'est une communauté de passionnés en développement web.
Sur le site de Wouf, AllHtml est accéssible en cliquant sur liens puis "plus"