Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int solveEquation(List *lp){
- int identifiercounter,auxcounter,freeterms;
- identifiercounter=0;
- auxcounter=0;
- freeterms=0;
- while((*lp)->t.symbol != '='){
- if(((*lp)->t).symbol == '-'){
- *lp = (*lp)->next; // 3 x - 3 x + 3 - 3 + x - x
- if((*lp)->tt == Number){
- auxcounter=(*lp)->t.number;
- *lp = (*lp)->next;
- if((*lp)->tt == Identifier){
- identifiercounter=identifiercounter-auxcounter;
- auxcounter=0;
- } else {
- freeterms=freeterms-auxcounter;
- auxcounter=0;
- }
- } else if((*lp)->tt == Identifier){
- identifiercounter=identifiercounter-1;
- }
- } else if ((*lp)->tt == Number ){
- auxcounter=(*lp)->t.number;
- *lp = (*lp)->next;
- if((*lp)->tt == Identifier){
- identifiercounter=identifiercounter+auxcounter;
- auxcounter=0;
- *lp = (*lp)->next;
- } else {
- freeterms=freeterms+auxcounter;
- auxcounter=0;
- }
- } else if ( (*lp)->tt == Identifier) {
- identifiercounter=identifiercounter+1;
- *lp = (*lp)->next;
- } else if ( ((*lp)->t).symbol == '+' ){
- *lp = (*lp)->next;
- }
- } // end brace for while
- while(*lp!=NULL){
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement