Можно ли добавить функцию к al oop в ruby? - PullRequest
0 голосов
/ 17 апреля 2020

Я все еще довольно новичок в Ruby и кодировании в целом, и я уже некоторое время борюсь с этой конкретной задачей. Я просто хотел узнать, как добавить функцию в Ruby в al oop. Например:

def main()
name=read_string("What is your name? ")
if name=="Tom"
    puts "an awesome name"
else
    def print_silly_name(name)
        i=0
        puts name + " is a #{i}"+"name!"
        while i<60
            loop do puts " silly"
                i=i+1
            end

На выходе должно быть напечатано слово «глупый» 60 раз, но я не уверен, как вызвать l oop.

Ответы [ 2 ]

2 голосов
/ 17 апреля 2020

Вы сначала определяете ваш метод, например:

def print_silly_name(name)
  print "#{name} is a"
  60.times { print " silly" }
  puts " name!"
end

А затем вы вызываете ваш метод:

def main
  name = read_string("What is your name?")

  if name == "Tom"
    puts "an awesome name"
  else
    print_silly_name(name)
  end
end

Пример вывода :

Как тебя зовут?

Боб

Боб глупый глупый глупый глупый глупый глупый глупый глупый глупый глупый глупый глупый глупый глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо глупо 1020 *

1 голос
/ 17 апреля 2020

Вы должны отключить метод за пределами main():

def print_silly_name(name)
  i=0
  while (i<60)
      puts name + " is a #{i}"+"name!"
      i+=1
  end
end

, а затем просто вызвать его в файле .rb:

print_silly_name('Josh')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...