@severnik

Как на Ruby проверить переменную, которой присвоена некая формула, на nil?

Как можно проверить некую формулу на nil и одновременно присвоить эту формулу переменной для дальнейшего использования без того, чтобы записывать выражение формулы повторно в переменную? Формула довольно длинная и повторно её дублировать в коде не хочется.

Отдельно проверку и затем присваивание я понимаю как делать.
Выражением формулы в примере ниже является cfs[5]+cfs[12]+cfs[10]+cfs[11]
nonil =  (cfs[5]+cfs[12]+cfs[10]+cfs[11]).nil? rescue true
unless nonil
  summa = cfs[5]+cfs[12]+cfs[10]+cfs[11]
end

или так
unless ((cfs[5]+cfs[12]+cfs[10]+cfs[11]) rescue nil).nil?
  • Вопрос задан
  • 193 просмотра
Пригласить эксперта
Ответы на вопрос 2
@severnik Автор вопроса
Методом тыка нашёл такое решение
nonil = (summa = a+b+c).nil? rescue true
unless nonil
  summa
end
Ответ написан
2ord
@2ord
Просто используй функцию.
def summa(cfs)
  cfs[5]+cfs[12]+cfs[10]+cfs[11]
end
sum = summa(cfs)

И отдельно почитай про обработку ошибок в Ruby.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы