Linguagens de Programação - Atividade 13

Leia com atenção as instruções abaixo.

Valor: 2,0 pontos na 3ª Nota.

Data da Entrega Limite: 22/01/2022

Coloque a resposta na pasta atividades/atividade13 do repositório.

Questão 01 - 1,0 Ponto

Reescreva a função reverse (está no slide 10 da apresentação da aula de Tipos Compostos) usando um ponteiro de array no lugar de uma fatia. Você deve então criar um programa chamado reverse_pointer.go que defina um array de inteiros com 5 posições, imprima-o na tela, chame sua nova versão de reverse para esse array e imprima o mesmo em sua ordem reversa. Os valores que você que vai colocar no array não importam, mas para facilitar a visualização coloque 1, 2, 3, 4, 5.

Questão 02 - 1,0 Ponto

Escreva uma função in-place (que não cria cópia, atua na estrutura original na memória) para eliminar duplicatas adjacentes em uma fatia []string. Seu programa inplace_adjacent.go deve receber uma série de strings pela linha de comando e remover as duplicatas em posições vizinhas. Por exemplo:

$ ./inplace_adjacent "aaa" "aaa" "aaa" "ddd" "bbb" "ccc" "ccc" "eee" "fff" "fff"
"aaa" "ddd" "bbb" "ccc" "eee" "fff"