Muitas vezes o uso de encadeamento simples acarreta a necessidade de incluir um comando de repetição (laço) para fazer um ponteiro (ou indexador) percorrer a estrutura a partir do início até ele se posicionar no penúltimo elemento da estrutura, demandado possivelmente por uma inserção e/ou uma deleção. No exemplo em questão, pela forma de implementação escolhida, podemos afirmar que isso ocorre sempre que se fizer uma operação:
b) deleção na fila de dados.
b) deleção na fila de dados.
Passo 1
Vamos resumir o que a questão está pedindo. Ela fala sobre o uso de encadeamento simples em estruturas de dados, que muitas vezes exige o uso de um laço de repetição para percorrer a estrutura até o penúltimo elemento quando precisamos fazer uma inserção ou deleção. A questão nos apresenta uma afirmação e nos pede para identificar quando isso ocorre, sendo a opção b) deleção na fila de dados.
Passo 2
Primeiro, vamos entender o que é encadeamento simples. É uma forma de organizar dados onde cada elemento (ou nó) aponta para o próximo, formando uma sequência. Por exemplo, em uma fila, cada elemento aponta para o próximo na ordem de entrada.
Passo 3
Quando precisamos deletar um elemento em uma estrutura de encadeamento simples, especialmente na fila, é necessário encontrar o elemento anterior ao que será removido. Para isso, usamos um ponteiro que começa no início da fila e percorre cada nó até chegar ao penúltimo elemento. Esse processo exige um laço de repetição porque precisamos verificar cada nó um por um até encontrar o lugar certo para fazer a deleção.
Passo 4
Especificamente na fila de dados, a deleção geralmente ocorre no início da fila. Porém, dependendo da implementação, pode ser necessário percorrer a fila até o penúltimo elemento para atualizar os ponteiros de maneira correta. Isso garante que a fila mantenha sua ordem e integridade após a remoção de um elemento.
Resposta
Portanto, a afirmação de que a necessidade de um laço de repetição ocorre sempre que se faz uma deleção na fila de dados está correta. A opção b) deleção na fila de dados é a resposta certa.
Exercícios relacionados
As Estruturas de Dados definem a forma como os dados serão armazenados na memória do computador. Duas das estruturas de dados mais utilizadas na computação são a Pilha e a Fila. Considere as afirmativas abaixo que comparam as estruturas de Pilha e Fila:
I - A estrutura chamada Pilha é descrita como uma estratégia LIFO - last in, first out (o último que entra é o primeiro que sai), isto é, os elementos da pilha só podem ser retirados na ordem inversa à ordem que foram introduzidos.
II - A estrutura chamada Fila é descrita como uma estratégia FIFO - first in, first out (o primeiro que entra é o primeiro que sai), isto é, os elementos da pilha só podem ser retirados na mesma ordem em que foram inseridos.
III - Uma estrutura que recebe dos dados 10, 20, 30, 40 e 50 nessa ordem e só permite a sua retirada na ordem 50, 40, 30, 20 e 10 é um exemplo de uma Pilha.
IV - Uma estrutura que recebe dos dados 10, 20, 30, 40 e 50 nessa ordem e só permite a sua retirada na ordem 50, 40, 30, 20 e 10 é um exemplo de uma Fila.
V - Um programa que usa apenas estruturas de Pilha recebe os dados 1, 2, 3, 4 e 5 nessa ordem e imprime os dados na ordem 1, 2, 3, 4 e 5 pode ter sido implementado com duas estruturas de Pilha consecutivas.
As afirmativas CORRETAS são:
c) I, II e III, apenas.
I - A estrutura chamada Pilha é descrita como uma estratégia LIFO - last in, first out (o último que entra é o primeiro que sai), isto é, os elementos da pilha só podem ser retirados na ordem inversa à ordem que foram introduzidos.
II - A estrutura chamada Fila é descrita como uma estratégia FIFO - first in, first out (o primeiro que entra é o primeiro que sai), isto é, os elementos da pilha só podem ser retirados na mesma ordem em que foram inseridos.
III - Uma estrutura que recebe dos dados 10, 20, 30, 40 e 50 nessa ordem e só permite a sua retirada na ordem 50, 40, 30, 20 e 10 é um exemplo de uma Pilha.
IV - Uma estrutura que recebe dos dados 10, 20, 30, 40 e 50 nessa ordem e só permite a sua retirada na ordem 50, 40, 30, 20 e 10 é um exemplo de uma Fila.
V - Um programa que usa apenas estruturas de Pilha recebe os dados 1, 2, 3, 4 e 5 nessa ordem e imprime os dados na ordem 1, 2, 3, 4 e 5 pode ter sido implementado com duas estruturas de Pilha consecutivas.
As afirmativas CORRETAS são:
c) I, II e III, apenas.
Muitas vezes o uso de encadeamento simples acarreta a necessidade de incluir um comando de repetição (laço) para fazer um ponteiro (ou indexador) percorrer a estrutura a partir do início até ele se posicionar no penúltimo elemento da estrutura, demandado possivelmente por uma inserção e/ou uma deleção. No exemplo em questão, pela forma de implementação escolhida, podemos afirmar que isso ocorre sempre que se fizer uma operação:
e) deleção em ambas, fila de dados e pilha de elementos livres.
e) deleção em ambas, fila de dados e pilha de elementos livres.
Escreva uma função chamada progressoes que recebe como parâmetros o termo inicial (
), a razão e a quantidade de termos (
). Em seguida, a função deve calcular o enésimo termo (
) da Progressão Aritmética (PA) e da Progressão Geométrica (PG). As fórmulas para o cálculo do enésimo termo da PA e da PG são, respectivamente:
Finalmente, se o enésimo termo da PA for maior que o da PG, a função deve retornar a soma (
) dos
primeiros termos da PA. Caso contrário, a função deve retornar a soma
dos
primeiros termos da PG. As fórmulas da soma dos
primeiros termos de uma PA e de uma PG são, respectivamente:
Observação 1: O nome da função deve ser exatamente como especificado acima e seu arquivo deve obrigatoriamente se chamar problema1.py.
Observação 2: Seu programa deve conter apenas a função descrita acima. Você não precisa realizar a entrada e saída de dados (não precisa usar as funções input() e print()).
Observação 2: Seu programa deve conter apenas a função descrita acima. Você não precisa realizar a entrada e saída de dados (não precisa usar as funções input() e print()).
Escreva uma função chamada valor_energia que recebe como parâmetros a quantidade de kWh consumida no mês e o tipo de instalação ( R para residências, C para comércios e I para indústrias). A função deve retornar o preço a pagar pelo fornecimento de energia elétrica, conforme as regras definidas na tabela a seguir:
Preço por tipo e faixa de consumo | ||
---|---|---|
Tipo | Faixa(kWh) | Preço do kWh |
Residencial | Até 500 |
|
Acima de 500 |
|
|
Comercial | Até 1000 |
|
Acima de 1000 |
|
|
Industrial | Até 5000 |
|
Acima de 5000 |
|
Observação 1: O nome da função deve ser exatamente como especificado acima e seu arquivo deve obrigatoriamente se chamar problema4.py.
Observação 2: Seu programa deve conter apenas a função descrita acima. Você não precisa realizar a entrada e saída de dados (não precisa usar as funções input() e print()).
Observação 2: Seu programa deve conter apenas a função descrita acima. Você não precisa realizar a entrada e saída de dados (não precisa usar as funções input() e print()).