Faça um programa que receba do usuário um arquivo texto. Crie outro arquivo texto contendo o texto do arquivo de entrada, mas com as vogais substituídas por ‘*’.

Passo 1

O programa precisa ler um arquivo de texto, processar seu conteúdo substituindo todas as vogais por ‘*’ e salvar o resultado em outro arquivo. O conteúdo aqui envolve manipulação de arquivos (file I/O) e substituição de caracteres em strings.

Passo 2

Pedir ao usuário o nome do arquivo de entrada e do arquivo de saída. Assim o programa sabe onde ler e onde gravar o texto modificado.

Passo 3

Abrir o arquivo de entrada em modo de leitura e o arquivo de saída em modo de escrita. Tratar exceções caso o arquivo de entrada não exista ou ocorra algum erro de I/O.

Passo 4

Ler o arquivo de entrada linha a linha. Para cada linha, percorrer cada caractere e verificar se é uma vogal (a, e, i, o, u maiúsculas ou minúsculas). Se for vogal, substituir por ‘*’; caso contrário, manter o caractere.

Passo 5

Escrever a linha já processada no arquivo de saída imediatamente após a substituição. Repetir até o fim do arquivo de entrada.

Passo 6

Fechar ambos os arquivos e informar ao usuário que o arquivo de saída foi gerado com sucesso, ou exibir mensagem de erro adequada se algo falhou.

Resposta

def replace_vowels(text):
    vowels = "aeiouAEIOU"
    return "".join('*' if c in vowels else c for c in text)

def main():
    input_file = input("Digite o nome do arquivo de entrada: ")
    output_file = input("Digite o nome do arquivo de saída: ")
    try:
        with open(input_file, 'r', encoding='utf-8') as fin, \
             open(output_file, 'w', encoding='utf-8') as fout:
            for line in fin:
                new_line = replace_vowels(line)
                fout.write(new_line)
        print(f"Arquivo '{output_file}' criado com sucesso!")
    except FileNotFoundError:
        print(f"Arquivo '{input_file}' não encontrado.")
    except Exception as e:
        print("Ocorreu um erro:", e)

if __name__ == "__main__":
    main()

Exercícios relacionados