-3
我做了一個程序,我需要把所有可能的字符放在一個數組中。 在這裏,我創造我的變量只是讀名稱爲什麼我不能在數組中放入我需要的所有字符?
print "write your name: "
name1 = gets.chomp
然後我試圖把所有的字符數組內,例如,如果你的名字是約翰,數組是:J-,喬,荷蘭Joh,約翰
arrayNames = []
number = name1.length
number.times {|i|
arrayNames[i] = name1.slice(0,i)
}
arrayNames << name1
然後讀它,我想使置換計劃,我寫:
numb = name1.length+ 1
numb2 = anotherVariable.length + 1
numb.times {|j|
numb2.times {|k|
perm = [arrayNames[j],theSecondArray[k]]
p perm
file1.puts
}
}
當然
我有文件1發,我已經第二陣列塔完全相同的代碼在arrayNames
但沒有工作。它甚至不顯示錯誤。生病把所有的代碼放在一起下面
class Data
def initialize
end
def dataIn
print "write your name: "
$name = gets.chomp
print "write your surname: "
$surname = gets.chomp
end
def dataName
$passwordName = []
numb = $name.length
numb.times {|i|
$passwordName[i] = $name.slice(0,i)
$passwordName << $name
end
def dataSurn
$passwordSur = []
numb = $surname.length
numb.times {|i|
$passwordSur[i] = $surname.slice(0,i)
}
$passwordSur << $surname
end
def alg1
numb = $name.length + 1
numb2 = $surname.length + 1
numb.times {|i|
numb2.times {|j|
perm = [$passwordName[i], $passwordSur[j]].permutation.map {|k|
k.join}
p perm
$archivos.puts perm
}
}
end
end
代碼本身有點複雜一點,但我的問題是一樣的。該方法ALG1犯規work.then我只是給他們打電話,創建文件
data = Data.new()
datos.dataIn
$archivos = File.new("passwords",'w+')
File.open("passwords")
data.datosName
data.datosSurn
data.alg1
gets()
您是否在ruby shell中逐行運行命令?你認爲在這個過程中arrayNames(或麻木)的價值是什麼?此外,slice(0,i)的值的術語是'前綴' –
是的,我做過。切片(0,i)工作時,我把它放在一邊,數組名稱顯示我說過,約翰 – marcos
的例子是最後一部分是什麼不工作,第三個 – marcos