Go: package main

import (
	"bufio"
	"fmt"
	"go/token"
	"go/types"
	"os"
	"strconv"
	"strings"
)

func main() {
	stdin := bufio.NewScanner(os.Stdin)
	stdin.Scan()
	n, _ := strconv.Atoi(stdin.Text())
	for i := 0; i < n; i++ {
		stdin.Scan()
		exp := strings.TrimRight(stdin.Text(), "=")
		res, _ := types.Eval(token.NewFileSet(), nil, token.NoPos, exp)
		fmt.Println(res.Value)
	}
}

C++: #include <bits/stdc++.h>
using namespace std;

#define State string::const_iterator
class ParseError {};

int expression(State &begin);
int term(State &begin);
int number(State &begin);
int factor(State &begin);

// 四則演算の式をパースして、その評価結果を返す。
int expression(State &begin) {
    int ret = term(begin);

    while(true){
        if(*begin == '+'){
            begin++;
            ret += term(begin);
        }
        else if(*begin == '-'){
            begin++;
            ret -= term(begin);
        }
        else{
            break;
        }
    }

    return ret;

}

// 乗算除算の式をパースして、その評価結果を返す。
int term(State &begin) {
    int ret = factor(begin);

    while(true){
        if(*begin == '*'){
            begin++;
            ret *= factor(begin);
        }
        else if(*begin == '/'){
            begin++;
            ret /= factor(begin);
        }
        else{
            break;
        }
    }

    return ret;
}

// 数字の列をパースして、その数を返す。
int number(State &begin) {
    int ret = 0;

    while(isdigit(*begin)){
        ret *= 10;
        ret += *begin - '0';
        begin++;
    }

    return ret;
}

// 括弧か数をパースして、その評価結果を返す。
int factor(State &begin) {
    if (*begin == '(') {
        begin++; // '('を飛ばす。
        int ret = expression(begin);
        begin++; // ')'を飛ばす。
        return ret;
    } else {
        return number(begin);
    }
}

int main() {

    int n;

    cin >> n;

    while(n--){

        string input;

        cin >> input;

        State s = input.begin();

        cout << expression(s) << endl;

    }

    return 0;
}

C++: 

#include <iostream>
#include <vector>
#include <cmath> // ??????

#define REP(i,n) for(int i = 0; i < n; i++)

using namespace std;

struct FourArithmeticOperationParser {
    
    int pos;
    string Formula;
    
    long long operator () (string F) {
        pos = 0;
        Formula = F;
        return expr();
    }
    
    long long number() {
        long long ret = 0;
        while (pos != Formula.size()) {
            if (Formula[pos] < '0' || Formula[pos] > '9') {
                break;
            } else {
                ret *= 10;
                ret += (Formula[pos++] - '0');
            }
        }
        return ret;
    }
    
    long long expr() {
        long long x = term();
        while (pos < Formula.size()) {
            switch (Formula[pos]) {
                case '+':
                    pos++;
                    x += term();
                    continue;
                case '-':
                    pos++;
                    x -= term();
                    continue;
            }
            break;
        }
        return x;
    }
    
    long long term() {
        long long x = factor();
        while (pos < Formula.size()) {
            switch (Formula[pos]) {
                case '*':
                    pos++;
                    x *= factor();
                    continue;
                case '/':
                    pos++;
                    x /= factor();
                    continue;
            }
            break;
        }
        return x;
    }
    
    long long factor() {
        if (pos < Formula.size()) {
            if (Formula[pos] == '(') {
                pos++;
                long long ret = expr();
                if (Formula[pos] == ')') {
                    pos++;
                }
                return ret;
            }
        }
        return number();
    }
    
};


int main() {
   
    int N; cin >> N;
    REP(i,N) {
        string s; cin >> s;
        cout << FourArithmeticOperationParser()(s.substr(0,s.size() - 1)) << endl;
    }
   
    return 0;
}

C++: /*
Hokudai Practice Contest 2014
C - Smart Calculator

ティツァツ」テヲツウツ陛ッツシツ堙ヲツァツ凝ヲツ鳴?ィツァツ」テヲツ楪?
テ・ツ?クテ・ツ楪凝ァツ堋?」ツ?ェテヲツァツ凝ヲツ鳴?ィツァツ」テヲツ楪静・ツ閉湘ゥツ。ツ古」ツ??
テ」ツ?陛」ツ?セテ」ツ?姪」ツ?セテ」ツ?ェテヲツ可凝ヲツウツ陛」ツ?古ィツ?ε」ツ?暗」ツつ嘉」ツつ古」ツつ凝」ツ?古ゥツδィテ・ツ按?ヲツ鳴?・ツュツ療・ツ按療」ツ?ォテ・ツッツセテ」ツ?凖」ツつ凝・ツ?催・ツクツーテァツ堋?・ツ?ヲテァツ青?」ツつ津ィツ。ツ古」ツ??ヲツ鳴ケテヲツウツ陛」ツ?古ァツーツ。テ・ツ債佚」ツ?ァテ」ツ?づ」ツつ凝」ツ??
テゥツδィテ・ツ按?ヲツ鳴?・ツュツ療・ツ按療」ツ?ォテ・ツッツセテ」ツ?療」ツ?ヲテァツュツ氾」ツ?暗」ツつ津ィツィツ暗ァツョツ療」ツ?凖」ツつ凝ゥツ鳴「テヲツ閉ーテ」ツつ津ァツ板ィテヲツ?湘」ツ?療」ツ?ヲテ」ツ??)テ」ツ?ォテ・ツ崢イテ」ツつ湘」ツつ古」ツ?淌ゥツδィテ・ツ按?ヲツ鳴?・ツュツ療・ツ按療」ツ?ョティツィツ暗ァツョツ療」ツつ津・ツ?催・ツクツーテ」ツ?ァテヲツアツづ」ツつ?」ツつ凝」ツ??

1テ・ツコツヲテ」ツ?ョテ・ツ?催・ツクツーテ・ツ堕シテ」ツ?ウテ・ツ?コテ」ツ?療」ツ?ョテ・ツ?ヲテァツ青?ヲツ卍づゥツ鳴禿」ツ?ッO(n)テ」ツ?ァテ」ツ?づ」ツつ凝」ツ??
()テ」ツ?ョテ」ツδ堙」ツつ「テ」ツ?ョテヲツ閉ーテ」ツ??」ツ?妥・ツ?催・ツクツーテ・ツ堕シテ」ツ?ウテ・ツ?コテ」ツ?療」ツ?古ィツ。ツ古」ツつ湘」ツつ古」ツつ凝」ツ?ョテ」ツ?ァテ」ツ??・ツ?催・ツクツーテ・ツ堕シテ」ツ?ウテ・ツ?コテ」ツ?療」ツ?ョテヲツ閉ーテ」ツつづ」ツ?セテ」ツ?欅(n)テ」ツ?ァテ」ツ?づ」ツつ凝」ツ??
テ」ツつ暗」ツ?」テ」ツ?ヲテ」ツ??ヲツ卍づゥツ鳴禿ィツィツ暗ァツョツ療ゥツ?湘」ツ?ッO(n^2)テ」ツ?ァテ」ツ?づ」ツつ凝」ツ??
*/

#include<iostream>
#include<string>
using namespace std;

//テヲツ鳴?・ツュツ療・ツ按療」ツつ津」ツつーテ」ツδュテ」ツδシテ」ツδ静」ツδォテ・ツ、ツ嘉ヲツ閉ーテ」ツ?ォテァツスツョテ」ツ?催」ツ??ヲツ鳴?・ツュツ療」ツ?ョテゥツ鳴凝・ツァツ凝、ツスツ催ァツスツョテ」ツ?ィテァツオツづ、ツコツ?、ツスツ催ァツスツョテ」ツつ津ゥツ鳴「テヲツ閉ーテ」ツ?ォテ、ツクツ偲」ツ?暗」ツつ凝」ツ?禿」ツ?ィテ」ツ?ァテ」ツ??
//テゥツδィテ・ツ按?ヲツ鳴?・ツュツ療・ツ按療」ツつ津ゥツ鳴「テヲツ閉ーテ」ツ?ォテヲツクツ。テ」ツ?凖」ツ?ョテ」ツ?ィテ・ツ青古ァツュツ嘉」ツ?ョテ・ツ?ヲテァツ青?」ツ?古」ツ?ァテ」ツ?催」ツつ?
string s;

//テゥツδィテ・ツ按?ヲツ鳴?・ツュツ療・ツ按耀[l,r)テ」ツ?ォテ・ツッツセテ」ツ?凖」ツつ凝・ツ?催・ツクツーテァツ堋?」ツ?ェテヲツァツ凝ヲツ鳴?ィツァツ」テヲツ楪?
//lテヲツ鳴?・ツュツ療ァツ崢ョテ」ツ?凝」ツつ嘉・ツァツ凝」ツ?セテ」ツつ甘」ツ?〉-1テヲツ鳴?・ツュツ療ァツ崢ョテ」ツ?ァテァツオツづ」ツつ湘」ツつ凝・ツ債甘ゥツ鳴凝・ツ個コテゥツ鳴禿」ツ?ォテ」ツ?ェテ」ツ?」テ」ツ?ヲテ」ツ??」ツつ凝」ツ?禿」ツ?ィテ」ツ?ォテヲツウツィテヲツ??
//(テ・ツ個コテゥツ鳴禿」ツつ津ヲツ可アテ」ツ??ヲツ卍づ」ツ?ッテ・ツ債甘ゥツ鳴凝・ツ個コテゥツ鳴禿」ツ??」ツ?ィテゥツδステ・ツ青暗」ツ?古」ツつ暗」ツ??」ツ?禿」ツ?ィテ」ツ?古・ツ、ツ堙」ツ?湘」ツ?，++ STLテ」ツ?ァテ」ツつづ・ツ、ツ堙」ツ?湘」ツ?ョテ・ツ?エテ・ツ青暗」ツ?敕」ツ??」ツ?ェテ」ツ?」テ」ツ?ヲテ」ツ??」ツつ?
int parse(int l, int r){
  //テ・ツ?催・ツクツーテ・ツ?ヲテァツ青?・ツ??」ツ?ァテ」ツ?ッテ」ツ??・ツ?ェテ・ツ?暗ゥツ??、ツスツ催」ツ?ョテ、ツスツ偲」ツ??ィツィツ暗ァツョツ療」ツ?凝」ツつ嘉・ツ?暗」ツ?ォティツィツ佚ィツソツーテ」ツ?凖」ツつ?
  //テ」ツ?ェテ」ツ?愿」ツ?ェテ」ツつ嘉」ツ??・ツ?催・ツクツーテ・ツ堕シテ」ツ?ウテ・ツ?コテ」ツ?療・ツ?暗」ツ?ョティツィツ暗ァツョツ療」ツ?ョテヲツ鳴ケテ」ツ?古・ツ?ェテ・ツ?暗ァツ堋?」ツ?ォティツ。ツ古」ツつ湘」ツつ古」ツつ凝」ツ?凝」ツつ嘉」ツ?ァテ」ツ?づ」ツつ?
  //テ」ツつ暗」ツ?」テ」ツ?ヲテ」ツ??+-"->"*/"->"()"->"テヲツ閉ーテ・ツュツ?テ」ツ?ョテゥツ??」ツ?ォティツィツ佚ィツソツーテ」ツ?凖」ツつ?

  //k:テゥツ鳴嘉」ツ?佚ヲツ仰ャテ・ツシツァテ」ツ?ョテヲツ閉ーテ」ツ?ョテ」ツつォテ」ツつヲテ」ツδウテ」ツつソテ」ツ?Ｌ=0テ」ツ?ョテ」ツ?ィテ」ツ?催」ツ??・ツョツ古・ツ?ィテ」ツ?ォテヲツ仰ャテ・ツシツァテ」ツ?古ゥツ鳴嘉」ツ?佚」ツ?ヲテ」ツ??」ツつ?
  int k = 0;

  //+,-テ」ツ?ョテ・ツ?ヲテァツ青?
  //テ・ツ?ェテ・ツ?暗ゥツ??、ツスツ催」ツ?ョテ、ツスツ偲」ツ??ィツィツ暗ァツョツ療」ツ?凝」ツつ嘉・ツ?暗」ツ?ォテ・ツ?ヲテァツ青?」ツ?凖」ツつ凝」ツ?淌」ツつ?」ツ??」ツδォテ」ツδシテ」ツδ療」ツ?ョテヲツ鳴ケテ・ツ青妥」ツつづゥツ卍催ゥツ??」ツ?ォテ」ツ?凖」ツつ?
  for(int i=r-1;i>=l;i--){
    if(s[i] == ')')k++;
    if(s[i] == '(')k--;
    //テ・ツ債甘ゥツ鳴凝・ツ個コテゥツ鳴禿」ツ?ォテ」ツ?ェテ」ツつ凝」ツつ暗」ツ??」ツ?ォiテ」ツつ暗」ツつ甘・ツキツヲテ」ツ?ィテ・ツ渉ウテ」ツ?ョテゥツδィテ・ツ按?ヲツ鳴?・ツュツ療・ツ按療」ツ?ォテ・ツ按?」ツ?妥」ツつ凝」ツ?づヲツキツサテ・ツュツ療」ツδ淌」ツつケテ」ツつ津」ツ?療」ツつ?」ツ?凖」ツ??」ツ?ョテ」ツ?ァテヲツーツ療」ツつ津」ツ?、テ」ツ?妥」ツつ凝」ツ??
    if(!k && s[i] == '+')return parse(l,i) + parse(i+1,r);
    if(!k && s[i] == '-')return parse(l,i) - parse(i+1,r);
  }

  //*,/テ」ツ?ョテ・ツ?ヲテァツ青?
  for(int i=r-1;i>=l;i--){
    if(s[i] == ')')k++;
    if(s[i] == '(')k--;
    if(!k && s[i] == '*')return parse(l,i) * parse(i+1,r);
    if(!k && s[i] == '/')return parse(l,i) / parse(i+1,r);
  }

  //()テ」ツ?ョテ・ツ?ヲテァツ青?
  if(s[l] == '(' && s[r-1] == ')')return parse(l+1,r-1);

  //テゥツδィテ・ツ按?ヲツ鳴?・ツュツ療・ツ按療」ツ?古ヲツ閉ーテ・ツュツ療」ツ?ョテ」ツ?ソテ」ツ?凝」ツつ嘉」ツ?ェテ」ツつ凝・ツ?エテ・ツ青?
  //stoi(string)テ」ツ?ッstringテ・ツ楪凝」ツ?ァティツ。ツィテ」ツ?陛」ツつ古」ツ?淌ヲツ閉ーテ・ツュツ療」ツつ段ntテ・ツ楪凝」ツ?ォテ・ツ、ツ嘉ヲツ渉崚」ツ?凖」ツつ凝」ツ??++11テ」ツ?凝」ツつ鋭tringテ」ツδ佚」ツδε」ツδ?」ツ?ォテ・ツ?・テ」ツ?」テ」ツ?淌」ツ??
  return stoi( s.substr(l,r-l) );
}

int main(){
  int n;
  cin >> n;
  while(n--){
    cin >> s;
    cout << parse(0,(int)s.size()-1) << endl;
  }
}