Första numret i arrayen
Jag programmerar i ruby. Jag vill att min output skall vara det första numret i arrayen, någon som vet vart felet ligger? Jag har kodat följande:
def first_of(array)
number = array[1]
end
return number
result = first_of([1,2,3,4])
puts result
Vad blir det? Blir det 2?
Nej, det blir ett felmeddelande, det står:
Traceback (most recent call last):
first_of.rb:7:in `<main>': undefined local variable or method `number' for main:Object (NameError)
Men det är sant det du skriver, det borde bli 2 eftersom jag har skrivit array[1] & inte array[0], jag ändrar det nu. Men jag får fortfarande samma felmeddelande.
Hej!
Din funktion first_of deklarerar den lokala variabeln number och måste returnera detta värde. Du har fått det utanför funktionen (i din main som inte känner till den variabeln: "undefined local variable `number' for main")
def first_of(array)number = array[1]
endreturn number # Det här borde stå inne i funktionen first_of
result = first_of([1,2,3,4])
puts result
annlu skrev:Hej!
Din funktion first_of deklarerar den lokala variabeln number och måste returnera detta värde. Du har fått det utanför funktionen (i din main som inte känner till den variabeln: "undefined local variable `number' for main")
def first_of(array)number = array[1]
endreturn number # Det här borde stå inne i funktionen first_of
result = first_of([1,2,3,4])
puts result
Då står det:
Traceback (most recent call last):
1: from first_of.rb:9:in `<main>'
first_of.rb:1:in `first_of': wrong number of arguments (given 0, expected 1) (ArgumentError)
Hur ser din kod ut nu? Felmeddelandet säger att din funktion first_of förväntar sig ett argument men att du anropar den utan.