Faça uma função que receba uma lista e exiba os elementos da última metade na frente dos elementos da primeira metade.
Passo 1
Beleza, vamos criar nossa função. Nesse caso o enunciado não especificou o nome, então podemos dar qualquer nome pra nossa função.
Já se liga que o enunciado diz “EXIBA”, e não “retorne”. Quando é pra exibir, usamos print. Quando é pra retornar, “return”. Nesse caso, sabemos que vamos fazer uma nova lista e exibi-la no final. Vamos começar fazendo a parte que a gente já sabe.
Show! Agora só precisamos pensar numa lógica que faça o que o enunciado pede.
Passo 2
Pô, a gente precisa pegar a lista da metade em diante e concatenar com a primeira metade. A primeira coisa que precisamos saber pra isso é: QUAL É A METADEEE?
Bom, a metade é ½ do tamanho da lista, e o tamanho a gente pode descobrir com a função len().
Cara, repara que eu usei “//” (divisão inteira) em vez de “/” (divisão normal). Isso porque a gente vai usar índices e não existe índice fracionário. Se o número de elementos na lista for par, não existe um número exatamente no centro. Por isso, temos que arredondar a metade usando o operador de divisão inteira.
Passo 3
Beleza, agora a gente já tem o índice da metade da lista. Vamos fazer a nossa concatenação!
E pronto! A gente uniu a lista da metade até o fim com a mesma lista do início até a metade, exatamente como pediu o enunciado.
Assim, acabamos de matar a questão. Infelizmente o enunciado não nos deu dados de teste, mas a gente pode inventar uns dados pra testar.
Depois de testar, vimos que tudo funcionou na moral! Então, vamos tirar os testes que a gente fez e finalizar a questão.