Exercícios Resolvidos de Funções

Ver Teoria

Enunciado

Faça uma função que receba uma lista de números armazenados de forma crescente, e dois valores ( limite inferior e limite superior), e exiba a sublista cujos elementos são maiores ou iguais ao limite inferior e menores ou iguais ao limite superior.

Exemplo:

lista inicial=[12,14,15,16,18,20,24,26,28,32,34,38]

limite inferior=13

limite superior = 26

lista exibida: [14,15,16,18,20,24,26]

Passo 1

Fala aí! É muito bom quando o enunciado fornece dados de teste! Hahah primeiramente, vamos escrever nossos dados de teste no nosso programa.

Agora, precisamos escrever uma função que receba esses dados e exiba [14,15,16,18,20,24,26]. Beleza, vamos lá! Pra criar uma função, usamos a palavra-chave def, damos um nome pra nossa função e depois os parâmetros, entre parênteses.

Passo 2

Pra isso, vamos criar uma nova lista e adicionar nela os elementos que satisfazem a condição.

Aqui a gente criou uma outra lista com nome de sublista, e fizemos o cabeçalho do nosso loop. Esse loop vai percorrer cada item da lista que a gente recebeu. No fim, precisamos exibir a lista resultante, então eu já até coloquei o print(sublista) ali.

Passo 3

Pra gente checar se o item tá entre os limites menor e maior, recebido como parâmetro, vamos usar um if.

Se liga que a gente usou “maior ou igual” e “menor ou igual”. Isso é porque no enunciado a resultante incluiu o 26. Se liga que se a gente quisesse todos os elementos menores, o 26 não viria junto. Esse dado foi uma dica que o enuncado deu. Agora, vamos escrever o código que acrescenta itens na sublista.

Pronto! Nessa função, será exibida a lista dentro dos limites recebidos como parâmetro. Pra gente testar, vamos chamar a função com os parâmetros de teste no fim do programa.

Viu?! Quando executar, o resultado vai ser igualzinho ao do professor. Mas se liga que o enunciado pediu só a função, não pediu os dados de teste e nem o teste. Por isso, vamos deixar no código só a função.

Pronto! Agora sim a gente concluiu o exercício! Até mais, cara!

Resposta