Pergunta/Tarefa:
Considere o seguinte trecho de código:
# declara, constrói e inicializa um array de 10 inteiros
valores = [6, 3, 90, 1, 54, 7, 12, 32, 9, 4]
int temp;
Escreva um programa Python que inverta a ordem dos elementos do vetor valores usando apenas a variável temp, ou seja, não é permitido usar nenhum método disponível em bibliotecas Python. Sua saída deverá ser algo como:
Ordem inicial:
6 3 90 1 54 7 12 32 9 4
Ordem invertida:
4 9 32 12 7 54 1 90 3 6
Resposta/Solução:
Veja a resolução comentada deste exercício usando Python:
# método principal
def main():
# declara, constrói e inicializa um array de 10 inteiros
valores = [6, 3, 90, 1, 54, 7, 12, 32, 9, 4]
# vamos mostar a ordem inicial dos elementos no vetor
print("Ordem inicial:\n")
for i in range(0, len(valores)):
print(valores[i], end=" ")
# vamos inverter a ordem dos elementos no array
inicio = 0
fim = len(valores) - 1
while inicio < fim:
temp = valores[inicio]
valores[inicio] = valores[fim]
valores[fim] = temp
# incrementa e decrementa as variáveis de controle
inicio = inicio + 1
fim = fim - 1
# vamos mostar a ordem invertida dos elementos do vetor
print("\n\nOrdem invertida:\n")
for i in range(0, len(valores)):
print(valores[i], end=" ")
if __name__== "__main__":
main()
|