Как использовать класс Thread для выполнения арифметического метода? - PullRequest
0 голосов
/ 19 февраля 2012

Как мне выполнить этот код внутри объекта Thread?

Я хочу непрерывного выполнения, но плохо разбираюсь в работе с объектами Thread.У меня есть класс Number, который получает число в качестве параметра.

Если число четное, сделайте что-нибудь, если нечетное, сделайте что-нибудь другое, в конце концов, что мне нужно, это непрерывная оценка числа в рамках этих условий с «числом», равным 1. Всехраниться в массиве и запрашивать array.last для возврата 1.

class Number
  attr_accessor :x
  def initialize (number)
    @x=[] 
    if (number % 2 == 0)
      @x << number/2

    elsif (number % 2 != 0)
      @x << (number*3)+1
    end
    print  @x.to_s.concat(" ") // unable to continue

  end

1 Ответ

0 голосов
/ 19 февраля 2012

Я думаю, это то, что вы пытаетесь сделать:

def recurse(x, a = [])
  a << x
  return a if x == 1
  if x % 2 == 0
    recurse(x/2, a)
  else
    recurse((x*3 + 1)/2, a)
  end
end

recurse 7
=> [7, 11, 17, 26, 13, 20, 10, 5, 8, 4, 2, 1]

recurse 12
=> [12, 6, 3, 5, 8, 4, 2, 1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...