[RUBY] Comment obtenir n'importe quel numéro de chiffre à partir de 2 chiffres ou plus! !!

Bonsoir! !! Homme Aloha, Yasunori: kissing_smiling_eyes:

J'écrirai également un rappel qu'il m'a fallu un certain temps pour comprendre en étudiant cette semaine: sourire narquois:

Comme le titre l'indique, ce thème est ** "Que dois-je faire lorsque je veux obtenir le numéro du chiffre souhaité à partir d'un nombre de deux chiffres ou plus! ?? : sanglot: ”** Résolvons-le! !!

Au fait, tous les calculs sont des nombres entiers, je vais donc l'omettre cette fois, mais il y a quelques changements tels que l'utilisation de la méthode to_i s'il y a un point décimal: wink:

Comment obtenez-vous le nombre de chiffres que vous souhaitez?

Ensuite, tout d'abord, j'écrirai beaucoup sur la façon de prendre la valeur numérique de ** jusqu'à la place des centaines **!

num = 123

#Si vous voulez 100 chiffres
digit_100 = (num / 100) % 10

#Si vous voulez 10 chiffres
digit_10 = (num / 10) % 10

#Si vous voulez un chiffre de 1
digit_1 = (num / 1) % 10

puts "Le nombre de 100 chiffres est#{digit_100}est"
puts "Le nombre à 10 chiffres est#{digit_10}est"
puts "Le numéro à un chiffre est#{digit_1}est"

Maintenant que vous avez écrit le code! !! Si vous faites cela, obtenez-vous le chiffre que vous voulez ...: sueur:

résultat

Le nombre de chiffres de 100 est 1.
Le nombre à 10 chiffres est 2
Le nombre de 1 chiffre est 3

C'était sorti correctement! !! : sourire:

Regardons de plus près.

Commentaire

Voyons le cas de 10 chiffres

digit_10 = (num / 10) % 10

Il est devenu. Calculez d'abord la première moitié de la formule et vous obtiendrez ** 12 **. À partir de là, la partie qui était à l'origine ** 10 chiffres ** est maintenant passée à ** 1 chiffres **. Après cela, je n'ai pas besoin de plus de 10 chiffres, donc je veux juste 1 chiffre ...: penser:

Vraiment! !! ** Dois-je diviser par 10 et renvoyer le chiffre 1 comme reste! !! ** C'est pourquoi la seconde moitié de "%" entre en jeu: grin:

Parce que le reste de la division de 12 par 10 est le résultat de sortie

2

Sera retourné en conséquence! !!

Dans la première moitié de celle-ci, ** 10 **, cette fois-ci, il s'agissait de 10 chiffres, divisez-le par 10, mais s'il s'agit de ** 10000 chiffres, c'est 10000 **, et s'il vaut ** 1 million, c'est 1 million **. Si vous divisez par un chiffre, le numéro du chiffre souhaité sera remis au chiffre 1! !!

Pourquoi avez-vous besoin de temps pour comprendre?

Si vous regardez cette explication, "Hmm? N'est-ce pas étonnamment facile? Pourquoi a-t-il fallu si longtemps pour comprendre? Certaines personnes peuvent penser ": penser:".

En fait, le problème qui a été soulevé lorsque je réfléchissais à la façon d'obtenir le nombre de chiffres cette fois était ** "Obtenez chaque numéro à partir du nombre à deux chiffres" **! !!

Comme je l'ai expliqué au moment de l'explication plus tôt, si vous voulez un chiffre de 1, ** "Il vous suffit d'utiliser le reste après avoir divisé par 10 comme valeur de retour" **. Et les 10 chiffres sont devenus ** "Vous pouvez obtenir le nombre de chiffres simplement en divisant par 10" **.

Et ça

digit_10 = num / 10
digit_1 = num % 10

J'ai fini avec le code: joy: Même avec cela, s'il n'y a que 2 chiffres, la réponse est la même, alors "C'est ... pourquoi n'est-ce pas bon? "Il est devenu ...

Avec ce code, lorsque le nombre de chiffres augmente, vous pouvez le gérer en obtenant simplement le numéro du 1er chiffre et du 1er chiffre, mais vous ne pouvez pas obtenir le chiffre du milieu! !!

C'était facile à comprendre quand je l'ai remarqué, mais il m'a fallu un certain temps pour le remarquer: sweat_smile:

Conclusion

Même si ça a l'air si facile, je ne peux pas du tout comprendre si j'en suis accro. Cependant, le sentiment d'accomplissement quand on comprend ** est irremplaçable. J'avais l'impression d'être déjà dans le jus de cerveau Dopadopa: rire:

Essayons sans renoncer même si tout le monde rencontre des difficultés! !!

Recommended Posts

Comment obtenir n'importe quel numéro de chiffre à partir de 2 chiffres ou plus! !!
Comment démarrer un indice à partir d'un nombre arbitraire dans le traitement itératif Ruby
Comment obtenir un heapdump à partir d'un conteneur Docker
[Swift] Comment obtenir le nombre d'éléments dans un tableau (super basique)
Une version Java non prise en charge Comment se débarrasser des erreurs
Comment changer une chaîne dans un tableau en un nombre dans Ruby
Comment obtenir les informations les plus longues de Twitter à partir du 12/12/2016
Comment graver un disque d'installation de Windows à partir d'Ubuntu
Obtenons la représentation interne d'un nombre à virgule flottante
[jsoup] Comment obtenir la totalité de la documentation
[Swift5] Comment obtenir un tableau et un ensemble de différences entre les tableaux
[chown] Comment changer le propriétaire d'un fichier ou d'un répertoire
Comment obtenir la longueur d'un fichier audio avec Java
[Swift] Résumé de la suppression des éléments d'un tableau (mémo personnel)
Essayez d'émettre ou d'obtenir une carte de Jave à Trello à l'aide de l'API
Extraire chaque numéro de chiffre d'un entier à 3 chiffres
[Java] Comment accéder au début d'une chaîne spécifique à l'aide de la classe String
Comment obtenir le chemin absolu d'un répertoire s'exécutant en Java
[Pour les débutants Rails] Résumé de l'utilisation de RSpec (obtenir un aperçu)
[Introduction] Une collection de liens soigneusement sélectionnés allant de la façon de démarrer GitHub à la façon de résoudre des problèmes lorsque vous rencontrez une erreur dans Git.
[Java] Comment convertir un élément d'un tableau de type String en type Int
graphql-ruby: Comment obtenir le nom de la requête ou de la mutation dans le contrôleur Remarque
Comment obtenir l'ID d'un utilisateur qui s'est authentifié avec Firebase dans Swift
[Spring Boot] Comment obtenir des propriétés dynamiquement à partir d'une chaîne contenue dans une URL
Comment faire une méthode de jugement pour rechercher n'importe quel caractère dans le tableau
Comment obtenir une classe depuis Element en Java
Comment obtenir le jour d'aujourd'hui
[Java] Récupère des valeurs de manière aléatoire dans un tableau
Comment obtenir l'optimisation SIMD pour HotSpot JavaVM
Je veux afficher quel caractère une chaîne de caractères arbitraire apparaît à partir de la gauche
Que faire si vous obtenez une erreur de nombre d'arguments erroné dans binding.pry
[Java] Comment obtenir l'URL de la source de transition
Comment utiliser un tableau pour la clé TreeMap
Comment écrire Scala du point de vue de Java
Comment déployer à partir d'une image Docker locale vers Heroku
[Java] Comment obtenir la valeur maximale de HashMap
[Java] Comment obtenir une requête par communication HTTP
Comment sortir le standard d'un tableau avec for Each
[Android] Comment obtenir la langue de réglage du terminal
[Java] Comment effacer un caractère spécifique d'une chaîne de caractères
Comment convertir A en A et A en A en utilisant le produit logique et la somme en Java
Comment empêcher editTextPreference de Android PreferenceFragmentCompat de se rompre
[Rails] Comment obtenir le contenu des paramètres forts
[Swift] Comment obtenir l'ID de document Firebase
Comment obtenir JDK etc. depuis Oracle avec CLI
[Ruby] Comment extraire une valeur spécifique d'un tableau sous plusieurs conditions [sélectionner / chacun]
[Notes techniques] Éléments à prendre en compte du point de vue d'un ingénieur lors de la création d'une vue
Histoire d'auto-apprentissage X inexpérimenté à devenir ingénieur d'une société de développement interne basée sur le Web