嗨,我在为班上的Pig做拉丁语,说明先把辅音从单词的前面去掉,再放在单词的后面。接着是字母“ay”。例如,书变成了ookbay,力量变成了EngthTravel。我有困难,因为它不做第一个辅音。
// button, three, nix, eagle, and troubadour
Console.Write("Enter word you want in Pig Latin: ");
string word1 = Console.ReadLine();
string pig = "";
string vowels = "aeiouAEIOU";
string space = " ";
string extra = ""; //extra letters
int pos = 0; //position
foreach (string word in word1.Split())
{
if (pos != 0)
{
pig = pig + space;
}
else
{
pos = 1;
}
vowels = word.Substring(0,1);
extra = word.Substring(1, word.Length - 1);
pig = pig + extra + vowels + "ay";
}
Console.WriteLine(pig.ToString());
举例来说,如果我做的力量,它会出现作为加强赛,而不是像这样的例子
1条答案
按热度按时间s71maibg1#
你有很多问题。首先,你对问题的定义是:
说明第一个辅音是从单词前面去掉的
这正是你所做的。
strength
会变成trengths
如果你移动第一个辅音。你需要把你的定义改为第一个元音之前的所有辅音。另外,如果是这样的话,你会怎么做eagle
? 它变成了什么eagleay
? 你的指令没有说明如何处理前导元音。这是另一个问题
现在不要担心编写真正的代码,先编写一些伪代码来解决逻辑问题@克里斯关于寻找第一个元音的评论很好。伪代码可能类似于: