Informática, perguntado por Usuário anônimo, 1 ano atrás

Na informática, a pilha é uma estrutura onde os dados são inseridos e removidos no seu topo. São estruturas conhecidas como Last In, First Out (LIFO), que pode ser traduzido por Último a Entrar, Primeiro a Sair.
Considere o código da função pilha_entrar():

void pilha_entrar() {
if (pilha.fim == tamanho) {
printf("\nA pilha está cheia, impossível empilhar um novo elemento!\n\n");
system("pause");
}
else {
printf("\nDigite o valor a ser empilhado: ");
scanf("%d", &pilha.dados[pilha.fim]);
pilha.fim++;
}
}

Além disso, assuma que as seguintes variáveis estão preenchidas conforme o que se segue:

tamanho = 9
pilha.ini = 0
pilha.fim = 9
pilha.dados:

​Qual será o resultado após a execução da função pilha_entrar()?

Alternativa 1:
Será exibida a mensagem "A pilha está cheia, impossível empilhar um novo elemento!".

Alternativa 2:
O novo elemento será inserido ao final da pilha e o valor de pilha.fim será alterado para 10.

Alternativa 3:
O elemento será inserido ao início da pilha e o valor de pilha.fim permanecerá o mesmo, pois já está cheia.

Alternativa 4:
O elemento será inserido ao final da pilha e o valor de pilha.fim permanecerá o mesmo, pois já está cheia.

Alternativa 5:
O novo elemento será inserido ao final da pilha e o valor de pilha.fim não será alterado, pois já possui o valor correspondente ao tamanho máximo do vetor.

Anexos:

Soluções para a tarefa

Respondido por KillBiil
5

Resposta:

Alternativa 1:

Será exibida a mensagem "A pilha está cheia, impossível empilhar um novo elemento!".

Explicação:

Tendo em vista que as variáveis tamanho  e pilha.fim possuem o seu valor inicial 9, logo na primeira condição "if (pilha.fim == tamanho)" o sistema já irá printar "printf("\nA pilha está cheia, impossível empilhar um novo elemento!\n\n")".

Perguntas interessantes