Pular para o conteúdo principal

Questão de Programação — Python — CESGRANRIO 2024

ProgramaçãoPython
Código
cg021415
Banca
CESGRANRIO
Órgão
CNU
Ano
2024
Nível
Superior
Cargo
Bloco 2 - Tecnologia, Dados e Informação - tarde
Um programador está desenvolvendo um programa Python que irá ler um texto e produzir um relatório contendo os substantivos presentes nesse texto e o número de vezes que cada substantivo aparece no texto. Por exemplo, o texto “Hoje é domingo de carnaval. Hoje é dia de samba.” iria produzir o seguinte resultado:Hoje 2domingo 1carnaval 1dia 1samba 1Os substantivos estão organizados de acordo com a lista inicial:[ ["Hoje", 2], ["domingo", 1], ["carnaval", 1], ["dia", 1], ["samba", 1] ]Para completar o programa, é necessário construir uma função, chamada inclui, que receba como parâmetros uma lista de palavras, como a lista acima, e a próxima palavra do texto. Caso essa palavra recebida como parâmetro já se encontre na lista, deve-se adicionar uma unidade à quantidade de palavras existentes no texto. Caso contrário, a nova palavra deverá ser inserida no final da lista com o valor da quantidade igual a 1.Por exemplo:• se a função inclui for chamada com a lista inicial e a palavra "carnaval" como parâmetros, a nova configuração da lista passará a ser:[ ["Hoje", 2], ["domingo", 1], ["carnaval", 2], ["dia", 1], ["samba", 1] ]• se a função inclui for chamada com a lista inicial e a palavra "folia" como parâmetros, a nova configuração da lista passará a ser:[ ["Hoje", 2], ["domingo", 1], ["carnaval", 1], ["dia", 1], ["samba", 1], ["folia", 1] ]Qual implementação da função inclui executa o que foi descrito?
  1. Adef incluiA(lista, subst):for elem in lista:if elem[0] == subst:elem[1]+=1lista.append([subst,1])
  2. Bdef inclui(lista, subst):for i in range(len(lista)):if lista[i][0] == subst:lista[i][1]+=1returnlista.append([subst,1])
  3. Cdef inclui(lista, subst):res=0try:res = lista.index( subst )except ValueError:lista.append( [subst,1] )lista[res][1]+=1
  4. Ddef inclui(lista, subst):try:res = lista.index( [subst] )lista[res][1]+=1except ValueError:lista.append( [subst,1] )
  5. Edef inclui(lista, subst):try:res = lista.index( subst )lista[res][1]+=1except ValueError:lista.append([subst,1])
Revelar gabarito e comentário

GabaritoB — def inclui(lista, subst): for i in range(len(lista)): if lista[i][0] == subst: lista[i][1]+=1 return lista.append([subst,1])

Link permanente: /questoes/cg021415