How to create half of the string in uppercase and the other half in lowercase?
Last Updated :
29 Jan, 2024
The first thing that we have to keep in my mind while solving this kind of problem is that the strings are immutable i.e,
If I am taking the following string
var string1 = "geeksforgeeks";
string1[0] = "G";
console.log(string1);
As strings are immutable, so we cannot change the character of the string, so the output of the above code will be the following.
Output:
geeksforgeeks
Approach:
There are several ways to solve this problem. Some of them are as follows.
- Splitting the string into 2 different parts and changing the first part to the UPPERCASE and concatenating the new strings to get the output.
- Create an empty string and add each character of the string to it using FOR loop.
- Using the slicing property of strings to get the output.
Method 1: This method is implemented using 2 new variables.
- Add the string into the variable.
- Store the length of the string into a variable using string.length function.
- Create two empty strings which are used in the future to store the newly created strings.
- Use of for loops to traverse in the string.
- Convert the first string to the upper case using toUpperCase().
- Concatenate both of the strings to get the output.
C++
#include <iostream>
using namespace std;
int main() {
string str = "geeksforgeeks",ans;
int len = str.length();
for(int i = 0;i<len;i++){
if(i<=len/2){
char a = toupper(str[i]);
ans.push_back(a);
}else
ans.push_back(str[i]);
}
cout<<ans;
return 0;
}
// This code is co ntributed by rohitsingh07052
Java
public class GFG {
public static void main(String[] args) {
// Input string
String str = "geeksforgeeks";
// StringBuilder to store the result
StringBuilder ans = new StringBuilder();
// Get the length of the input string
int len = str.length();
// Loop through each character in the input string
for (int i = 0; i < len; i++) {
// Check if the current character is in the first half of the string
if (i <= len / 2) {
// Convert the character to uppercase and append it to the result
char a = Character.toUpperCase(str.charAt(i));
ans.append(a);
} else {
// If the character is in the second half, just append it as is
ans.append(str.charAt(i));
}
}
// Print the final result
System.out.println(ans);
}
}
Python3
import math
string1 = 'geeksforgeeks'
string1_len = len(string1)
part_a = ''
part_b = ''
for i in range(int(math.ceil(string1_len // 2 + 1))):
part_a += string1[i]
for i in range(int(math.ceil(string1_len // 2)) + 1,
string1_len):
part_b += string1[i]
new_part_a = part_a.upper()
changed_string = new_part_a + part_b
print(changed_string)
# This code is contributed by ukasp
C#
using System;
public class GFG
{
public static void Main(string[] args)
{
// Input string
string str = "geeksforgeeks";
// String builder to store the result
System.Text.StringBuilder ans = new System.Text.StringBuilder();
// Get the length of the input string
int len = str.Length;
// Loop through each character in the input string
for (int i = 0; i < len; i++)
{
// Check if the current character is in the first half of the string
if (i <= len / 2)
{
// Convert the character to uppercase and append it to the result
char a = char.ToUpper(str[i]);
ans.Append(a);
}
else
{
// If the character is in the second half, just append it as is
ans.Append(str[i]);
}
}
// Print the final result
Console.WriteLine(ans);
}
}
JavaScript
<script>
var string1 = 'geeksforgeeks';
var string1_len = string1.length;
var part_a = '';
var part_b = '';
for(var i=0 ; i<Math.ceil(string1_len/2) ; i++)
{
part_a+=string1[i];
}
for(var i=Math.ceil(string1_len/2) ; i<string1_len ; i++)
{
part_b+=string1[i];
}
var new_part_a = part_a.toUpperCase();
var changed_string = new_part_a + part_b;
console.log(changed_string);
</script>
Time Complexity: O(N)
Auxiliary Space: O(1)
Method 2: This method is implemented using a single new variable.
- Add the string into the variable.
- Store the length of the string into a variable using string.length function.
- Create an empty string that is used in the future to store the newly created string.
- Use of for loops to traverse the string.
- Log the final string to get the output.
C++
#include <iostream>
using namespace std;
string convertFun(string& s1, int n)
{
string ans = "";
// Running loop on first half and making it
// upper case
for (int i = 0; i < n / 2; i++) {
ans += toupper(s1[i]);
}
// Running loop on secone half
for (int i = n / 2; i < n; i++) {
ans += s1[i];
}
return ans;
}
// Driver code
int main()
{
string s1 = "geeksforgeeks";
// Finding length of string
int n = s1.size();
cout << convertFun(s1, n);
return 0;
}
// This code is added by Arpit Jain
Java
public class StringConversion {
// Function to convert the first half of the string to
// uppercase
static String convertFun(String s1, int n)
{
StringBuilder ans = new StringBuilder();
// Running loop on the first half and making it
// uppercase
for (int i = 0; i < n / 2; i++) {
ans.append(Character.toUpperCase(s1.charAt(i)));
}
// Running loop on the second half
for (int i = n / 2; i < n; i++) {
ans.append(s1.charAt(i));
}
return ans.toString();
}
// Driver code
public static void main(String[] args)
{
String s1 = "geeksforgeeks";
// Finding the length of the string
int n = s1.length();
System.out.println(convertFun(s1, n));
}
}
Python3
import math
string1 = 'gfg';
string1_len = len(string1)
changed_string = ''
for i in range(math.ceil(string1_len/2)):
changed_string += string1[i].upper();
for i in range(math.ceil(string1_len/2), string1_len):
changed_string += string1[i]
print(changed_string)
# This code is contributed by avanitrachhadiya2155
C#
using System;
class Program
{
// Function to convert the first half of the string to uppercase
static string ConvertFun(string s1, int n)
{
string ans = "";
// Running loop on the first half and making it upper case
for (int i = 0; i < n / 2; i++)
{
ans += char.ToUpper(s1[i]);
}
// Running loop on the second half
for (int i = n / 2; i < n; i++)
{
ans += s1[i];
}
return ans;
}
// Driver code
static void Main()
{
string s1 = "geeksforgeeks";
// Finding the length of the string
int n = s1.Length;
Console.WriteLine(ConvertFun(s1, n));
// This code is added by Arpit Jain
}
}
// This code is contributed by shivamgupta310570
JavaScript
<script>
var string1 = 'gfg';
var string1_len = string1.length;
var changed_string = '';
for(var i=0 ; i<Math.ceil(string1_len/2) ; i++)
{
changed_string+=string1[i].toUpperCase();
}
for(var i=Math.ceil(string1_len/2) ; i<string1_len ; i++)
{
changed_string+=string1[i];
}
console.log(changed_string);
</script>
Time Complexity: O(N)
Auxiliary Space: O(1)
Method 3: This method is implemented using the JavaScript Slice property.
- Add the string into the variable.
- Store the length of the string into a variable using string.length function.
- Store the ceil value of half of the length of the string to the new variable.
- Create 2 empty strings which are used in the future to store the newly created strings.
- Add string to the variables using string slicing property.
- Convert the first string to the upper case using toUpperCase().
- Concatenate both of the strings to get the output.
C++
#include <cmath>
#include <iostream>
int main()
{
// Given string
std::string string1 = "geeks for geeks";
// Calculate the length of the string
int string1Len = string1.length();
// Calculate the index to split the string into two
// halves
int halfString
= static_cast<int>(std::ceil(string1Len / 2.0));
// Declare variables to store the two parts of the
// string
std::string partA;
std::string partB;
// Extract the first half of the string
partA = string1.substr(0, halfString);
// Convert the first half to uppercase
for (char& ch : partA) {
ch = std::toupper(ch);
}
// Extract the second half of the string
partB = string1.substr(halfString, string1Len);
// Concatenate the modified first half and the second
// half
std::string changedString = partA + partB;
// Print the modified string
std::cout << changedString << std::endl;
return 0;
}
Java
public class Main {
public static void main(String[] args) {
// Given string
String string1 = "geeks for geeks";
// Calculate the length of the string
int string1Len = string1.length();
// Calculate the index to split the string into two halves
int halfString = (int) Math.ceil(string1Len / 2.0);
// Declare variables to store the two parts of the string
String partA;
String partB;
// Extract the first half of the string
partA = string1.substring(0, halfString);
// Convert the first half to uppercase
String newPartA = partA.toUpperCase();
// Extract the second half of the string
partB = string1.substring(halfString, string1Len);
// Concatenate the modified first half and the second half
String changedString = newPartA + partB;
// Print the modified string
System.out.println(changedString);
}
}
Python3
import math
string1 = 'geeksforgeeks'
string1_len = len(string1)
half_string = math.ceil(string1_len/2)
part_a = ''
part_b = ''
part_a = string1[:half_string]
new_part_a = part_a.upper()
part_b = string1[half_string:string1_len]
changed_string = new_part_a+part_b
print(changed_string)
# This code is contributed by rag2127
C#
using System;
class Program
{
static void Main()
{
// Given string
string string1 = "geeks for geeks";
// Calculate the length of the string
int string1Len = string1.Length;
// Calculate the index to split the string into two halves
int halfString = (int)Math.Ceiling(string1Len / 2.0);
// Extract the first half of the string
string partA = string1.Substring(0, halfString);
// Convert the first half to uppercase
partA = partA.ToUpper();
// Extract the second half of the string
string partB = string1.Substring(halfString, string1Len - halfString);
// Concatenate the modified first half and the second half
string changedString = partA + partB;
// Print the modified string
Console.WriteLine(changedString);
}
}
JavaScript
<script>
var string1 = 'geeks for geeks';
var string1_len = string1.length;
var half_string = Math.ceil(string1_len/2);
var part_a;
var part_b;
part_a = string1.slice(0,half_string);
var new_part_a = part_a.toUpperCase();
part_b = string1.slice(half_string,string1_len);
var changed_string = new_part_a+part_b;
console.log(changed_string);
</script>
Time Complexity: O(N)
Auxiliary Space: O(N)
In these ways, you can solve these kinds of problems.
Similar Reads
How To Change Uppercase And Lowercase Text In Google Docs
Google Docs is a free online document editor provided by Google. Google Docs makes it easier to create a document for personal and professional uses with a variety of features. Some of the features in Google Docs are customizing font styles, font size, text alignment, and inserting media such as ima
4 min read
Check if lowercase and uppercase characters are in same order
Given string str containing only lower and uppercase alphabets. The task is to check if both lowercase characters and uppercase characters follow the same order respectively. Note: If a character occurs more than once in lowercase then the occurrence of the same character in the uppercase should be
4 min read
How to Convert a String to Lower or Upper Case in Ruby?
In this article, we will discuss how to convert a string to lower or upper case in Ruby. We can convert a string to lower or upper case using built-in methods provided in the Ruby language. Table of Content Using DowncaseUsing UpcaseUsing CapitalizeUsing DowncaseThe downcase method is used to conver
2 min read
How to convert lowercase string to uppercase using PHP ?
A string is a storage object in PHP comprising characters, numbers or special symbols. Strings in PHP are case-sensitive. The interconversion between lower and upper case can be easily done using various in-built methods in PHP.Table of ContentUsing chr() method Using strtoupper() method Using mb_co
4 min read
How to convert uppercase string to lowercase using PHP ?
Converting an uppercase string to lowercase means changing all capital letters in the string to their corresponding small letters. This is typically done using programming functions or methods to ensure uniformity in text formatting and comparison.Below we have some common approaches Table of Conten
2 min read
Conversion of whole String to uppercase or lowercase using STL in C++
Given a string, convert the whole string to uppercase or lowercase using STL in C++. Examples: For uppercase conversionInput: s = "String"Output: s = "STRING" For lowercase conversionInput: s = "String"Output: s = "string" Functions used : transform : Performs a transformation on given array/string.
1 min read
Check string for all uppercase-lowercase or first uppercase and rest lowercase characters
Given a string S, the task is to check if all the characters in S are in lowercase, or all the characters are in uppercase or only the first character is in uppercase, and the remaining characters are in lowercase. Print "YES" if any of the condition gets satisfied else print "NO". Examples: Input:
6 min read
How to convert a normal string to a uppercase string using filter in VueJS ?
Filters are a functionality provided by Vue components that let you apply formatting and transformations to any part of your template dynamic data. The filter property of the component is an object. A single filter is a function that accepts a value and returns another value. The returned value is t
2 min read
Remove the first and last character of each word in a string
Given the string the task is to remove the first and last character of each word in a string.Examples: Input: Geeks for geeksOutput: eek o eek Input: Geeksforgeeks is bestOutput: eeksforgeek es Approach : Split the String based on the spaceRun a loop from the first letter to the last letter.Check if
4 min read
How To Convert LowerCase Values To UpperCase In Input Field Using ReactJS?
To convert the input string from lowercase to uppercase inside an input field using React, we can use the toUpperCase() method. This method easily converts any input string to uppercase. In this article weâll be using the onMouseEnter event listener to trigger the toUpperCase() method when the mouse
2 min read