BODMAS berekening in c

Hallo, ik probeer een code in C te schrijven om de wiskundige vergelijking op basis van de BODMAS-regel op te lossen, een suggestie? voor bijvoorbeeld: het programma zou de output moeten geven als: (8 + 8)/2 + 4 = 12

3
Suggestie: gebruik geen C.
toegevoegd de auteur BoltClock, de bron
toegevoegd de auteur Jim Balter, de bron
Een suggestie voor wat, specifiek?
toegevoegd de auteur Oliver Charlesworth, de bron

1 antwoord

#include 

int calc(char *exp_str){
    FILE *fp;
    int ret;
    fp=fopen("calc_aux.c","w");
    fprintf(fp, "int main(){ return %s; }", exp_str);
    fclose(fp);
    system("gcc calc_aux.c -o calc_aux.exe");
    ret=system("calc_aux.exe");
    remove("calc_aux.c");
    remove("calc_aux.exe");
    return ret;
}

int main(){
    char exp[]="(8+8)/2+4";
    printf("%s=%d\n", exp, calc(exp));
}
//result:(8+8)/2+4=12
0
toegevoegd
toegevoegd de auteur BLUEPIXY, de bron
@AshishKarna, kijk alsjeblieft naar de opmerking is ook gekoppeld aan calc-functie.
toegevoegd de auteur BLUEPIXY, de bron
thnx het werkte, maar kunt u de opmerking ook schrijven, zodat ik duidelijker zou kunnen zijn hoe het programma functioneert
toegevoegd de auteur Ashish Karna, de bron