Pilha estática
Publicado por DEMIS CARLOS FONSECA GOMES 13/06/2004
[ Hits: 10.772 ]
Homepage: www.portonaweb.com
Download Pilha Estática DEMIS CARLOS.cpp
(Pra quem já conhece meus scritps, sao todos feitos em windows, mas com algumas alterações roda muito bem em Linux).
Insere elementos, lista os elementos empilhados, exclui elementos (Pilha estática).
/* Pilha estática, Por Dêmis Carlos Fonseca Gomes demiscarlos@hotmail.com Ciencia da Computacao 2º Periodo Universidade Federal do Tocantins Palmas-TO. */ #include <stdio.h> #include <conio.h> #include <conio.c> #include <stdlib.h> #include <ctype.h> #define MAX_ELEMENTOS 5 //*variaveis globais int pilha[MAX_ELEMENTOS]; int topo=0; /*prototipos ============*/ void push(int); int pop(void); void inserir(void); void listar(void); void remover(void); /* poe um elemento na pilha*/ void push(int i) { if(topo>=MAX_ELEMENTOS) { printf("\t\t______________________\n"); printf("\n\n\n\t\t\tPILHA CHEIA\n\n"); printf("\t\t______________________\n"); return; } pilha[topo]=i; topo++; } /*recupera o elemento do topo da pilha*/ int pop(void) { topo--; if(topo<0) { printf("\t\t______________________\n"); printf("\n\n\n\t\t\tPilha vazia\n\n"); printf("\t\t______________________\n"); topo++; return -1; } return pilha[topo]; } /*insere um elemeto na pilha*/ void inserir(void) { int elemento; printf("\n\nDigite o elemento a ser inserido na pilha -->> "); scanf("%d",&elemento); fflush(stdin); push(elemento); } void remover(void) { int aux=pop(); if(aux!=-1) printf("\n\nElemento removido da pilha: %d",aux); } void listar(void) { int i; printf("\n topo(%d)\n",topo); for(i=topo-1;i>=0;i--) printf("\n%d) %d ",i,pilha[i]); } /*principal ============*/ main() { textcolor(17+128); textbackground(6); system("cls"); int aux; char opcao; int i,quant; float max,min,*p; clrscr(); for(aux=0;aux<MAX_ELEMENTOS;aux++) pilha[aux]=0; /*inicializa a matriz com nulos*/ printf("\n\n\n\n\n\n\t\t\t\tBY DEMIS CARLOS\n\n"); printf("\t\t\tTECLE ENTER PARA CONTINUAR\n\n"); getch(); system("cls"); while(1) { printf("\n\n\nO que voce deseja: Inserir(i), Listar(l), Remover(r), Sair(s) --->> "); opcao=getchar(); fflush(stdin); opcao=toupper(opcao); switch(opcao) { case 'I':inserir(); break; case 'L':listar(); break; case 'R':remover(); break; case 'S':printf("\n Fim do programa!"); getch(); exit(0); } }/*while*/ }
Tipos de ordenação - BubbleSort - SelectSort - Shellsort - Mergesort
Parte 7 - Sessão de estudo sobre VETORES
Cálculo da equação do segundo grau
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Criando uma Infraestrutura para uma micro Empresa
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
O Que Fazer Após Instalar Ubuntu 25.04
O Que Fazer Após Instalar Fedora 42
Debian 12 -- Errata - Correções de segurança
Instalando o Pi-Hole versão v5.18.4 depois do lançamento da versão v6.0