C++ String Exercises: Insert white spaces between lower and uppercase Letters
Write a C++ program to insert a space when a lower character follows an upper character in a given string.
Sample Data:
(“TheQuickBrownFox”) -> "The Quick Brown Fox."
(“redgreenwhite”) -> "redgreenwhite"
Sample Solution-1:
C++ Code:
#include <bits/stdc++.h> // Includes all standard libraries
using namespace std; // Using the standard namespace
// Function to insert white spaces between lower and uppercase letters in the input string
string test(string text) {
string new_str = ""; // Initialize an empty string to store the modified string
// Iterate through the characters in the string (except the last character)
for(int i = 0; i < (text.length() - 1); i++) {
new_str += text[i]; // Append the current character to the new string
// Check if the next character is uppercase
if(isupper(text[i + 1])) {
new_str += " "; // If the next character is uppercase, insert a space in the new string
}
}
new_str += text.back(); // Append the last character of the input string to the new string
return new_str; // Return the modified string
}
int main() {
string text = "TheQuickBrownFox."; // Define an input string
//string text = "C++String exercises";
//string text = "redgreenwhite";
cout << "Original String:\n";
cout << text; // Output the original string
cout << "\n\nInsert white spaces between lower and uppercase Letters in the said string:\n";
cout << test(text) << endl; // Output the modified string with spaces inserted
}
Sample Output:
Original String: TheQuickBrownFox. Insert white spaces between lower and uppercase Letters in the said string: The Quick Brown Fox.
Flowchart:
Sample Solution-2:
C++ Code:
#include <bits/stdc++.h> // Includes all standard libraries
using namespace std; // Using the standard namespace
// Function to insert white spaces between lowercase and uppercase letters in the input string
string test(string text) {
int n = 0; // Initialize a counter variable
// Loop through the string to find lowercase followed by uppercase letters
while (n + 1 < text.length()) {
// Check if the current character is lowercase and the next character is uppercase
if (islower(text[n]) && isupper(text[n + 1])) {
// Insert a space between the lowercase and uppercase letters in the string
text = text.substr(0, n + 1) + " " + text.substr(n + 1);
n++; // Increment the counter to skip the inserted space
}
n++; // Move to the next character in the string
}
return text; // Return the modified string
}
int main() {
string text = "TheQuickBrownFox."; // Define an input string
//string text = "C++String exercises";
//string text = "redgreenwhite";
cout << "Original String:\n";
cout << text; // Output the original string
cout << "\n\nInsert white spaces between lower and uppercase Letters in the said string:\n";
cout << test(text) << endl; // Output the modified string with spaces inserted
}
Sample Output:
Original String: TheQuickBrownFox. Insert white spaces between lower and uppercase Letters in the said string: The Quick Brown Fox.
Flowchart:
C++ Code Editor:
Contribute your code and comments through Disqus.
Previous C++ Exercise: Check a string is a title cased string or not.
Next C++ Exercise: Extract the first n number of vowels from a string.What is the difficulty level of this exercise?
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics