05-atividade interativa PDF

Title 05-atividade interativa
Course Programacao De Computadores
Institution Universidade Federal de Minas Gerais
Pages 4
File Size 58.7 KB
File Type PDF
Total Downloads 71
Total Views 139

Summary

Atividade prática 5 de programação em python...


Description

05-atividade_interativa April 17, 2019

Introdução à Programação de Computadores Aula Interativa #5 Professores: Jefersson dos Santos - [email protected] Camila Laranjeira - [email protected] Monitores: Jéssica Ferreira Soares - [email protected] Matheus Barros Pereira - [email protected] Instruções Fique atento ao tempo limite para o envio da atividade. Não será possível enviar o arquivo após o término do período. Não se esqueça dos parâmetros das funções! Códigos que funcionarem sem o parâmetro por estarem utilizando variáveis externas não serão considerados corretos. O retorno das funções deve ser do mesmo tipo proposto no exercício. Caso a saída seja um inteiro, uma string com o valor do número não será aceita, por exemplo. As exceções serão explícitas de acordo com a necessidade.

0.1

1. Introdução

De acordo com as regras da língua portuguesa, antes de ’P’ ou ’B’ devemos usar a letra ’M’. Em palavras com outras consoantes usamos a letra ’N’. Você deverá completar as tarefas abaixo, que identifica quantas vezes essas regras são ignoradas em um texto, para corrigir o texto fornecido como entrada de um programa.

0.2

Tarefa 1 - Identificando vogais

A função implementada abaixo deve receber uma letra como entrada e retornar True se for vogal ou False, caso contrário. A função deve retornar None caso o caracter não seja uma letra (símbolos, espaços, etc). A assinatura da função deve ser: In [53]: # Tá pronto, você só precisa entender o que foi feito! \o/ #Função que verifica se uma letra é vogal (True), consoante (False) ou outro símbol def isVogal(letra): letra = letra.lower() if letra in "aeiou": return True elif letra.isalpha(): 1

return False else: return None # TESTE SUA FUNÇÃO AQUI # NÃO SE ESQUEÇA DE COMENTAR OU REMOVER ESSAS LINHAS ANTES DE SUBMETER O CÓDIGO PARA #l = input() #print(isVogal(l))

0.3

Tarefa 2 - ’N’ antes de ’P’ e ’B’

A função implementada abaixo deve receber um texto (string) como entrada, identificar e corrigir as ocorrências de ’N’ antes de ’P’e ’B’. O retorno da função deve ser o texto corrigido. A assinatura da função deve ser: In [54]: # Também está pronto! Teste a função para entender o que foi feito! :-) # Função que corrige ocorrências de 'N'antes de 'P' e 'B. def troca_n_antes(texto): novo_texto = "" i = 0 tamanho = len(texto) for letra in texto: if(letra == 'n' and i < tamanho-1): if(texto[i+1] == 'p' or texto[i+1] == 'b'): novo_texto += 'm' else: novo_texto += letra else: #print (i,tamanho,letra) novo_texto += letra i+=1 return novo_texto # TESTE SUA FUNÇÃO AQUI. NÃO SE ESQUEÇA DE COMENTAR OU REMOVER ESSAS LINHAS ANTES DE #texto = "também pondera ambar embaçado" #texto = "tanbém pondera anbar enbaçado" #print (texto) #print (troca_n_antes(texto))

2

0.4

Tarefa 3 - ’M’ antes de consoantes diferentes de ’P’ e ’B’

A função implementada abaixo deve receber um texto (string) como entrada, identificar e corrigir as ocorrências de ’M’ antes de consoantes diferentes de ’P’e ’B’. O retorno da função deve ser o texto corrigido. A assinatura da função deve ser: In [55]: # Agora é sua vez! :-) # Sugestão: utilize a função isVogal(letra) implementada na Tarefa 1 # Função que corrige ocorrências de 'M' antes de consoantes diferentes de 'P' e 'B. def troca_m_antes(texto): novo_texto = "" i = 0 tamanho = len(texto) for letra in texto: if(letra == 'm' and i < tamanho-1): if(texto[i+1] != 'p' and texto[i+1] != 'b'): vogal = isVogal(texto[i+1]) if(vogal == True or vogal == None): novo_texto += letra else: novo_texto += 'n' else: novo_texto += letra else: #print (i,tamanho,letra) novo_texto += letra i+=1 return novo_texto # TESTE SUA FUNÇÃO AQUI. NÃO SE ESQUEÇA DE COMENTAR OU REMOVER ESSAS LINHAS ANTES DE #texto = "também pondera ambar embaçado" #texto = "tanbém pondera anbar enbaçado" #print (texto) #print (troca_m_antes(texto))

3

0.5

Tarefa 4 - Remove espaços extras

A função implementada abaixo deve receber um texto (string) como entrada e remover os espaços extra entre as palavras do texto. Dica: você pode utilizar a função str.strip() para remover espaços do início e fim do texto. A assinatura da função deve ser: In [56]: # Função que remove espaços desnecessários def remove_espacos(texto): novo_texto = "" # Flag que indica a presença de espaços contíguos flag = False for letra in texto: if (letra == ' '): if(not flag): novo_texto += letra flag = True else: novo_texto += letra flag = False return novo_texto.strip() # TESTE SUA FUNÇÃO AQUI. NÃO SE ESQUEÇA DE COMENTAR OU REMOVER ESSAS LINHAS ANTES DE #print(remove_espacos(" também pondera ambar embaçado "))

0.6

Tarefa 5 - Programa principal

Utilize as funções implementadas nas Tarefas 2 e 3 para implementar um programa que leia um texto do usuário e imprima na tela o texto corrigido com relação ao uso de ’M’ e ’N’ antes de ’P’ e ’B’. Para padronizar, o texto resultante deve estar em letras minúsculas. In [72]: # Implemente sua solução aqui texto = input() print (troca_n_antes(troca_m_antes(remove_espacos(texto.lower())))) o fumcionário também pomdera limpar o ambiemte embaçado. o funcionário também pondera limpar o ambiente embaçado. In [ ]: In [ ]: 4...


Similar Free PDFs