Important
Ce programme nécessite Python 3
La version la plus récente de Python peut être téléchargée ici.
Important
Python 3 nécessite Tkinter
L'exécution de «Pip Installer TK» à partir d'une ligne de commande ou d'un terminal après l'installation de Python devrait faire l'affaire si Tkinter n'est pas venu regroupé dans votre version de Python.
Prudence
Mad Math recherche le répertoire "Data" inclus pour un fichier nommé Madmath.db, qui est créé lorsque le programme est lancé et ne peut pas trouver le fichier (comme la première fois qu'il est exécuté). Faites un raccourci / Symlink sur madmath.pyw si vous souhaitez lancer le programme à partir d'un dossier différent de celui où il est enregistré.
Ne déplacez rien du dossier Madmath. Le dossier lui-même peut être déplacé, mais pas pendant que le programme est en cours d'exécution.
Téléchargez et dézip Madmath.zip à l'emplacement souhaité, puis double-cliquez sur madmath.pyw dans le répertoire Madmath pour lancer.
Lorsque j'étais en 2e nd , nous avons commencé chaque segment mathématique en terminant une feuille de travail chronométrée d'une minute contenant 20 équations dans lesquelles nous avons effectué l'ajout sur deux nombres à un chiffre aléatoire. Cela devait être un exercice d'échauffement, et au début, le plus a eu du mal à terminer la feuille entière à temps. Mon père l'a remarqué, a décidé qu'il était inacceptable pour moi de prendre plus de temps que quelques secondes pour évaluer une équation simple, et a commencé à écrire un programme en Java. En quelques semaines, il avait créé le prototype fonctionnel d'un programme d'addition numérique. Il m'a fait passer environ une heure par jour à pratiquer, et en quelques mois, j'ai pu résumer deux numéros à un chiffre en environ deux secondes. C'était très lent au début, en partie en raison de la ligne numérique étant le seul moyen de saisir les numéros. Le programme économiserait le score élevé dans un fichier texte caché, et je me concurrendrais avec moi-même pour le pousser le plus haut possible. Au début, j'enviendrais en moyenne environ 12 par minute, mais chaque jour, le nombre montait lentement. Au moment où je mettais en moyenne au milieu des scores, nous avons commencé à faire des feuilles de travail similaires en classe avec multiplication. Vingt minutes de modification, dix minutes de compilation plus tard, et j'étais le fier propriétaire des variantes d'addition et de multiplication du programme. Il n'y avait jamais de variantes de soustraction ou de division. Peut-être parce que nous n'avons jamais eu de feuilles d'échauffement avec ces opérations, potentiellement à cause de son entrée dans une période de vie dépourvue de temps libre, mais je soupçonne que c'est parce qu'il a continué avant de découvrir comment servir les équations correctement car j'avais déjà appris les mathématiques. Inversion et portage sa logique à partir de la mémoire, étendant les opérations disponibles, ajoutant des supports de difficulté via des limites, des couleurs, des sons et une base de données complète du tableau de bord sont mes contributions à son idée.
Les programmes de mon père ne m'ont pas enseigné les mathématiques, et ils n'ont pas été conçus. Ils ont été créés pour me fournir un environnement adéquat pour pratiquer et suivre mes progrès tout en apprenant. Ce programme fonctionne de la même manière. Il n'y a aucune tentative pour enseigner à l'utilisateur comment effectuer des opérations mathématiques, mais toute personne qui peut effectuer l'addition, la soustraction, la multiplication et la division peuvent utiliser ce programme pour perfectionner leur vitesse de solution.
Tout d'abord, j'aimerais annoncer ma conscience du mépris pour la mise en forme du code Python standard, c'est la première chose que je m'attends à ce que d'autres développeurs remarquent. Ma convention de code, bien que non standard, devrait être cohérente. Mes fonctions sont en tube de serpent, des variables Camel Based, des classes Capital Basée et je préfigure des méthodes «privées» internes avec un soulignement. Je ne «prie pas» des noms de variables. Ils sont utilisés beaucoup plus fréquemment et les classes ne sont pas actuellement assez génériques pour réutiliser sans refactorisation modérée. Je joins des chaînes significatives dans les «tiques simples» (comme «Bold» ou «Active») et affiche du texte ou des chaînes où l'ordre des caractères n'a pas d'importance avec «Double Quotes» (comme Sticky = "EW").
Testé et travaillant dans Win10 et Manjaro, mais Sound ne fonctionne actuellement qu'avec Windows. Je travaille à trouver une façon native d'envoyer un son asynchrone via Mac et Linux. Une règle rapide dure à laquelle je voudrais m'en tenir est de ne pas avoir de dépendances en dehors des modules standard, afin d'augmenter l'accessibilité. Je pourrais envoyer un son avec Pygame ou PlaySound, mais l'utilisateur doit ensuite installer un autre module pour utiliser le programme et je préfère sacrifier le son pour l'instant.
Ce n'est pas le plus précis. Dans un cadre concurrentiel, et selon le système qui l'exécute, la précision de la minuterie peut être objectivement inacceptable. J'ai ajouté un compteur de performances dans Frames.py pour tester rapidement la variance entre le «temps implicite du quiz à terminer» et le «temps réel pour terminer». Simplement les lignes non commises: 2, 168, 175 et 179 dans les classes / madmath.py et exécutez madmath.pyw à partir d'une ligne de commande ou d'un terminal à afficher. La variance sur ma machine est en moyenne de 60,3 à 60,4 secondes, ce qui est acceptable pour un tableau de bord local dans mon cas d'utilisation. Cette importation enfreint également ma règle d'importation, mais une fois qu'un minuteur plus précis est incorporé, son code connexe sera supprimé.
Je suis fier d'avoir pu le rassembler moi-même et de le publier comme un projet gratuit et open source. Au contraire, j'accepte des dons de café, mais même si je ne reçois pas un centime, je maintiendrai et améliorerai volontiers ce programme à perpétuité selon le temps. C'est comme aider un vieil ami qui m'a autrefois aidé. J'espère juste que cela pourrait vous aider aussi.
CashApp: $ coffeephreak
Les autres utilisateurs courageux peuvent également me laisser tomber
Mon PB pour l'addition / Easy est de 62 avec 1 manqué, réglé 25/12/2023
correct
incorrect
haut niveau