Implemente uma lista dinâmica de números positivos em que os números ímpares fiquem todos juntos no início da lista e os pares fiquem todos juntos no final da lista
e. Implemente a função LISTAR, que coloca na tela todos os elementos existentes.

Passo 1

Beleza, vamos resolver esse exercício juntos! O problema pede para a gente criar uma lista dinâmica de números positivos onde todos os números ímpares fiquem agrupados no início e os pares no final. Além disso, precisamos implementar a função LISTAR que vai exibir todos os elementos da lista. Vamos usar conceitos de estruturas de dados e listas dinâmicas para isso.

Passo 2

Primeiro, vamos entender o que é uma lista dinâmica. Diferente de uma lista estática, que tem um tamanho fixo, uma lista dinâmica pode crescer ou diminuir conforme necessário. Em muitas linguagens de programação, isso é feito usando arrays que podem redimensionar automaticamente ou usando estruturas específicas como listas ligadas.

Passo 3

Vamos pensar em como organizar os números na lista. A ideia é que, sempre que adicionarmos um número, ele seja colocado no lugar certo: ímpares no começo e pares no final. Para isso, podemos manter duas partes na nossa lista: uma para ímpares e outra para pares.

Passo 4

Para implementar isso, podemos criar duas sublistas dentro da nossa lista dinâmica principal. Uma sublista ficará responsável por armazenar os números ímpares e outra, os pares. Sempre que um número for inserido, a gente verifica se é ímpar ou par e adiciona na sublista correspondente.

Passo 5

Agora, vamos pensar na função LISTAR. Essa função vai simplesmente percorrer a lista dinâmica e imprimir cada elemento. Como já organizamos os ímpares primeiro e os pares depois, a função LISTAR mostrará os números na ordem correta.

Passo 6

Vamos traduzir isso para um pseudocódigo para ficar mais claro:
Iniciar lista_dinamica como lista vazia

Função ADICIONAR(numero):
    Se numero é ímpar:
        Inserir numero no final da sublista de ímpares
    Senão:
        Inserir numero no final da sublista de pares

Função LISTAR():
    Para cada numero na sublista de ímpares:
        Mostrar numero
    Para cada numero na sublista de pares:
        Mostrar numero

Resposta

Pronto! Com essa abordagem, criamos uma lista dinâmica onde os números ímpares ficam todos juntos no início e os pares no final. A função LISTAR exibe todos os elementos na ordem correta. Se quiser ver um exemplo em uma linguagem específica como Python, é só me avisar!

Exercícios relacionados

Elabore um programa que solicita ao usuário uma sequência de caracteres e os armazena em um vetor alocado dinamicamente. Em seguida, realize a cópia dos caracteres para um outro vetor alocado dinamicamente em que são excluídos os espaços.
Implemente um programa para manipular os dados dos usuários da biblioteca. Crie uma estrutura contendo as variáveis: a. Crie uma lista para armazenar os dados. As funcionalidades que devem ser implementadas são: criar lista, incluir usuário, excluir usuário, buscar (pelo CPF). Conta o número de alunos de determinado curso.
Faça um programa que lê três palavras do teclado e imprime as três palavras na ordem inversa.