Open In App

First uppercase letter in a string (Iterative and Recursive)

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Share
Report issue
Report

Given a string find its first uppercase letter
Examples : 

Input : geeksforgeeKs
Output : K

Input  : geekS
Output : S

Method 1: linear search 
Using linear search, find the first character which is capital 
 

C++




// C++ program to find the first
// uppercase letter using linear search
#include <bits/stdc++.h>
using namespace std;
 
// Function to find string which has
// first character of each word.
char first(string str)
{
    for (int i = 0; i < str.length(); i++)
        if (isupper(str[i]))
            return str[i];
    return 0;
}
 
// Driver code
int main()
{
    string str = "geeksforGeeKS";
    char res = first(str);
    if (res == 0)
        cout << "No uppercase letter";
    else
        cout << res << "\n";
    return 0;
}


Java




// Java program to find the first
// uppercase letter using linear search
import java.io.*;
import java.util.*;
 
class GFG {
 
    // Function to find string which has
    // first character of each word.
    static char first(String str)
    {
        for (int i = 0; i < str.length(); i++)
            if (Character.isUpperCase(str.charAt(i)))
                return str.charAt(i);
        return 0;
    }
     
    // Driver program
    public static void main(String args[])
    {
        String str = "geeksforGeeKS";
        char res = first(str);
        if (res == 0)
            System.out.println("No uppercase letter");
        else
            System.out.println(res);
    }
}
 
 
// This code is contributed
// by Nikita Tiwari.


Python3




# Python3 program to find the first
# uppercase letter using linear search
 
# Function to find string which has
# first character of each word.
def first(word) :
     
    for i in range(0, len(word)) :
         
        if (word[i].isupper()) :
            return word[i]
             
    return "No uppercase letter :("
 
 
# Driver code
word = "geeksforgeeS"
print(first(word))   
     
# This code is contributed by Anshul Suresh


C#




// C# program to find the first uppercase
// letter using linear search
using System;
 
class GFG {
     
    // Function to find string which has
    // first character of each word.
    static char first(string str)
    {
        for (int i = 0; i < str.Length; i++)
            if (char.IsUpper(str[i]) )
                return str[i];
        return '0';
    }
     
    // Driver function
    public static void Main()
    {
        string str = "geeksforGeeKS";
        char res = first(str);
        if (res == '0')
            Console.WriteLine("No uppercase"
                               + " letter");
        else
            Console.WriteLine(res);
    }
}
 
// This code is contributed by Sam007


PHP




<?php
// PHP program to find the first
// uppercase letter using linear search
 
// Function to find string which has
// first character of each word.
function first($str)
{
    for ($i = 0; $i < strlen($str); $i++)
        if (ctype_upper($str[$i]))
        {
            return $str[$i];
             
        }
    return 0;
}
 
    // Driver code
    $str = "geeksforGeeKS";
    $res = first($str);
     
    if (ord($res) ==ord(0) )
        echo "No uppercase letter";
    else
        echo $res . "\n";
 
// This code is contributed by Sam007
?>


Javascript




<script>
      // JavaScript program to find the first
      // uppercase letter using linear search
 
      // Function to find string which has
      // first character of each word.
      function first(str) {
        for (var i = 0; i < str.length; i++)
          if (str[i] === str[i].toUpperCase()) return str[i];
        return 0;
      }
 
      // Driver code
 
      var str = "geeksforGeeKS";
      var res = first(str);
      if (res == 0) document.write("No uppercase letter");
      else {
        document.write(res);
        document.write("<br>");
      }
       
      // This code is contributed by rdtank.
    </script>


Output: 

G

Time Complexity : O(N)

Auxiliary Space: O(1)

Method 2 (Using recursion) 
Recursively traverse the string and if any uppercase is found return that character 

C++




// C++ program to find the
// first uppercase letter.
#include <bits/stdc++.h>
using namespace std;
 
// Function to find string which has
// first character of each word.
char first(string str, int i=0)
{
    if (str[i] == '\0')
         return 0;
    if (isupper(str[i]))
            return str[i];
    return first(str, i+1);
}
 
// Driver code
int main()
{
    string str = "geeksforGeeKS";
    char res = first(str);
    if (res == 0)
        cout << "No uppercase letter";
    else
        cout << res << "\n";
    return 0;
}


Java




// Java program to find the
// first uppercase letter.
import java.io.*;
 
class GFG {
     
    // Function to find string which has
    // first character of each word.
    static char first(String str, int i)
    {
        if(str.charAt(i)=='\0'){
            return 0;
        }
        if(Character.isUpperCase(str.charAt(i))) {
            return str.charAt(i);
        }
        try {
            return first(str, i + 1);
        }
        catch(Exception e){
            System.out.println("Exception occurs");
        }
        return 0;
    }
     
    // Driver code
    public static void main(String args[])
    {
        String str = "geeksforGeeKS";
        char res = first(str,0);
        if (res == 0)
            System.out.println("No uppercase letter");
        else
            System.out.println (res );
    }
}
 
// This code is contributed
// by Shravan Sutar(suthar826)


Python 3




def firstUpperCase(word,index):
      """"Recursively traverse from start of string to end,
    If character is upper return it.
    """
     
     
    if index==len(word):
    #if no upperCase letter found in string return "No UpperCase letter found."
        return "No UpperCase letter found."
     
    if word[index].isupper():
        return word[n]
       
       
    return firstUpperCase(word,index+1)
   
word="geeksforGeekS"
print(firstUpperCase(word,0))


C#




// C# program to find the
// first uppercase letter.
using System;
 
class GFG
{
     
    // Function to find string
    // which has first character
    // of each word.
    static char first(string str, int i)
    {
        if (str[i] == '\0')
            return '0';
        if (char.IsUpper(str[i]))
                return (str[i]);
        return first(str, i + 1);
    }
     
    // Driver code
    static public void Main ()
    {
        string str = "geeksforGeeKS";
        char res = first(str, 0);
        if (res == 0)
            Console.WriteLine("No uppercase letter");
        else
            Console.WriteLine(res );
    }
}
 
// This code is contributed by Anuj_67.


PHP




<?php
//PHP program to find the
// first uppercase letter.
 
// Function to find string
// which has first character
// of each word.
 
function first($str, $i = 0)
{
    if ($str[$i] == '\0')
        return 0;
    if (ctype_upper($str[$i]))
            return $str[$i];
    return first($str, $i+1);
}
 
// Driver code
    $str = "geeksforGeeKS";
    $res = first($str);
     
    if (ord($res) ==ord(0))
        echo "No uppercase letter";
    else
        echo $res , "\n";
 
// This code is contributed
// by m_kit
?>


Javascript




<script>
 
// Javascript program to find the
// first uppercase letter.
 
// Function to find string which has
// first character of each word.
function first(str,i=0)
{
    if (i == str.length)
         return 0;
    if (str[i] == str[i].toUpperCase())
            return str[i];
    return first(str, i+1);
}
 
// Driver code
var str = "geeksforGeeKS";
var res = first(str);
if (res == 0)
    document.write( "No uppercase letter");
else
    document.write( res + "<br>");
 
 
</script>


Output : 

G 

Time Complexity : O(N)

Auxiliary Space: O(N) for call stack

 


Last Updated : 09 Dec, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads