Je publierai sous forme de mémorandum les questions qui ont été posées lors du changement d'emploi inexpérimenté et les réponses que j'ai étudiées et traitées à ma manière.
C'est une réponse que je me suis donnée à cause de mon manque de capacité, donc je serais très heureux si vous pouviez la corriger ou l'expliquer!
Créez une fonction qui génère des nombres de 1 à 100 dans l'ordre. Cependant, si le numéro de sortie est un multiple de 3, "Fizz" s'affiche, si le numéro de sortie est un multiple de 5, "Buzz" est affiché, et si le numéro de sortie est un multiple de 3 et un multiple de 5, "Fizz" est affiché. Veuillez sortir "FizzBuzz" au lieu de nombres. Également, sortez le code de saut de ligne (LF- \ n) après la sortie de chaque nombre ou chaîne de caractères.
code fizzbuzz
(1..100).each do |n| #Répétez le processus de 1 à 100
def fizzbuzz(n)
if n % 15 == 0 #Sortie FizzBuzz lorsqu'il est un multiple de 3 et 5 (3✖︎5)(9/21 Addendum Il y a un meilleur correctif de code dans les commentaires.)
puts "FizzBuzz"
elsif n % 3 == 0 #Sortie Fizz quand il est un multiple de 3
puts "Fizz"
elsif n % 5 == 0 #Sortie Buzz lorsqu'il est un multiple de 5
puts "Buzz"
else
puts n #Numéros de sortie si les conditions ci-dessus ne sont pas remplies
end
end
puts fizzbuzz(n) #Méthode de sortie fizzbuzz(9/21 Addendum Pas besoin de mise en commentaire)
end
Créez une fonction qui génère des nombres premiers de 1 à 1000. La définition d'un nombre premier est la suivante.
Un nombre premier est un nombre naturel supérieur à 1 et qui n'a que 1 et lui-même.
Code qui produit un nombre premier
primeReturn = [] #Faire de primeReturn un tableau
(1..1000).each do |n| #Répéter le traitement de 1 à 1000
next if n == 1 #Si la condition if est vraie, passez au processus suivant avec next
if n == 2
primeReturn.push(n) #Ajoutez n à la fin du tableau primeReturn avec la méthode push
next #Passez au processus suivant
end
#Comme indiqué dans les commentaires, l'algorithme ici est un gaspillage.
judge = true
primeReturn.each do |number|
if n % number == 0 #Traitement des nombres premiers
judge = false
break #Mettre fin de force au processus en cours et passer au processus suivant
end
end
primeReturn.push(n) if judge #Ajoutez n à la fin du tableau primeReturn avec la méthode push uniquement si juge est vrai
end
puts primeReturn #Sortie primeReturn (nombre premier de sortie)
__ * Dans le cas du rubis, cela peut être fait plus facilement. __
code simple pour ruby
require 'prime' #Charger la bibliothèque principale
Prime.each(1000) {|x| p x} #Oh, c'est très simple. .. ..
J'ai créé un programme qui génère des nombres de 0 à 9999 dans l'ordre d'une étape. Combien de fois le nombre 7 est-il émis lorsque ce programme est exécuté? Par exemple, si 7777 est émis, le nombre 7 est compté comme étant sorti 4 fois. Veuillez répondre à la réponse à cette question ou au programme pour calculer la réponse.
Code pour compter le nombre 7
num = [*(1..9999)].to_s # to_Convertit le contenu du tableau s en chaîne
puts num.count("7") #Comptez le nombre de 7 caractères de la chaîne de caractères dans le tableau
https://qiita.com/motoki4917/items/ffc89d955e20b91d1014 https://techacademy.jp/magazine/7507 https://docs.ruby-lang.org/ja/latest/class/Prime.html https://docs.ruby-lang.org/ja/latest/method/Array/i/inspect.html https://qiita.com/syo19961113/items/9f189424b5af5e084d33