gOOGLE cASE of a given sentence
Given a sentence, the task is to rewrite in Google Case. It is a style of writing where we replace all lower case letters into upper case letters leaving the initial of all the words.
Examples :
Input : gEEks fOr GeeKs
Output : gEEKS fOR gEEKS
Input : I got intern at geeksforgeeks
Output : i gOT iNTERN aT gEEKSFORGEEKS
A simple solution is to convert the whole string into an upper letter and then traverse the given string while traversing we replace the initial of all words with small.
Implementation:
C++
#include <bits/stdc++.h>
using namespace std;
string convert(string str)
{
string w = "" , z = "" ;
transform(str.begin(), str.end(),
str.begin(), :: toupper );
str += " " ;
for ( int i = 0; i < str.length(); i++)
{
char ch = str[i];
if (ch != ' ' )
{
w = w + ch;
}
else
{
z = z + char ( tolower (w[0])) +
w.substr(1) + " " ;
w = "" ;
}
}
return z;
}
int main()
{
string str = "I got intern at geeksforgeeks" ;
cout << convert(str) << endl;
return 0;
}
|
Java
class GFG
{
static String convert(String str)
{
String w = "" , z = "" ;
str = str.toUpperCase() + " " ;
for ( int i = 0 ; i < str.length(); i++)
{
char ch = str.charAt(i);
if (ch != ' ' )
w = w + ch;
else {
z = z + (Character.toLowerCase(w.charAt( 0 ))) +
w.substring( 1 ) + " " ;
w = "" ;
}
}
return z;
}
public static void main(String[] args)
{
String str = "I got intern at geeksforgeeks" ;
System.out.println(convert(str));
}
}
|
Python3
def convert( str ):
w = ""
z = "";
str = str .upper() + " " ;
for i in range ( len ( str )):
ch = str [i];
if (ch ! = ' ' ):
w = w + ch;
else :
z = (z + (w[ 0 ]).lower() +
w[ 1 : len (w)] + " " );
w = "";
return z;
if __name__ = = '__main__' :
str = "I got intern at geeksforgeeks" ;
print (convert( str ));
|
C#
using System;
class GFG
{
static string convert( string str)
{
string w = "" , z = "" ;
str = str.ToUpper() + " " ;
for ( int i = 0;
i < str.Length; i++)
{
char ch = str[i];
if (ch != ' ' )
w = w + ch;
else
{
z = z + (Char.ToLower(w[0])) +
w.Substring(1) + " " ;
w = "" ;
}
}
return z;
}
static void Main()
{
string str = "I got intern at geeksforgeeks" ;
Console.WriteLine(convert(str));
}
}
|
PHP
<?php
function convert( $str )
{
$w = "" ; $z = "" ;
$str = strtoupper ( $str ) . " " ;
for ( $i = 0;
$i < strlen ( $str ); $i ++)
{
$ch = $str [ $i ];
if ( $ch != ' ' )
$w = $w . $ch ;
else
{
$z = $z . strtolower ( $w [0]) .
substr ( $w , 1) . " " ;
$w = "" ;
}
}
return $z ;
}
$str = "I got intern at geeksforgeeks" ;
echo (convert( $str ));
?>
|
Javascript
<script>
function convert( str)
{
var w = "" , z = "" ;
str = str.toUpperCase() + " " ;
for (i = 0; i < str.length; i++) {
var ch = str[i];
if (ch != ' ' )
w = w + ch;
else {
z = z + (w[0].toLowerCase()) + w.substring(1) + " " ;
w = "" ;
}
}
return z;
}
var str = "I got intern at geeksforgeeks" ;
document.write(convert(str));
</script>
|
Output
i gOT iNTERN aT gEEKSFORGEEKS
Time Complexity: O(n)
Auxiliary Space: O(n)
The above solution requires two traversals of string. An efficient solution is to do in a single traversal. The idea is to keep track of spaces. After every space, print character to lower, else print in upper.
Implementation:
C++
#include <bits/stdc++.h>
using namespace std;
string convert(string s)
{
int n = s.length();
s[0] = tolower (s[0]);
for ( int i = 1; i < n; i++)
{
if (s[i] == ' ' && i < n)
{
s[i + 1] = tolower (s[i + 1]);
i++;
}
else
s[i] = toupper (s[i]);
}
return s;
}
int main()
{
string str = "I get intern at geeksforgeeks" ;
cout << convert(str);
return 0;
}
|
Java
import java.io.*;
class GFG
{
static String convert(String s)
{
int n = s.length();
String s1 = "" ;
s1 = s1 + Character.toLowerCase(s.charAt( 0 ));
for ( int i = 1 ; i < n; i++)
{
if (s.charAt(i) == ' ' && i < n)
{
s1 = s1 + " " + Character.toLowerCase
(s.charAt(i + 1 ));
i++;
}
else
s1= s1 + Character.toUpperCase(s.charAt(i));
}
return s1;
}
public static void main (String[] args)
{
String str = "I get intern at geeksforgeeks" ;
System.out.println(convert(str));
}
}
|
Python3
import math
def convert( s):
n = len (s)
s1 = ""
s1 = s1 + s[ 0 ].lower()
i = 1
while i < n:
if (s[i] = = ' ' and i < = n):
s1 = s1 + " " + (s[i + 1 ]).lower()
i = i + 1
else :
s1 = s1 + (s[i]).upper()
i = i + 1
return s1
str = "I get intern at geeksforgeeks"
print (convert( str ))
|
C#
using System;
class GFG
{
static String convert(String s)
{
int n = s.Length;
String s1 = "" ;
s1 = s1 + Char.ToLower(s[0]);
for ( int i = 1; i < n; i++)
{
if (s[i] == ' ' && i < n)
{
s1 = s1 + " " + Char.ToLower
(s[i + 1]);
i++;
}
else
s1= s1 + Char.ToUpper(s[i]);
}
return s1;
}
public static void Main ()
{
String str = "I get intern at geeksforgeeks" ;
Console.Write(convert(str));
}
}
|
PHP
<?php
function convert( $s )
{
$n = strlen ( $s );
$s [0] = strtolower ( $s [0]);
for ( $i = 1; $i < $n ; $i ++)
{
if ( $s [ $i ] == ' ' && $i < $n )
{
$s [ $i + 1] = strtolower ( $s [ $i + 1]);
$i ++;
}
else
$s [ $i ] = strtoupper ( $s [ $i ]);
}
return $s ;
}
$str = "I get intern at geeksforgeeks" ;
echo (convert( $str ));
?>
|
Javascript
<script>
function convert( s) {
var n = s.length;
var s1 = "" ;
s1 = s1 + s.charAt(0).toLowerCase();
for (i = 1; i < n; i++) {
if (s.charAt(i) == ' ' && i < n) {
s1 = s1 + " " + s.charAt(i+1).toLowerCase();
i++;
}
else
s1 = s1 + s.charAt(i).toUpperCase();
}
return s1;
}
var str = "I get intern at geeksforgeeks" ;
document.write(convert(str));
</script>
|
Output
i gET iNTERN aT gEEKSFORGEEKS
Time Complexity: O(n)
Auxiliary Space: O(1)
Last Updated :
20 Feb, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...