Perceuse de calcul Python

Cette fois, nous utiliserons un fichier texte pour créer un exercice de calcul pour les opérations binaires sur des nombres naturels à un chiffre. L'environnement est anaconda. Le code que j'ai écrit est le suivant.

Code et résultat de sortie

Foret de calcul


import random

with open("keisan.txt","w") as f:
    answer = []
    for cnt in range(10):
        num1 = random.randint(1,9)
        num2 = random.randint(1,9)
        question = str(num1) + " + " + str(num2) + " = "
        answer.append(num1+num2)
        f.write(question+"\n")
    f.write("\nA. ")
    for ans in answer:
        f.write(str(ans) + " ")

Résultat de sortie


5 + 1 = 
5 + 2 = 
3 + 3 = 
2 + 6 = 
1 + 5 = 
4 + 8 = 
6 + 1 = 
8 + 4 = 
6 + 7 = 
6 + 4 = 

A. 6 7 6 8 6 12 7 12 13 10 

couler

Je vais vous expliquer le déroulement du programme.

Ouvrir un fichier texte


with open("keisan.txt","w") as f:

Tout d'abord, importez le module aléatoire </ b> pour obtenir un nombre naturel à un chiffre. Ensuite, utilisez avec instruction </ b> pour générer un fichier texte, nommez le fichier "keisan.txt" et ouvrez-le en mode écriture.

Écrire une expression


answer = []
for cnt in range(10):
        num1 = random.randint(1,9)
        num2 = random.randint(1,9)
        question = str(num1) + " + " + str(num2) + " = "
        answer.append(num1+num2)
        f.write(question+"\n")
    f.write("\nA. ")

Ici, l'addition réelle est écrite. Nous publierons également la réponse, alors préparez une liste. La fonction randint </ b> qui génère les entiers du module aléatoire est utilisée pour générer des nombres naturels de 1 à 9. Je stocke la phrase de question en question, mais si j'utilise l'opérateur , elle sera calculée arbitrairement </ b>, donc je la convertis en chaîne de caractères et la stocke. La réponse est d'utiliser la méthode append </ b> et de l'ajouter à la liste. Ensuite, la formule de calcul stockée en question est écrite par la méthode write </ b>. Sortie avec sauts de ligne pour une visualisation facile.

Ecrire la réponse


 for ans in answer:
        f.write(str(ans) + " ")

Enfin, la liste des réponses stockées dans answer est sortie dans l'ordre par l'instruction for.

Regarder en arrière

J'ai écrit et lu des fichiers texte en utilisant le langage C dans le passé, mais avec python, c'est très facile car l'utilisation de l'instruction with vous fait ignorer la fermeture du fichier. Comme ce code n'est qu'une opération binomiale d'addition, je voudrais étendre la fonction de cet exercice de calcul en sélectionnant librement l'opération et en spécifiant le nombre de chiffres dans le futur. Si vous avez des commentaires ou des questions, n'hésitez pas à commenter.

Recommended Posts