Question: // // main.cpp // PigLatin // //Pig Latin Strings // Task : Input various sentences as C-strings and perform 2 conversions on each sentence using
//
// main.cpp
// PigLatin
//
//Pig Latin Strings
// Task: Input various sentences as C-strings and perform 2 conversions on each sentence using C-string commands.
//
#include
#include
#include
#include
#include
#include
using namespace std;
// Method to reverse string
void reverseString(char* inputString)
{
int i = 0;
for(i = strlen(inputString) - 1; i >= 0; i--)
{
char internalArray[20] = "";
int index = 0;
while(inputString[i] != ' ' && i >= 0 && inputString[i] != '\0')
{
if((inputString[i] < 91 && inputString[i] >= 65) || (inputString[i] < 123 && inputString[i] >= 97))
{
internalArray[index] = toupper(inputString[i]);
index++;
}
i--;
}
internalArray[index] = '\0';
for(int k = index - 1; k >= 0; k--)
{
cout << internalArray;
cout << " ";
}
cout << endl;
}
bool isAVowelChar(char inputChar)
{ // Show ERRORRRRRRRRR
if(inputChar == 'a' || inputChar == 'A' || inputChar == 'e' || inputChar == 'E' || inputChar == 'i' || inputChar == 'I' || inputChar == 'o' || inputChar == 'O' || inputChar == 'u' || inputChar 'U')
{
return true;
}
else
{
return false;
}
}
// Metro to convert into pigLatin string
void convertToPigLatin(char *inputChar)
{ // Show ERRORRRRRRRRR
// Declare all required variables
int isStartOfStr = 0;
for(int i = 0; i < strlen(inputString); i++)
{
char internalArray[20] = "";
int index = 0;
while(inputString[i] != ' ' && i < strlen(inputString))
{
// Check for alphabet
if((inputString[i] >= 65 && inputString[i] <= 90) || (inputString[i] >= 97 && inputString[i] <=122))
{
internalArray[index] = tolower(inputString[i]);
index++;
}
i++;
}
if(isAVowelChar(internalArray[0]))
{
cout << internalArray << " -way ";
}
else
{
char internalArray2[20] = "";
internalArray3[20] = "";
int count1 = 0;
int count2 = 0;
while(!isAVowelChar(internalArray[count1]))
{
internalArray2[count1] = internalArray[count1];
count++;
}
while(count1 < index)
internalArray3[count2++] = internalArray[count1++];
if(isStartOfStr = 0)
{
internalArray3[0] = toupper(internalArray3[0];
isStartOfStr = 1;
}
cout << internalArray3 << " - " << internalArray2 << " ay ";
}
}
cout << endl;
}
}
int main()
{
// Declaration all required variables
char inputString[100] = "";
cout << " Enter your string ";
// Read input from user
cin.getline(inputString,sizeof(inputString));
// First call reverse of string
convertToPigLatin(inputString); // Show ERRORRRRRRRRR
return 0;
}
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
