Pilhas em C  XML
Índice dos Fóruns » Assuntos gerais (Off-topic)
Autor Mensagem
dsucuri
Smalltalk

Membro desde: 31/10/2006 16:43:33
Mensagens: 2
Offline

Alguém poderia me ajudar???? naum estou conseguindo compilar esse codigo....

[MSN]
bandrade
GUJ Ranger

Membro desde: 20/01/2003 15:45:15
Mensagens: 782
Offline

Bom, + e ai... não conseguiu compilar...

qual o ambiente, qual o erro... + informações são bem vindas.

Will Code For Food
dsucuri
Smalltalk

Membro desde: 31/10/2006 16:43:33
Mensagens: 2
Offline

O erro dá na parte do procedimento remover(), mais exatamente aí:

[MSN]
peczenyj
Moderador
[Avatar]

Membro desde: 26/03/2006 23:25:37
Mensagens: 3191
Localização: Rio de Janeiro
Offline

quando i for 0, que posição vc vai ler aqui:

topo[i-1]

?


http://pacman.blog.br

'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.'
[WWW]
bandrade
GUJ Ranger

Membro desde: 20/01/2003 15:45:15
Mensagens: 782
Offline



É... acessar P.topo(-1 ) não deve funcionar mesmo nao.... (quando i = 0)

Will Code For Food
thingol
Moderador

Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline

Credo, em C++ eu simplesmente usaria o seguinte:


[WWW]
peczenyj
Moderador
[Avatar]

Membro desde: 26/03/2006 23:25:37
Mensagens: 3191
Localização: Rio de Janeiro
Offline

dicas:
1) pesquisar um codigo didatico e fácil:
http://www.java2s.com/Code/C/Data-Structure-Algorithm/StackinC.htm

2) pensar objetivamente:
uma pilha é um LIFO - last in, first out.

logo não entendo a sua rotina de remover. vc vai remoter o ultimo elemento da sua pilha. vc só tem que alterar o valor da variavel topo, decrementando-a se for possivel.

quando não é possivel? quando a pilha está vazia.

no mais, este codigo é tipico de quem quer fazer bunito em C e está começando. pensa em fazer uma interface que seja possivel uma pessoa colocar dados e soca o algoritmo de qq jeito. e olha q os professores incentivam.

na boa, fazer um codigo onde vc aplica o algoritmo com os dados hard-coded ou então lidos a partir de um arquivo simples são mais do que suficiente. é pra aprender sobre pilhas, não que vc tem que limpar o buffer de entrada do teclado, ou que scanf é vulneravel à buffer overflow.

( se bobear, fazer a interface com html e colocar o programa a rodar como um CGI-BIN é mais facil )

Sei la, acho que se perde muito tempo em 'interface com o usuario' quando o objetivo não deveria ser este ainda. Mas se é requisito do trabalho ter a devida interface, deveria ser ensinado então a como separa um pouco uma coisa da outra, senão fica aquele monte de codigo e variaveis globais e aquele terror visual sem indentação.

http://pacman.blog.br

'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.'
[WWW]
Vegetto
GUJ Ranger

Membro desde: 22/06/2003 15:39:49
Mensagens: 797
Localização: Campinas
Offline

thingol wrote:Credo, em C++ eu simplesmente usaria o seguinte:



Certo, mas acho que ele está aprendendo Estruturas de Dados e não tentando reinventar a roda...
Kknd
JavaEvangelist
[Avatar]

Membro desde: 13/10/2006 10:54:18
Mensagens: 338
Offline

Minha dica.:

Faça um TDA (tipo de dado abstrato, no qual a aplicação em sí só tem acesso ao cabeçalho). Nele, faça uma pilha que surva para qualquer informação (na hora de criar recebe como parâmetro o tamanho da informação que ela vai guardar).

.: Temple Of Shadows :. Linux User #435550

OProj
[WWW]
 
Índice dos Fóruns » Assuntos gerais (Off-topic)
Ir para:   
Powered by JForum 2.1.8 © JForum Team