[ruby-de] return missing...

sto.mar at web.de sto.mar at web.de
Fr Apr 21 03:12:30 JST 2017


Am 20.04.2017 um 19:44 schrieb Die Optimisten:
> def fib(n)
>   p n
>   fib(n-1) + fib(n-2) if n>1        # Fehler: undefined + for nil ...
>   ##return##  fib(n-1) + fib(n-2) if n>1
>   return 0 if n==0
>   return 1 if n==1
> end
> 
> p fib(5)
> 
> Warum der Fehler, mit  RETURN  (n-2)+(n-1) gehts.
> was macht return? (nein, ich mag mir nicht den C-Code anschauen :)

Nochmal die Bitte: es würde wirklich Zeit sparen, wenn du den
Output direkt im Post mit angeben würdest...

Zur Frage:

1. Rückgabewert der Methode = Wert des letzten Ausdrucks in der Methode

2. "foo"  if 2 == 1  # => nil

Hoffe das hilft,
Marcus


-- 
GitHub: https://github.com/stomar/
PGP:    0x6B3A101A


Mehr Informationen über die Mailingliste ruby-de