A empresa ABC quer criar um cadastro de produtos. Para cada produto, devem ser cadastrados o código do produto,
seu preço e a quantidade estocada, e esses dados devem ser armazenados em uma lista simplesmente encadeada. O programa de cadastro deve ser implementado para, entre outras funcionalidades, receber do usuário uma taxa de desconto (Por exemplo: digitar 10 para desconto de 10%), e aplicar a taxa digitada ao preço de todos os produtos cadastrados.A implementação da lista simplesmente encadeada utilizada segue o modelo genérico apresentado em aula para o programa do Vestibular:
typedef int TipoChave;
typedef struct {
TipoChave Codigo;
float Preço;
int QuantidadeEstocada;
} TipoItem;
typedef struct TipoCelula *TipoApontador;
typedef struct TipoCelula {
TipoItem Item;
TipoApontador Prox;
} TipoCelula;
Foi desenvolvida, na linguagem C, uma função que aplica uma taxa de desconto a todos os elementos da lista, conforme o código apresentado abaixo. Essa função tem dois parâmetros, que são, respectivamente, uma lista simplesmente encadeada, e o valor da taxa de desconto. No entanto, o programador omitiu uma das linhas da função (a linha pontilhada existente no código abaixo).
void Desc(TipoLista Lista, float desconto))
{
TipoApontador Aux;
Aux = Lista .Primeiro−>Prox;
while (Aux != NULL){
Aux = Aux−>Prox ;
}
}
Qual das alternativas abaixo deve substituir a linha omitida para que a função funcione corretamente?
a.
Aux. Preço = Aux. Preço * desconto;
b.
Aux. Preço = Aux. Preço * (desconto/100);
c.
Aux−>Preço = Aux−>Preço * (1 - (desconto/100));
d.
Aux−>Preço = Aux−>Preço * (desconto/100);
e.
Aux. Preço = Aux. Preço * (1 - (desconto/100));
jakezika está aguardando sua ajuda, Clique aqui para responder.