Poner en mayúscula el primer y último carácter de cada palabra en una string

Dada la string, la tarea es poner en mayúscula el primer y último carácter de cada palabra en una string.
Ejemplos: 
 

Input: Geeks for geeks
Output: GeekS FoR GeekS

Input: Geeksforgeeks is best
Output: GeeksforgeekS IS BesT

Acercarse 
 

  • Crear una array de caracteres de la string
  • Ejecute un bucle desde la primera letra hasta la última letra.
  • Comprobar si el carácter es el principio o el final de la palabra
  • Compruebe si el carácter es una letra minúscula.
  • En caso afirmativo, escriba en mayúscula el carácter de la string.

A continuación se muestra la implementación del enfoque anterior. 
 

C++

// CPP program to capitalise the first
// and last character of each word in a string.
#include<bits/stdc++.h>
using namespace std;
 
string FirstAndLast(string str)
{
 
    // Create an equivalent string
    // of the given string
    string ch = str;
    for (int i = 0; i < ch.length(); i++)
    {
 
        // k stores index of first character
        // and i is going to store index of last
        // character.
        int k = i;
        while (i < ch.length() && ch[i] != ' ')
            i++;
 
        // Check if the character is a small letter
        // If yes, then Capitalise
        ch[k] = (char)(ch[k] >= 'a' && ch[k] <= 'z'
                        ? ((int)ch[k] - 32)
                        : (int)ch[k]);
        ch[i - 1] = (char)(ch[i - 1] >= 'a' && ch[i - 1] <= 'z'
                            ? ((int)ch[i - 1] - 32)
                            : (int)ch[i - 1]);
    }
 
    return ch;
}
 
// Driver code
int main()
{
    string str = "Geeks for Geeks";
    cout << str << "\n";
    cout << FirstAndLast(str);
}
 
// This code is contributed by ihritik

Java

// Java program to capitalise the first
// and last character of each word in a string.
 
class GFG {
    static String FirstAndLast(String str)
    {
 
        // Create an equivalent char array
        // of given string
        char[] ch = str.toCharArray();
        for (int i = 0; i < ch.length; i++) {
 
            // k stores index of first character
            // and i is going to store index of last
            // character.
            int k = i;
            while (i < ch.length && ch[i] != ' ')
                i++;
 
            // Check if the character is a small letter
            // If yes, then Capitalise
            ch[k] = (char)(ch[k] >= 'a' && ch[k] <= 'z'
                               ? ((int)ch[k] - 32)
                               : (int)ch[k]);
            ch[i - 1] = (char)(ch[i - 1] >= 'a' && ch[i - 1] <= 'z'
                                   ? ((int)ch[i - 1] - 32)
                                   : (int)ch[i - 1]);
        }
 
        return new String(ch);
    }
 
    // Driver code
    public static void main(String args[])
    {
        String str = "Geeks for Geeks";
        System.out.println(str);
        System.out.println(FirstAndLast(str));
    }
}

Python3

# Python3 program to capitalise the first
# and last character of each word in a string.
def FirstAndLast(string) :
     
    # Create an equivalent char array
    # of given string
    ch = list(string);
     
    i = 0 ;
    while i < len(ch):
 
        # k stores index of first character
        # and i is going to store index of last
        # character.
        k = i;
         
        while (i < len(ch) and ch[i] != ' ') :
            i += 1;
 
        # Check if the character is a small letter
        # If yes, then Capitalise
        if (ord(ch[k]) >= 97 and
            ord(ch[k]) <= 122 ):
            ch[k] = chr(ord(ch[k]) - 32);
        else :
            ch[k] = ch[k]
             
        if (ord(ch[i - 1]) >= 90 and
            ord(ch[i - 1]) <= 122 ):
            ch[i - 1] = chr(ord(ch[i - 1]) - 32);
        else :
            ch[i - 1] = ch[i - 1]
             
        i += 1
         
    return "" . join(ch);
     
# Driver code
if __name__ == "__main__" :
     
    string = "Geeks for Geeks";
     
    print(string);
    print(FirstAndLast(string));
     
# This code is contributed by Ryuga

C#

// C# program to remove the first
// and last character of each word in a string.
using System;
 
class GFG
{
    static String FirstAndLast(String str)
    {
 
        // Create an equivalent char array
        // of given string
        char[] ch = str.ToCharArray();
        for (int i = 0; i < ch.Length; i++)
        {
 
            // k stores index of first character
            // and i is going to store index of last
            // character.
            int k = i;
            while (i < ch.Length && ch[i] != ' ')
                i++;
 
            // Check if the character is a small letter
            // If yes, then Capitalise
            ch[k] = (char)(ch[k] >= 'a' && ch[k] <= 'z'
                            ? ((int)ch[k] - 32)
                            : (int)ch[k]);
            ch[i - 1] = (char)(ch[i - 1] >= 'a' && ch[i - 1] <= 'z'
                                ? ((int)ch[i - 1] - 32)
                                : (int)ch[i - 1]);
        }
 
        return new String(ch);
    }
 
    // Driver code
    public static void Main(String []args)
    {
        String str = "Geeks for Geeks";
        Console.WriteLine(str);
        Console.WriteLine(FirstAndLast(str));
    }
}
 
/* This code contributed by PrinciRaj1992 */

PHP

<?php
// PHP program to capitalise the first
// and last character of each word in a string.
 
function FirstAndLast($str)
{
 
    // Create an equivalent string
    // of the given string
    $ch = $str;
    for ($i = 0; $i < strlen($ch); $i++)
    {
 
        // $k stores index of first character
        // and $i is going to store index of last
        // character.
        $k = $i;
        while ($i < strlen($ch) && $ch[$i] != ' ')
            $i++;
 
        // Check if the character is a small letter
        // If yes, then Capitalise
        $ch[$k] = chr(($ch[$k] >= 'a' && $ch[$k] <= 'z')
                    ? (ord($ch[$k]) - 32) : (ord($ch[$k])));
        $ch[$i - 1] = chr(($ch[$i - 1] >= 'a' && $ch[$i - 1] <= 'z' )
                    ? (ord($ch[$i - 1]) - 32) : (ord($ch[$i - 1])));
    }
 
    return $ch;
}
 
// Driver code
 
$str = "Geeks for Geeks";
echo $str, "\n";
echo FirstAndLast($str);
 
// This code is contributed by ihritik
 
?>

Javascript

<script>
 
// JavaScript program to capitalise the first
// and last character of each word in a string.
 
function FirstAndLast(str)
{
 
    // Create an equivalent string
    // of the given string
    var ch = str.split('');
    for (var i = 0; i < ch.length; i++)
    {
 
        // k stores index of first character
        // and i is going to store index of last
        // character.
        var k = i;
        while (i < ch.length && ch[i] != ' ')
            i++;
 
        // Check if the character is a small letter
        // If yes, then Capitalise
        ch[k] = String.fromCharCode(ch[k] >= 'a' &&
        ch[k] <= 'z' ? (ch[k].charCodeAt(0) - 32)
                     : ch[k].charCodeAt(0));
        ch[i - 1] = String.fromCharCode(ch[i - 1] >= 'a'
        && ch[i - 1] <= 'z'? (ch[i - 1].charCodeAt(0) - 32)
                            : ch[i - 1].charCodeAt(0));
    }
 
    return ch.join('');
}
 
// Driver code
 
var str = "Geeks for Geeks";
document.write( str + "<br>");
document.write( FirstAndLast(str));
 
 
</script>
Producción: 

Geeks for Geeks
GeekS FoR GeekS

 

Publicación traducida automáticamente

Artículo escrito por Code_r y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *