D'un livre que les pensées du programmeur peuvent être apprises: résumez les parties de petits problèmes

Premiers pas avec la programmation avec Python Suite de Dernière fois

À la fin de cette question, chaque partie sera assemblée pour devenir la réponse finale. (Il semble que c'était déjà terminé la dernière fois (transpiration)

Problème: (Première tâche) Vérification de la somme de contrôle des runes > (Veuillez noter que l'énoncé du problème est dupliqué) La méthode runique est une méthode souvent utilisée pour vérifier le numéro d'identification. Pour chaque chiffre du numéro d'origine, doublez ce nombre tous les autres chiffres. Après cela, ajoutez les nombres de chaque chiffre (s'il y a un nombre qui double à 2 chiffres, ajoutez le chiffre des dizaines et le chiffre des unités individuellement). Si la somme est divisible par 10, le numéro d'identification est considéré comme valide. Écrivons un programme qui reçoit un numéro d'identification de n'importe quelle longueur et vérifie si la valeur est valide dans une expression runique. Dans ce programme, après avoir lu un chiffre, le chiffre doit être traité avant de passer au chiffre suivant.

Sachez quel chiffre doubler > [Réponse](http://qiita.com/teratera/items/503be633b4148824b368) Comme vous pouvez le voir dans ce commentaire, j'ai utilisé la fonction input () de Python pour tout saisir une fois, calculer la longueur de la chaîne de caractères et dériver les nombres pairs et impairs.

Lorsque le résultat du doublement devient 2 chiffres, chaque chiffre est traité individuellement > [Réponse](http://qiita.com/teratera/items/6dfa72d6b5d1e987c2df) (0-9) Le calcul après avoir doublé a été foiré, mais j'ai pu obtenir le nombre que je voulais de 1 + (double nombre% 10).

Sachez que vous avez lu les nombres jusqu'à la fin > [Réponse](http://qiita.com/teratera/items/a76667d8e6cc23078292) C'est aussi la réponse au problème. En C ++, il semblait que le code de caractère ASCII était calculé et jugé par le code de saut de ligne, mais dans le cas de Python, la fonction input () semblait juger le saut de ligne, donc ce n'était pas particulièrement difficile.

Lire chaque chiffre individuellement [Réponse](http://qiita.com/teratera/items/387be64bd9b40971cd38) Répétez avec la fonction range () et entrez individuellement avec la fonction input () (Cependant, la fonction input () peut être entrée sous forme de chaîne de caractères)

D'après ce qui précède, la réponse est la suivante.

#!/usr/bin/env python
#coding:utf-8

from ConsoleOut import cout
from test import doubleDigitValue


def number():
    checksum = 0
    position = 0
    cout << "Enter a number:"
    digits = input()
    while position < len(digits):
        digit = digits[position]
        if position % 2 == 0:
            checksum += int(digit)
        else:
            checksum += doubleDigitValue(int(digit))
        position += 1

    cout << "Checksum is " + str(checksum) + ". \n";
    if checksum % 10 == 0:
        cout << "Checksum is divisible by 10. Valid .\n"
    else:
        cout << "Checksum is not divisible by 10. Invalud. \n"

・ ・ ・(Résultats terminaux)
Activé ou désactivé lorsque le problème 1762483 est calculé par somme de contrôle
>>> from test03 import number
>>> number()
Enter a number:1762483
Checksum is 30. 
Checksum is divisible by 10. Valid .(Efficacité)

S'il est divisible par 10, le résultat est que vous voulez demander «efficace». Jusqu'à présent, j'ai appris d'innombrables points, mais j'en profiterai pour aborder la tâche suivante.

Recommended Posts

D'un livre que les pensées du programmeur peuvent être apprises: résumez les parties de petits problèmes
D'un livre que les programmeurs peuvent apprendre ... (Python): Pointer
À partir d'un livre que les programmeurs peuvent apprendre ... (Python): À propos du tri
À partir d'un livre que les programmeurs peuvent apprendre (Python): Décoder les messages
À partir d'un livre que le programmeur peut apprendre ... (Python): trouver la valeur la plus fréquente
À partir d'un livre que les programmeurs peuvent apprendre ... (Python): examen des tableaux
À partir d'un livre que les programmeurs peuvent apprendre (Python): valeur de l'écart de traitement statistique
À partir d'un livre que le programmeur peut apprendre ... (Python): Recherche conditionnelle (valeur maximale)
À partir d'un livre que le programmeur peut apprendre ... Vérification de la somme de contrôle des runes (longueur fixe)
À partir d'un livre que les programmeurs peuvent apprendre (Python): Déclaration de classe (public / privé, etc.)
À partir d'un livre que le programmeur peut apprendre ... Vérification de la somme de contrôle des runes (longueur variable) Partie 2
À partir d'un livre que le programmeur peut apprendre ... Conversion de caractères qui représentent des nombres en type entier
D'un livre qui apprend de manière intéressante la façon de penser du programmeur (Python)
"Un livre qui comprend Flask à partir de zéro" Lecture d'un mémo
Faisons un livre Kindle qui visualise des formules mathématiques à partir de fichiers TeX
8 services que même les débutants peuvent apprendre Python (des débutants aux utilisateurs avancés)
J'ai fait une simple minuterie qui peut être démarrée depuis le terminal
TensorFlow Pour apprendre d'un grand nombre d'images ... (Problème non résolu) → 12/18 Résolu