2017-02-14 15 views
0

Мне нужно использовать getline(infile, aSentence) в 4 разных предложениях в файле и хранить их как строки. Затем я должен создать алгоритм, чтобы перенести первую букву каждого слова на последнюю букву, а затем добавить слово «ay».String найти, заменить и добавить алгоритм в C++

Например: «Вы можете называть меня бессмыслица» станет «ouyay aymay allcay emay laptrapcay»

Какой самый лучший способ сделать это? Я думал об использовании aSentence.find(" ") для пробелов и aSentence.append, чтобы добавить «ay». Я даже не знаю, как переместить позицию письма.

Надеюсь, это имеет смысл, спасибо.

код, который я до сих пор (неполные, но это понятие):

int characterIndex = 0; 
char firstChar = sentence.at(characterIndex); 
char currentChar = sentence.at(characterIndex); 
while (currentChar != '.'); 
{ 
    if(currentChar == ' ') 
    { 
     sentence.replace(characterIndex, "ay") 
    } 
} 
+0

На каком языке? Или вы ищете псевдокод? –

+0

если вы пробовали какой-то код, поместите его в вопрос, было бы легче получить помощь! –

+0

Извините, в C++. Вот что я до сих пор, частичный псевдокод, но это концепция. – kekstorm

ответ

0

Первая вещь, чтобы написать свой прототип функции

std::string toPigLatin(const std::string &english); 

Теперь написать модульный тест для него. Пройдите в Hello world! и возвращайся назад! или что вы должны получить.

Теперь получите его через модульный тест. Если вы передадите индексную переменную i через английский и добавьте к латиноамериканской свиньи, тогда я могу находиться в трех состояниях, вне слова (в пробеле или пунктуации), по слову или по начальной букве. У нас могут быть 1 буквенные слова, поэтому мы можем перейти от начального письма к отложенному, но не от не до слова до слова, нам нужно пройти через начальное состояние буквы. Когда вы вводите начальное состояние буквы, храните письмо во временном порядке. Когда вы переходите в состояние неактивного слова, напишите его и добавьте «ay». В противном случае выпишите символ, который вы только что прочитали. Начальное состояние отключено.