Ir para conteúdo
Fórum Script Brasil

Pesquisar na Comunidade

Mostrando resultados para as tags ''pilha''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Encontrado 15 registros

  1. Tenho esse código em C que permite adicionar no inicio e no fim da lista e remover do inicio da lista, precisava criar um método para remover do fim da lista, porém não estou conseguindo, alguém pode me ajudar? typedef struct abstracao { int valor; struct abstracao *prox; }lista; lista *inicio; lista *aux; lista *fim; int op, x, contador; void InserirInicio(int a) { printf(" ---- -INSERIR- ----"); struct abstracao *novo = malloc(sizeof(struct abstracao)); novo->valor = a; if (inicio ==NULL) { inicio = novo; fim = novo; fim->prox = NULL; } else { novo->prox = inicio; inicio = novo; } contador++; } void Apresentar() { if(inicio == NULL) printf("Lista esta VAZIA.\n"); else { aux = inicio; printf("\n"); while(aux!=NULL) { printf(" %d - ", aux->valor); aux = aux->prox; }printf("\n"); printf("Quantidade de elemento da lista: %d\n", contador); } } void RemoverInicio() { aux = inicio; inicio = aux->prox; free(aux); aux = inicio; } void InserirFinal(int a) { printf(" ---- - INSERIR- ----\n"); struct abstracao *novo = malloc(sizeof(struct abstracao)); novo->valor = a; if(inicio==NULL) { inicio = novo; fim = novo; fim->prox = NULL; } else { fim->prox = novo; fim=novo; fim->prox = NULL; } } void main() { inicio = NULL; aux = NULL; do { printf(" --- Digite uma opção para lista --- \n"); printf("1 - Inserir no INICIO\n"); printf("2 - Apresentar\n"); printf("3 - Remover\n"); printf("4 - Inserir FINAL\n"); printf("5 - Remover FINAL\n"); scanf("%d", &op); switch(op) { case 1: { printf("Digite um valor para inserir na lista: \n"); scanf("%d", &x); InserirInicio(x); }break; case 2: { Apresentar(); }break; case 3: { RemoverInicio(); }break; case 4: { printf("Digite um valor para inserir na lista: \n"); scanf("%d", &x); InserirFinal(x); }break; case 5: { RemoverFinal(); } } }while (op<6); }
  2. Olá galera, estou desenvolvendo um pequeno programa que tem por objetivo comparar uma string que está armazenado em um vetor com essa mesma string armazenada em uma pilha para verificar se ela pertence ao padrão yxy; Exemplo: o usuário digita a palavra EDFED o para programa verificar se essa palavra pertence ao padrão e a saber ela pertence (ED)->Y (F) ->X (ED) -> Y, outro exemplo de palavras que pertence THT = (T) -> Y (H)-> (T)->Y já a palavra EFGFE não pertence. OBS:Estou implementando em C
  3. Olá, alguém poderia me ajudar nessas duas questões de fila e pilha? Agradeço desde já (:
  4. Demonstre em c++ uma pilha usando vetor (4) 6 (3) 5 (2) 4 (1) 2
  5. Dada uma lista de caracteres formada por uma sequência alternada de letras e dígitos, construa um método que retorne uma lista na qual as letras são mantidas na sequência original e os dígitos são colocados na ordem inversa. • Exemplos: A 1 E 5 T 7 W 8 G -> A 8 E 7 T 5 W 1 G 3 C 9 H 4 Q 6 -> 6 C 4 H 9 Q 3 Essa é a questão. Eu tenho a lista com os códigos de Pilha e Fila, mas não sei como aplicá-las.
  6. Olá, Quero criar um Labirinto em Java usando as seguintes classes genéricas: Pilha, Fila e Coordenada(que armazena a coordenada [x, y] atual). O programa lê um arquivo de texto contendo um labirinto, transferindo-o para uma matriz e, a partir da posição inicial, procura e move para espaços vazios até encontrar a posição final. Este é o arquivo de texto: 5 8 ######## E*** # ###*#### ###*#### ###S#### Como as classes genéricas Fila, Pilha, e Coordenada devem estar presentes no programa, devem ser criados 4 objetos: -Um objeto da classe Pilha chamado "path" e um objeto da classe Pilha> chamado "possibilidades", ambos capazes de armazenar 40 coordenadas (5 x 8 - 5 linhas e 8 colunas); -Um objeto da classe Fila chamado "Fila" que armazena 3 coordenadas e filas os espaços vazios ou o char 'S' em torno da posição atual que são encontrados ao pesquisar todas as 4 direções. (Na primeira busca, por exemplo, a fila seria: [(1,1),,] Como 1,1 é o primeiro espaço vazio encontrado na posição inicial, que é então adicionado à fila.) -Um objeto da classe Coordinate chamado "corrente", que representa a posição atual. 5 representa o número de linhas. 8 representa o número de colunas. O char '#' representa uma parede, um terreno inviável. O caractere 'E' é a posição de início, o caractere 'S' é a saída e os espaços vazios (char '') representam espaços transitáveis. Assim, o programa primeiro transfere o labirinto no arquivo de texto para uma matriz com o número especificado de linhas e colunas nele (5 e 8), e então encontra o caractere 'E', que é a posição de início e instancia o "atual" Objeto, armazenando sua coordenada nele ((1,0) no caso). A partir daí, ele procura todas as 4 direções em torno da posição atual no sentido horário (para cima, para a direita, para baixo e para a esquerda, nessa ordem) e armazena as coordenadas dos espaços vazios (ou char 'S') encontrados no objeto "fila" E remove a primeira coordenada da "fila", armazenando essa coordenada no objeto "atual", que representa a posição atual. Então, na matriz, coloca um char '*' na posição representada pelo objeto "atual" (coordenada), indicando que um passo foi dado. Em seguida, empilha o objeto "atual" no objeto "caminho" e empilha o objeto "fila" no objeto "possibilidades". Em seguida, repete essas etapas até encontrar a saída (char 'S'), impressão da matriz e fechamento do programa. No final, como cada posição é marcada com um '*', a matriz teria que se parecer com isso: (O arquivo de texto é inalterado). 5 8 ######## E*** # ###*#### ###*#### ###S#### Até agora, eu criei as classes: public class Fila <T> { private Object[objfila] = null; private int quantidade,posinicial,posfinal; public void inserir(Object x) throws Exception { if(quantidade==objfila.length) throw new Exception("Queue is full"); x=objfila(posfinal); quantidade++; posfinal++; } public void remover() throws Exception { if(quantidade==0){ throw new Exception("there are no elements on the queue"); } quantidade--; posinicial++; } public Fila(int capacidade) { this.posinicial=0; this.posfinal=0; Object objfila=new Object(); } } public class Pilha <T> { private Object[] objpilha = null; private int topo; public void inserir(T x) throws Exception { if(topo==objpilha.length-1){ throw new Exception("the stack is full."); } topo++; objpilha[topo]=x; } public void remover() throws Exception { if(topo==-1){ throw new Exception("there are no elements to be removed."); } topo--; } public Pilha(int capacidade){ objpilha=new Object[capacidade]; topo=-1; } } e coordenada (Eu acho que deve haver uma matriz de x e y que armazena coordenadas) public class Coordenadas <T>{ private int x; private int y; } O que estou tendo problemas é a criação desses objetos e inseri-los em outros objetos, como no armazenamento de coordenadas encontradas na "fila" e empilhamento do objeto "atual" no objeto "caminho". Qual é a maneira correta de fazer este programa? Desculpe pela longa pergunta.
  7. Boa noite, Preciso fazer um automato de pilha que seja capaz de reconhecer a seguinte linguagem:L2 = {0n1mnonde n e m são inteiros maiores ou iguais a 1} .a linguagem acima gera a seguinte sequencia L2={Σ, 010, 001100, 000111000...}.Alguém pode me ajudar?Abaixo o código para criar a pilha, o que eu preciso é algum teste que reconheça a sequencia L2={Σ, 010, 001100, 000111000...} #include <stdio.h> #include <stdlib.h> [size=2]Struct no {[/size] int info; struct no* prox; }; typedef struct no No; struct pilha { No* prim; }; typedef struct pilha Pilha; Pilha *pil; //******************************************************************************************************************** // Funcao para criação da pilha Pilha* cria (void) { Pilha* p = (Pilha*) malloc(sizeof(Pilha)); p->prim = NULL; return p; } // Função que inserir a pilha no inicio No* ins_ini (No* l, int v) { No* p = (No*) malloc(sizeof(No)); p->info = v; p->prox = l; return p; } // Funcao auxiliar: retira do inicio da pilha No* ret_ini (No* l) { No* p = l->prox; free(l); return p; } // Insercao na pilha; void push (Pilha* p, int v) { p->prim = ins_ini(p->prim,v); } // Funcao q remove da pilha int pop (Pilha* p) { int v; if (vazia(p)) { printf("Pilha vazia.\n"); exit(1); /* aborta o programa */ } v = p->prim->info; p->prim = ret_ini(p->prim); return v; } // Funcao auxiliar q verifica se a pilha esta vazia int vazia (Pilha* p) { return (p->prim==NULL); } void libera (Pilha* p) { No* r = p->prim; while (r!=NULL) { No* t = r->prox; free(r); r = t; } free(p); } // Funcao que exibe todos os elementos da pilha Desde já grata. No aguardo. Me ajudem estou desesperada
  8. wnv44

    Pilha sequencial

    Boa noite, Estou precisando de uma ajuda ai galera, preciso fazer uma lista sequencial, e está dando erro na minha função empilhar, estou usando codeblocks, se alguém puder me ajudar agradeço. #include <stdio.h> #define TRUE 1 #define FALSE 0 #define MAX 50 typedef struct { int conteudo; } Dados; typedef struct { Dados dados[MAX]; int topo; int base; int lim; } Pilha; Pilha pilha; Dados dados; void inicializar(Pilha pilha); int estaVazia(Pilha pilha); void empilhar(Pilha pilha, Dados dados); int main() { int num; inicializar(pilha); do { printf("\n1 - Inserir novo nodo \n2 - Remover nodo \n3 - Consultar nodo \n4 - Alterar nodo \n5 - Destruir pilha \n0 - Sair \n"); scanf("%d", &num); switch (num) { case 1: { int val; printf("\nInforme o valor:"); scanf("%d", &val); dados.conteudo = val; empilhar(pilha, dados); break; } /* case 2: { lst_imprime(m); break; } case 3: { int aux; mercado* mer; printf("\nQual codigo deseja buscar?\n"); scanf("%d", &aux); mer = busca(m, aux); printf("\nCodigo = %d Valor = %0.2f Nome do produto: = %s\n", mer->codigo, mer->valor, mer->produto); break; } case 4: { int aux; printf("\nDeseja retirar qual codigo?\n"); scanf("%d", &aux); m = lst_retira(m, aux); break; } case 5: { m = lst_libera(m); break; }*/ } } while (num != 0); return 0; } void inicializar(Pilha pilha) { pilha.base = 0; pilha.topo = pilha.base - 1; pilha.lim = MAX; } int estaVazia(Pilha pilha) { if (pilha.topo == NULL) return TRUE; else return FALSE; } void empilhar(Pilha pilha, Dados dados) { if (pilha.topo < pilha.lim) { pilha.topo = pilha.topo + 1; pilha[pilha.topo] = dados; } else printf("Pilha esta cheia!"); } /* int desempilhar(TipoPilha *pilha) { TipoNodo *nodo_que_sai_topo; int valor_nodo_que_sai_topo; if (estaVazia(pilha)) { printf("Lista Vazia !!!"); return 0; } else { nodo_que_sai_topo = pilha->topo; pilha->topo = nodo_que_sai_topo->link; valor_nodo_que_sai_topo = nodo_que_sai_topo->conteudo; free(nodo_que_sai_topo); pilha->tam--; return valor_nodo_que_sai_topo; } } int imprimir(TipoPilha *pilha) { TipoNodo *paux; paux = pilha->topo; printf("PILHA ATUAL\n"); while (paux) { printf("%d\n", paux->conteudo); paux = paux->link; } } */
  9. preciso de ajuda para resolver o problema do titulo do tópico fiz o algoritmo porem não consigo faze-lo executar, acredito que não estou colocando o bloco de codigo no lugar certo: //Bibliotecas #include <stdio.h> #include <stdlib.h> #include <locale.h> //Constantes #define tamanho 5 //Estrutura da Pilha struct tpilha { int dados[tamanho]; int ini; int fim; }; //Vari?veis globais tpilha pilha; int op; //Protipa??o void pilha_entrar(); void pilha_sair(); void pilha_mostrar(); void menu_mostrar(); //Fun??o principal int main(){ setlocale(LC_ALL, "Portuguese"); op = 1; pilha.ini = 0; pilha.fim = 0; while (op != 0) { system("cls"); pilha_mostrar(); menu_mostrar(); scanf("%d", &op); switch (op) { case 1: pilha_entrar(); break; case 2: pilha_sair(); break; } } return(0); } //Adicionar um elemento no final da Pilha void pilha_entrar(){ if (pilha.fim == tamanho) { printf("\nA pilha est? cheia, imposs?vel empilhar um novo elemento!\n\n"); system("pause"); } else { printf("\nDigite o valor a ser empilhado: "); scanf("%d", &pilha.dados[pilha.fim]); pilha.fim++; } } //Retirar o ?ltimo elemento da Pilha void pilha_sair() { if (pilha.ini == pilha.fim) { printf("\nA pilha est? vazia, n?o h? nada para desempilhar!\n\n"); system("pause"); } else { pilha.dados[pilha.fim-1] = 0; pilha.fim--; } } //Mostrar o conte?do da Pilha void pilha_mostrar() { int i; printf("[ "); for (i = 0; i < tamanho; i++) { printf("%d ", pilha.dados); } printf("]\n\n"); } //Mostrar o menu de op??es void menu_mostrar() { printf("\nEscolha uma op??o:\n"); printf("1 - Empilhar\n"); printf("2 - Desempilhar\n"); printf("0 - Sair\n\n"); } eu sei que tenho que inserir o seguinte codigo em algum lugar, mas não consigo entender aonde, peço ajuda pra poder entender o funcionamento da função, e se estiver faltando alguma coisa, me mostrem pra eu entender a logica. function inverter(*fila, *pilha){ while(fila_vazia(fila)!=0){ empilhar(pilha,desenfileirar(fila)); } while(pilha_vazia(pilha)!=0){ enfileirar(fila,desempilhar(pilha)); } } agradeço desde já a ajuda.
  10. Boa noite pessoal, gostaria de saber como resolver esse problema Implementar uma pilha com duas filas. Implementar uma fila com duas pilhas. se alguém souber, da uma ajuda! obrigado
  11. Boa noite, Estou com dificuldades em fazer uma pilha em C++, pois só conhecia Java. Se puderem me ajudar, agradeço desde já. A proposta do exercício é criar uma pilha alocada dinamicamente. Tem os métodos empilha, desempilha, topo (verificar o valor), getPosTopo, limparPilha e pilhaCheia. Tem que ser genérica. Os erros que não consegui solucionar foram: Streams are highly discouraged. [readability/streams] [3] na linha do #include<iostream>; error: ‘_’ was not declared in this scope * _it = _&pontVetor[0]; na última linha do construtor Pilha() * _it = _&pontVetor[0]; #include<iostream> template<typename T> class Pilha { private: int _tam; int _valorTopo; int _posiTopo; int * _pontVetor; int * _it; public: Pilha() { _tam = 10; _valorTopo = -1; _posiTopo = -1; * _pontVetor = new int[_tam]; * _it = _&pontVetor[0]; } Pilha<T>(int t) { _tam = t; _valorTopo = -1; _posiTopo = -1; * _pontVetor = new int[_tam]; * _it = _&pontVetor[0]; } void empilha(T dado) { if (PilhaCheia() != true) { (*_it++) = dado; _valorTopo = dado; _posiTopo = _posiTopo + 1; } else { std::cout << "A pilha está cheia." << std::endl; throw 20; } } T desempilha() { if (PilhaVazia() != true) { (*_it--); _valorTopo = _&pontVetor[*it]; _posiTopo = _posiTopo - 1; return _valorTopo; } else { std::cout << "A pilha está vazia." << std::endl; throw 21; } } T topo() { if (PilhaVazia() == true) { std::cout << "A pilha está vazia. Não possui topo." << std::endl; throw 22; } return _valorTopo; } int getPosTopo() { if (PilhaVazia() == true) { std::cout << "A pilha está vazia. Não possui topo." << std::endl; throw 22; } return _posiTopo; } void limparPilha() { _posiTopo = -1; } bool PilhaVazia() { return (_posiTopo == -1); } bool PilhaCheia() { return (_posiTopo == (_tam - 1)); } } Na realidade tem mais erros ocorrendo, porém o que está me impedindo de prosseguir é o erro do #include. Desculpem-me se postei em lugar que não deveria, ou se fiz algo de errado, esse é meu primeiro post. Muito obrigada pela atenção!! :)
  12. Hola galera, preciso de uma forcinha Meu professor pediu para escrever em uma pilha os valores multiplos de 5 entre 0 - 75. Mostrar na tela a pilha e eliminar um valor escolhido pelo usuario e ir mostrando a pilha conforme vai excluindo os valores. Exemplo: 1 2 Quero excluir o 2 2 3 3 3 4 4 4 <-- Assim ficaria a pilha no final 5 5 5 #include <iostream> using namespace std; const int MAX=75; int pilha[MAX]; int tope = 0; int pilha_tamanho(){ return tope+1; } bool pilha_vazia(){ return !tope; } bool pilha_cheia() { return tope == MAX; } bool push (int valor){ if (pilha_cheia()) return false; pilha[tope] = valor; tope++; return true; } bool pop(int &valor){ if (pilha_vazia()){ return false; }else{ int valor = pilha[tope-1]; tope--; return true; } } int main() { int valor, i, num; cout<<"Empilhar"<<endl; for (valor=0; valor<=75; valor++){ if ((valor%5)==0){ push(valor); } } for(i=0; i<tope; i++){ cout<<pilha[i]<<endl; } cout<<"\nCual numero desea quitar de la pila: "; cin>>num; while(num==pilha[i]){ cout<<pop(valor)<<endl; } /* Para desempilhar tudo cout<<"Desempilhar"<<endl; while(!pilha_vazia()) { cout<<pop()<<endl; }*/ cout<<"\nTamanho da pilha: "<<pilha_tamanho(); return 0; }
  13. Boa tarde, Tenho que fazer um programa em C++ que leia os caracteres de meu nome, imprima a pilha e depois imprima o inverso da pilha. O professor passou alguns algoritmos e pediu para fazermos isso, dei uma pesquisada na internet, alguns videos e cheguei no codigo abaixo, mas, tenho alguns erros que não encontro, ou algo de errado que estou fazendo. alguém pode me ajudar? Obs.: com numeros inteiros consegui fazer, mas com char.... #include <iostream> #include <conio.h> #include <stdio.h> #include <stdlib.h> using namespace std; int const MAX=1000; int pilha[MAX]; int tope; int pilha_tamanho(){ return tope+1; } bool pilha_vazia(){ if (tope==-1) return true; else return false; } bool pilha_cheia(){ if (tope==MAX-1) return true; else return false; } bool push (char &nom){ if (pilha_cheia()){ return false; }else{ pilha[tope]=nom; tope++; return true; } } bool pop (char nom){ if (pilha_vazia()){ return false; }else{ nom=pilha[tope]; tope--; return true; } } int main(){ int valor, i; char nom; cout<<"Empilhar"<<endl; push('d'); push('i'); push('o'); push('g'); push('o'); for(i=0; i<5; i++){ cout<<pilha[i]<<endl<<endl; } cout<<"Desempilhar"<<endl; while(pop(nom)){ cout<<valor<<endl<<endl; } cout<<"Tamanho da pilha: "<<pilha_tamanho(); return 0; }
  14. Olá! Fiz uma pilha que cumpre a sua função Desempilhar normalmente, de cima para baixo. Agora estou tentando desempilhar essa mesma pilha só que de Baixo para Cima mas estou com dificuldades e gostaria da ajuda dos senhores. Agradeço desde já! Segue o Código: #include <stdio.h> #include <stdlib.h> struct Item { int numero; struct Item *proximo; }; void Inicializar(Item **topo) { *topo = NULL; } bool EstaVazia(Item **topo) { if(*topo == NULL) return true; else return false; } void Empilhar(Item **topo, int elemento) { Item *novo; novo = (Item *)malloc(sizeof(Item)); novo->numero = elemento; novo->proximo = *topo; // -> próximo recebe o elemento que estava no topo. *topo = novo; } int Desempilhar(Item **topo) { int result; Item *auxiliar; if(EstaVazia(topo)) { printf("\n stack underflow! \n"); exit(1); } else // -> Elemento retirado do topo { result = (*topo)->numero; auxiliar = *topo; *topo = (*topo)->proximo; free(auxiliar); return result; } } void MostrarPilha(Item *topo) { int i = 0; Item *item; printf("\n\n Listando...\n\n"); printf("---------------------------------\n"); if (EstaVazia(&topo)) { printf ("A Pilha esta vazia!\n"); } else { item = topo; while(item != NULL) { i++; printf("[%i] -> %i\n", i, item->numero); item = item->proximo; } } printf("---------------------------------\n"); } void Menu() { printf( "\n\nDigite a sua escolha: \n" " 1 empilhar elemento \n" " 2 desempilhar \n" " 3 para finalizar \n" "? "); } main() { Item *topo = NULL; int opcao; int numero; Menu(); scanf("%i", &opcao); while (opcao != 3) { switch (opcao) { case 1: printf( "Digite um numero: "); scanf("\n%i", &numero); Empilhar(&topo, numero); MostrarPilha(topo); break; case 2: numero = Desempilhar(&topo); printf( "\n Numero desempilhado: %d \n",numero); MostrarPilha(topo); break; default: printf( "Escolha invalida.\n\n"); break; } Menu(); scanf("%i", &opcao); } system("pause"); }
  15. Boa noite, eu estou estudando c para a faculdade. Esta é a primeira vez que eu tento fazer TAD, tentei criar uma pilha e consegui, mas como eu não tenho muita experiencia, vocês teriam alguma dica de como melhora o meu código? Muito obrigado por qualquer ajuda! #define _CRT_SECURE_NO_WARNINGS #define TAMANHO 1000 #include <stdio.h> #include <stdlib.h> /*Vetor que segura a pilha estatica*/ int pilha[TAMANHO]; int topo; /*Constroi a pilha*/ int contrutor() { /*como zero é o topo do vetor -1 seria a pilha vazia*/ int topo = -1; return (EXIT_SUCCESS); } /*Verifica se a pilha esta vazia*/ int vazio() { int situacao; if (topo == -1) { situacao = 1; } else { situacao = 0; } return (situacao); } /*Verifica se a pilha esta cheia*/ int pilhaCheia() { int situacao; if (topo == (TAMANHO - 1)) { situacao = 1; } else { situacao = 0; } return (situacao); } /*inserir na pilha*/ int push(int valor) { /*a função deve inserir na posicao topo*/ int situacao; /*verificando se a pilha não esta cheia*/ if (!pilhaCheia()) { topo++; pilha[topo] = valor; situacao = 1; } else { situacao = 0; } return (situacao); } /*Apaga o topo da pilha*/ int pop() { int valor; if (vazio()) { valor = 0; } else { valor = pilha[topo]; topo--; } return (valor); } /*Consulta no topo*/ int consulta() { int valor; if (!vazio()) { valor = pilha[topo]; } else { valor = 0; } return (valor); } int main() { //pilha... system("pause >> null"); return (EXIT_SUCCESS); }
×
×
  • Criar Novo...