sábado, 14 de septiembre de 2024

■ C# 031 ► Convertir la primera letra de cada palabra en mayúscula

Ejercicio 031: Tomar un String con una frase y convertir la primer letra de cada palabra en mayúscula.

Hay muchas formas de hacerlo, en este caso trataremos al String como un arreglo de caracteres, es decir, se recorrerá y se irá detectando el inicio de cada palabra para convertirla a mayúscula.

Entrada:
String frase = "al mal tiempo buena cara"

Salida:
Imprimir "Al Mal Tiempo Buena Cara"

using System;
namespace CSharp_031 {
    class Program {
        static void Main(string[] args) {
            string frase = "al mal tiempo buena cara";

            for (int i=0; i < frase.Length; i++) {
                if (i == 0 || frase[i-1] == ' ') {
                    Console.Write(Char.ToUpper(frase[i]));
                } else {
                    Console.Write(frase[i]);
                }
            }

            Console.ReadKey();
        }
    }
}


Explicación:

Se recorre el string (frase) con un for como si de un arreglo se tratara, en la condición se evalúa si es la primer posición del string o si la posición anterior es un espacio en blanco, si se cumple una u otra convertimos el caracter actual a mayúscula, si no se cumple ninguna solo se muestra el caracter tal cual.

Para convertir el caracter en mayúscula se usa el método "ToUpper" de la clase "Char".

No hay comentarios:

Publicar un comentario