Versuchen Sie, diese Frage zu lösen, wo Sie Argumente bereitstellen und eine übereinstimmende Ausgabe bereitstellen müssen.Ruby: Filter Non-Integers von String
Nimm zwei ganze Zahlen (i und n) als Befehlszeilenargumente. Schreibe i auf die Standardausgabe, gefolgt von den folgenden n ganzen Zahlen (getrennt durch Kommas).
Geben Sie keine Leerzeichen oder versteckte Zeichen in die Ausgabe ein.
Beispiel: Argumente: 3 5 Ausgang: 3,4,5,6,7,8
Hier ist mein Code:
base_number = ARGV.shift.to_i
iterate_number = ARGV.shift.to_i
if iterate_number < 0
base_number = base_number.to_s
iterate_number = iterate_number.to_s
else
print base_number
iterate_number.times do
base_number = base_number + 1
print ','
print base_number
end
end
Bisher ich habe schaffte es, 7/9 der Tests zu fangen. Dies schließt ein, wenn iterate_number negativ ist, was die Ausgabe leer zurückgibt.
Die letzten beiden Tests beziehen sich auf Argumente, die Buchstaben oder Leerzeichen sind, die beide in der Variablen i aufgelöst werden und 0 zurückliefern, so dass meine Ausgabe 0 anstatt leer ist.
Danke!
Ein Detail: Sie könnten 'base_number, iterate_number = ARGV.map (&: to_i)' schreiben. –