2017-05-04 5 views
-3

enter image description herenicht definierte Methode `jede‚für Haupt: Object (NoMethodError)

Ich versuche, diese Datei in meiner Konsole zu laufen, aber wenn ich es laufen bekomme ich diesen Fehler: nicht definierte Methode `jeden‘ für Haupt: Object (NoMethodError)

Ich versuche, das Wort zu nehmen, das eingegeben wurde, indem ich self benutze, dann Schleife durch es überprüfen, um zu sehen, ob seine Buchstaben einen passenden Wert in meinem Hash haben, dann drucke das Array zurück zu mir, das alle enthält Werte in diesem Wort.

Antwort

1

self keine Werte bekommen, vielleicht suchen Sie nach so etwas wie gets:

def scrabble 
    values = {"a" => 1, "e" => 1, "i" => 1, "o" => 1, "u" => 1} 

    list = [] 

    gets.chomp.split("").each do |letter| 
    list << values[letter] 
    end 

    puts list 
end 

gets wird für die Eingabe Benutzer fragen (in der Konsole) und mit split konvertieren Sie, dass die Eingabe in ein Array mit allen Zeichen, dann können Sie each dieses Array verwenden.

1

Das Schlüsselwort self bezieht sich auf das aktuelle Objekt. This post könnte Ihnen einige Informationen geben.

Um eine Eingabe aufzeichnen und iterieren:

# codes... 
input_string = gets.chomp 
input_string.each_char do |letter| 
    # codes.... 
end 
+0

Ich habe versucht, wirklich zu tun, dass die Eingabe = gets.chomp dann input.each(), aber ich habe diesen Fehler nicht definierte Methode 'jede‘ für ‚a‘: String (NoMethodError) aber ich habe _char nicht hinzugefügt und als ich hinzugefügt habe, dass es funktioniert hat! Vielen Dank –

Verwandte Themen