我試圖做一個隨機名稱生成,這是我想出了代碼:名發電機不工作
private void GenerateName()
{
if (GeneratedName == "")
{
GenerateConsonant();
consonantCurrent = consonant1;
GenerateVowel();
vowelCurrent = vowel1;
GenerateConsonant();
consonantCurrent = consonant2;
GenerateConsonant();
consonantCurrent = consonant3;
GenerateVowel();
vowelCurrent = vowel2;
}
GeneratedName = consonant1 + vowel1 + consonant2 + consonant3 + vowel2;
}
private void GenerateConsonant()
{
Random randomNumber = new Random();
GlobalVariables.random = randomNumber.Next(2, 22);
if (GlobalVariables.random == 1)
{
consonantCurrent = "b";
}
if (GlobalVariables.random == 2)
{
consonantCurrent = "c";
}
if (GlobalVariables.random == 3)
{
consonantCurrent = "d";
}
if (GlobalVariables.random == 4)
{
consonantCurrent = "f";
}
if (GlobalVariables.random == 5)
{
consonantCurrent = "g";
}
if (GlobalVariables.random == 6)
{
consonantCurrent = "h";
}
if (GlobalVariables.random == 7)
{
consonantCurrent = "j";
}
if (GlobalVariables.random == 8)
{
consonantCurrent = "k";
}
if (GlobalVariables.random == 9)
{
consonantCurrent = "l";
}
if (GlobalVariables.random == 10)
{
consonantCurrent = "m";
}
if (GlobalVariables.random == 11)
{
consonantCurrent = "n";
}
if (GlobalVariables.random == 12)
{
consonantCurrent = "p";
}
if (GlobalVariables.random == 13)
{
consonantCurrent = "q";
}
if (GlobalVariables.random == 14)
{
consonantCurrent = "r";
}
if (GlobalVariables.random == 15)
{
consonantCurrent = "s";
}
if (GlobalVariables.random == 16)
{
consonantCurrent = "t";
}
if (GlobalVariables.random == 17)
{
consonantCurrent = "v";
}
if (GlobalVariables.random == 18)
{
consonantCurrent = "w";
}
if (GlobalVariables.random == 19)
{
consonantCurrent = "x";
}
if (GlobalVariables.random == 20)
{
consonantCurrent = "y";
}
if (GlobalVariables.random == 21)
{
consonantCurrent = "z";
}
}
private void GenerateVowel()
{
Random randomNumber = new Random();
GlobalVariables.random = randomNumber.Next(2, 6);
if (GlobalVariables.random == 1)
{
vowelCurrent = "a";
}
if (GlobalVariables.random == 2)
{
vowelCurrent = "e";
}
if (GlobalVariables.random == 3)
{
vowelCurrent = "i";
}
if (GlobalVariables.random == 4)
{
vowelCurrent = "o";
}
if (GlobalVariables.random == 5)
{
vowelCurrent = "u";
}
}
}
}
運行它之後,我發現它給了我一個空結果... 如果有明顯的錯誤,請告訴我,因爲我遲鈍:l 或者,如果它永遠不會工作,你可以告訴我一種方法,你會這樣做,然後我會嘗試適應它到我的程序。
順便說一句,我想提出一個大戰略遊戲,可以使用它來生成字符
編輯隨機的名字:我試圖做的是每GenerateConsonant()和GenerateVowel(時間)被稱爲他們會設置 一個隨機字符到當前值。然後在設定每一個之後,它將自己設置爲某個輔音或元音。在此之後,他們會全部放在一起形成一個第一名稱...
對於初學者來說,第一條if語句中的變量賦值是向後的。 – Logarr 2014-12-04 04:27:44
你是什麼意思? – Lamprey 2014-12-04 04:28:18
'consonantCurrent = consonant1;'是向後的。你正在爲consonantCurrent分配輔音1。爲了讓GeneratedName實際上有一個值,您需要反過來。 – Logarr 2014-12-04 04:31:13