Pilha estática
Publicado por DEMIS CARLOS FONSECA GOMES 13/06/2004
[ Hits: 10.558 ]
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*/ }
Converte segundos para horas, minutos e segundos
Simulador de cronometro com 2 digitos - otimizado
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Instalando Navegador Firefox no Debian 12
Bloqueando propagandas no Youtube e outros sites com o uBlocker Origin
Criando um Pen Drive Bootável no Linux