Jump to content
Fórum Script Brasil
  • 0
Sign in to follow this  
darkchrono

expressão numérica

Question

1- Faça um programa em C que leia via teclado uma expressão numérica, aceitando operações de soma (+),subtração (-). multiplicação (*) e divisão (/), cuja ordem de avaliação deve ser sempre determinada por parêntesis. O tamanho da expressão lida deve ser fornecido pelo usuário. O programa deve calcular o resultado da expressão e mostrar ao usuário.

Alguns exemplos de expressões são:

((3+7)*( (4/2)+3)+ 1)

(((2*(3/(1+5)))+(4+3))- 1)

alguém pode me ajudar a como fazer isso? calma, não quero q faça o codigo todo hehe, so quero algumas dicas de como fazer...

obrigado

Edited by darkchrono

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0

darkchrono, se é só dica, há muito tempo implementei isto fazendo uso de árvore binária e recursividade para o caminhamento, sendo que este deve buscar os valores nas folhas e o operador no nó pai (isto, já na resolução do problema).

O processo de parse (análise da expressão) irá gerar a árvore. Se estiver estudando a respeito, talvez seja o caso de dar uma olhada em Analisador sintático LR.

Mas, desenhar de ante-mão uma expressão no formato de árvore pode lhe ajudar no processo de desenvolvimento do algorítmo e teste de mesa. ;)

Abraços

post-12746-1206832537_thumb.png

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  



  • Forum Statistics

    • Total Topics
      148561
    • Total Posts
      644242
×
×
  • Create New...