Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DiegoBB

Programa com Pilhas

Recommended Posts

Olá galera:Sou novo aqui, e preciso desenvolver um programa que catalogue endereços da internet e simule o trabalho de um navegador de internet.O sisteme deverá solicitar para o usuário qual página deseja visitar; o operador digita o destino e após isto o sistema solicitará qual será a nova página a ser visistada.Se for digitado a palavra "voltar, o sistema deverá retornar a página anterior visitada pela usuário (caso ela exista).A pilha que armazenará os endereços não terá limites para armazenar endereços, mas o sistema severá controlar o limite inferior para evitar problemas com o sistema. O programa só deverá ser finalizado com a plavara "fim".Por favor galera, me ajudem!!Eu fiz o push (inserção) e o pop (remoção), mas to com problemas no main()!!Me ajudem, please!!Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

você vai ter q customizar mais a logica e essa

 

//pilha.c  #include<stdio.h>  #include<stdlib.h>  #define MAX 5  int RemoverPilha(int *v,int *ntotal);   int InserirPilha(int *v,int *ntotal,int y)   {     if((*ntotal)==MAX) return(-1);  v[(*ntotal)]=y;   (*ntotal)++;       return(0);   }      int RemoverPilha(int *v,int *ntotal)   {    if ((*ntotal)==0)   return(-1);  (*ntotal)--;  return(*ntotal);	}    void ExibirPilha(int *v,int *ntotal)	{  int i;    printf("\n -->BASE [");      for (i=0;i<(*ntotal);i++); 	 printf("%d",v[i]); 	 printf("] <-- TOPO \n");	}	int main()	{  int a[MAX],n=0,x,r,op;  while(1){ 	 printf("\n GERENCIADOR PILHA \n"); 	 printf("1 -INSERIR PILHA \n"); 	 printf("2 -REMOVER PILHA \n"); 	 printf("3 -EXIBIR PILHA \n"); 	 printf("\n Opção : ");    scanf ("%d",&op);  switch(op){           case 1:printf("\n Inserir \n");      printf("Dado :");      scanf ("%d",&x);      r=InserirPilha(&a[0],&n,x);      if(r== -1){       printf(" \n Pilha cheia \n");      }      break;           case 2:printf("\n Remover \n");      r=RemoverPilha(&a[0],&n);    if(r== -1)   	 printf(" \n Pilha vazia \n");      else   	 printf(" \n Dado removido=%d",a[r]);      break; 	 case 3:printf("\n Exibir Pilha \n");      ExibirPilha(&a[0],&n);           break;            case 0:printf(" \n Sair \n");    break; 	 default:printf(" \n Opção invalida \n");    break;      }                   if(op==0)     break;  }   }

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.