Informática, perguntado por infratim3530, 10 meses atrás

Você deverá desenvolver um programa em Linguagem C que execute os seguintes passos: 1 - Preencher uma pilha com os números do seu R.A.; 2 - Imprimir a pilha na ordem em que os elementos foram inseridos (iniciando pela base, e finalizando pelo topo); 3 – Desempilhar todos os elementos, inserindo-os em uma segunda estrutura de dados do tipo pilha; 4 - Imprimir a nova pilha na ordem em que os elementos foram inseridos (iniciando pela base, e finalizando pelo topo).

Soluções para a tarefa

Respondido por LarissaMoura3
1

O algoritmo pode ser desenvolvido da seguinte forma:

#include <stdio.h>

#include <stdlib.h>

}pilha;

int empilha (int valor, pilha *p);  

int desempilha (pilha *p);  

void imprimepilha(pilha *p);  

int main( ) {

pilha pilha1;  

pilha pilha2;  

pilha1.elementos = pilha2.elementos = 0;

empilha(1,&pilha1);  

empilha(2,&pilha1);

empilha(3,&pilha1);

empilha(4,&pilha1);

empilha(5,&pilha1);

empilha(6,&pilha1);

empilha(7,&pilha1);

empilha(8,&pilha1);

imprimepilha(&pilha1);    

empilha(desempilha(&pilha1),&pilha2);

empilha(desempilha(&pilha1),&pilha2);

imprimepilha(&pilha2);

return 0;

}

int empilha(int valor,pilha *p) {  

if (p->elementos==100)

{

printf("Tamanho máximo da pilha excedido.\n");  

return 1;

}

int desempilha (pilha *p) {

if (p->elementos==0)

{

p->elementos--;

return p->elemento[p->elementos];

}

void imprimepilha (pilha *p)

{

if (p->elementos == 0)  

}

for (int i=0; i<p->elementos; i++)

printf( "%d ", p->elemento[i]);  

printf("\n");  

return;

}

Algoritmo é uma sequência finita de instruções definidas e sem ambiguidade, onde cada uma deve ser executada mecanicamente ou eletronicamente considerando um intervalo finito de tempo. São muito utilizados na programação.

Bons estudos!

Perguntas interessantes