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:
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:
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.
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! !!
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:
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:
Recommended Posts