Segítségével karakterlánc csinálni Math

szavazat
-1

Próbálom, hogy egy számológép, amely lehetővé teszi több művelet (pl 4 + 3-2 + 5). Saját alapötlete, hogy hogyan teheti ezt meg, ezzel a hurok:

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

Pár megjegyzés: nums.length referenciák egy tömb, amely a bemeneti egyenlet osztott, mint ez: nums = equation.split((?<=[-+*/%])|(?=[-+*/%]))

Ideális esetben, ha már a „típus” érték lennék képes arra, hogy a programot kiszámítja az egyenletet ezt:

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

Egy másik kis megjegyzés: eqegy ArrayList minden értékeit nums.

Elég sok, amit akarok, már typevált matematikai műveletek, mint a +, - stb tudom, hogy ez a kód rettenetesen megtört, ahogy azt mutatom meg itt, de ez csak valami, amit gyorsan írtam, hogy egy példa, amit én szeretnénk elérni. Már néztem más kérdés ehhez hasonló, ahol a megoldás az volt, hogy az Mathosztály és hívás funkciók, de ez nem működik a programot. Bárki is gondolataikat a módja ennek? Kösz!

A kérdést 19/03/2020 22:03
a forrás felhasználó
Más nyelveken...                            

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