Привет всем (будущий я), меня зовут Оскар Рамирес, и я начинаю этот блог как часть задания для Launch School. Но, по правде говоря, я всегда хотел предлога, чтобы высказать свои мысли об этом носителе, и наконец такая возможность представилась. В любом случае, задание требует, чтобы я начал вести дневник, чтобы отслеживать любые важные вещи, которые я узнал на своих курсах, чтобы улучшить запоминание, а также оставить след своего путешествия.

Итак, для начала я начну с моего первоначального танца с методом divmod(numeric). Согласно документации Ruby, #divmodвозвращает массив, содержащий частное и модуль, полученные путем деления num на numeric. Если q, r = x.divmod(y), то

q = floor(x/y)
x = q*y+r

Это интересно, потому что его можно использовать для возврата массива с частным в качестве первого элемента и модулем (остатком) в качестве второго элемента. Но, как показано выше, этим методом также можно манипулировать таким образом, что он возвращает эти два значения как переменные, разделяя частное и модуль запятыми во время инициализации.

Этот метод пригодился во время проблемы, в которой меня попросили создать метод, который возвращал бы целое число в виде строки без использования метода to_s или каких-либо подобных методов. Естественно, я использовал divmod, когда добавлял целое число к массиву, и использовал divmod для деления первого элемента в массиве (целого числа) на 10 и замены элемента в массиве элементами частного и модуля соответственно. После итерации цикл будет повторяться до тех пор, пока первый элемент массива, т. е. модуль, не станет равным 0. Это было сделано для того, чтобы после добавления каждой цифры целого числа к итоговой строке цикл прерывался и метод закончится. Копию метода можно увидеть ниже:

ПРЕОБРАЗОВАНИЕ = { 1 => '1', 2 = > '2', 3 = > '3', 4 = > '4', 5 = > '5',
6 = > '6', 7 =› '7', 8 =› '8', 9 =› '9' }

def integer_to_string(integer)
arr = []
arr ‹‹ integer
string = «»
loop do
arr = arr[0].divmod (10)
CONVERSION.each do |k, v|
string.prepend(v) if k == arr[1]
end
break if arr [0] == 0
end
string
конец

Теперь, если бы я знал о способности #divmod возвращать отдельные значения в дополнение к массиву, я бы сделал это без массива «arr» и просто повторял бы, пока переменная «модуль» не станет равной 0. В любом случае работает, но последний метод мог бы сократить мой метод, а также сделать его чище.

Это примерно подводит итог моей первой записи. Это было кратко, но не боюсь, потому что я уверен, что буду болтать о своем прошлом и/или о том, что происходит в моей жизни в ближайшем будущем. До тех пор, избегайте людей!