Der erste Satz von Code funktioniertAnfänger versuchen, herauszufinden, warum 2 sehr ähnlich Sets of Code haben sehr unterschiedliche Ergebnisse
def scramble_string(string, positions)
scrambled=""
idx=0
while idx<string.length
scrambled+=string[positions[idx]]
idx+=1
end
puts scrambled
return scrambled
end
Es ergeben sich folgende Ein-/Ausgänge:
scramble_string ("ABCD", [3, 1, 2, 0]) == "dbca"
scramble_string ("Markov", [5, 3, 1, 4, 2, 0] Es ergeben sich folgende Ein-/Ausgänge) == "vkaorm"
Auf der anderen Seite, diese zweite Satz nicht
def scramble_string(string, positions)
scrambled=string
idx=0
while idx<string.length
scrambled[idx]=string[positions[idx]]
idx+=1
end
puts scrambled
return scrambled
end
funktioniert:
scramble_string ("abcd", [3, 1, 2, 0]) == "dbcd"
scr amble_string ("markov", [5, 3, 1, 4, 2, 0]) == "vkkokv"
Bitte helfen Sie mir zu verstehen, warum der 2. Satz nicht funktioniert.
Sind "dbca" und "vkaorm" die erwartete Ausgabe? –