-
Posts
43 -
Cadastrado em
-
Última visita
Tópicos solucionados
-
O post de Leotanis Leite Moraes em Programa simples em c, entregado de pizza foi marcado como solução
Este exercicio é o basico da parte de pilha estatica com uma struct. Tenho pronto aqui um exemplo das funções que eu costumo usar para pilha estatica, que fica facim para você adaptar para seu exercicio. So que ao inserir algo na pilha, voce utilisa uma struct em vez de um vetor simples igual no exemplo.
#include <stdio.h> #include <stdlib.h> int pilha [1000]; int topo,valor,opcao,i,aux; bool programa = true; void pilha_contruir (){ topo = -1; } bool pilha_vazia (){ if (topo==-1){ return true; } else { return false; } } bool pilha_cheia (){ if (topo==999){ return true; } else { return false; } } void inserirpilha (int valor){ if (pilha_cheia()==true){ printf("PILHA ESTA CHEIA"); } else{ topo=topo+1; pilha[topo]=valor; printf("\nVALOR %d INSERIDO COM SUCESSO!",valor); } } void retirarpilha (int &valor){ if (pilha_vazia()==true){ printf("\n\nPILHA ESTA VAZIA"); } else { valor = pilha[topo]; topo=topo-1; printf("\n\nO VALOR %d FOI RETIRADO DA PILHA",valor); } } int main() { printf("\033[44m"); printf("PROGRAMA PARA GERIR PILHA ESTATICA"); pilha_contruir(); while (programa=true){ printf("\n\n\n"); printf("\nESCOLHA:"); printf("\nDIGITE 1 PARA INSERIR DADOS NA PILHA"); printf("\nDIGITE 2 PARA RETIRAR VALOR DA PILHA"); printf("\nDIGITE 3 PARA MOSTRAR TAMANHO DA PILHA"); printf("\nDIGITE 4 PARA IMPRIMIR OS VALORES DA PILHA"); printf("\nINFORME A OPCAO DESEJADA: "); setbuf(stdin,NULL); scanf("%d",&opcao); switch (opcao) { case 1: printf("\n\n\nINFORME O VALOR QUE DESEJA INSERIR: "); scanf("%d",&valor); inserirpilha(valor); break; case 2: retirarpilha(valor); break; case 3: printf("\nA PILHA TEM %d ITENS\n",topo+1); break; case 4: aux=topo; while (aux>-1){ printf("\n%d",pilha[aux]); aux=aux-1; } break; } printf("\n\n"); system("pause"); system("cls"); } return 0; }
Sobre o Clube do Hardware
No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais
Direitos autorais
Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais