0
respostas

palavras que começam com uma letra específica - SOLUÇÃO

import re

clientes = {}

def validar_dados(nome, sobrenome, idade):
    if not re.match(r"^[A-Za-z\s]+$", nome):
        print("Nome inválido. Deve conter apenas letras e espaços.")
        return False
    if not re.match(r"^[A-Za-z\s]+$", sobrenome):
        print("Sobrenome inválido. Deve conter apenas letras e espaços.")
        return False
    if not re.match(r"^\d+$", idade):
        print("Idade inválida. Deve conter apenas números.")
        return False
    return True


def limpar_tela():
    import os
    os.system('cls' if os.name == 'nt' else 'clear')


def cadastrar_cliente():
    quantidade = int(input("Quantos clientes deseja cadastrar? "))
    for chave in range(quantidade):
        nome = input("Digite o nome do cliente: ")
        sobrenome = input("Digite o sobrenome do cliente: ")
        idade = input("Digite a idade do cliente: ")

        if validar_dados(nome, sobrenome, idade):
            clientes[chave] = {"nome": nome, "sobrenome": sobrenome, "idade": idade}
        else:
            print("⚠ Dados inválidos, tente novamente.")
            return  # interrompe o cadastro se os dados forem inválidos

    if clientes:
        limpar_tela()
        print("Dados dos Clientes:")
        for cliente in clientes.values():
            print("-" * 20)
            print(
                f"Nome: {cliente['nome']}\n"
                f"Sobrenome: {cliente['sobrenome']}\n"
                f"Idade: {cliente['idade']}"
            )


def buscar_palavras_por_letra():
    texto = input("\nDigite o texto ou títulos de livros: ")
    letra = input("Digite a letra inicial que deseja buscar: ")

    # Expressão regular para capturar palavras que começam com a letra escolhida
    padrao = rf"\b{letra}[a-zA-ZÀ-ÿ]*"
    palavras = re.findall(padrao, texto, flags=re.IGNORECASE)

    if palavras:
        print(f"\nPalavras que começam com '{letra}':")
        for p in palavras:
            print("-", p)
    else:
        print(f"\nNenhuma palavra encontrada iniciando com '{letra}'.")


# Execução
cadastrar_cliente()
buscar_palavras_por_letra()