Pilha estática
Publicado por DEMIS CARLOS FONSECA GOMES 13/06/2004
[ Hits: 11.142 ]
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*/
}
Abrir cdrom pedindo direto ao sistema.
Barra de carregamento (Loading Bar)
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Resolvendo o bloqueio do Módulo Warsaw no Arch Linux (Porta 30900)
Warsaw não é reconhecido no Google Chrome 147.0.7727.55 (7)
Metafísica e espiritualidade funciona de verdade! Comprovação pessoal (14)









