Usando cordas para fazer Math

votos
-1

Eu estou tentando fazer uma calculadora que permite várias operações (por exemplo, 4 + 3-2 + 5). Minha idéia básica para como fazer isso é usando este loop:

for (int i = 0; i < nums.length; i++) {
                switch (nums[i]) {
                case add:
                    while (func.size() < i) {
                        func.add(0);
                    }
                    func.add(i, 1);
                    type = +;
                    break;
                 //More cases for other operations

notas casal: referências nums.length um array que contém a equação de divisão de entrada como esta: nums = equation.split((?<=[-+*/%])|(?=[-+*/%]))

Idealmente, uma vez que tenho o valor 'type', eu seria capaz de fazer o meu programa calcular a equação fazendo isso:

for(int i = 1; i < nums.length; i++) {      
    ans = eq.get(0) type eq.get(func.indexOf(1)+i);
        }

Outra pequena nota: eqé um ArrayList com todos os valores de nums.

Muito bonito o que eu quero fazer é ter typese tornado operações matemáticas como +, -, etc. Eu sei que este código é terrivelmente quebrado no caminho eu mostrei-lo aqui, mas é apenas algo que eu rapidamente escreveu para fornecer um exemplo do que eu quer realizar. Eu olhei para outras perguntas semelhantes a este, onde a solução foi usar as Mathfunções de classe e chamar isso, mas ele não funciona no meu programa. Alguém tem pensamentos em uma maneira de conseguir isso? Obrigado!

Publicado 19/03/2020 em 22:03
fonte usuário
Em outras línguas...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more