int main(){ Calculator calc; //計算機オブジェクト生成 int a,b; //数値格納変数 string ope[2]; //演算子格納変数 bool flag = true; //継続するか判定する変数 //終了するまでループ while (flag){ cout << "数値1を入力:" << flush; cin >> a; cout << "演算子を入力:" << flush; cin >> ope[0]; if (ope[0] != "=") { cout << "数値2を入力:" << flush; cin >> b; cout << "演算子を入力:" << flush; cin >> ope[1]; //入力した値をvalue1,2にセット calc.SetValue1(a); calc.SetValue2(b); /*数値1の後に入力した演算子の計算を行う 計算結果をメンバ変数ansとvalue1に代入する*/ calc.Calc(ope[0]); /*数値2の後に入力した演算子が"="でなかった場合 "="が入力されるまで計算を行う*/ if (ope[1] != "=") { for (int i = 3; ope[1] != "=";i++) { cout << "数値" << i << "を入力:" << flush; cin >> b; /*value1には前の計算結果が格納されてるので value2に入力した値を格納する*/ calc.SetValue2(b); calc.Calc(ope[1]); cout << "演算子を入力:" << flush; cin >> ope[1]; } //答えの表示 cout << "Answer:" << calc.GetAns() << endl; flag = ContinueProcess(); } else { //答えの表示 cout << "Answer:" << calc.GetAns() << endl; flag = ContinueProcess(); } }
int main(int argc, char* argv[]) { Calculator calculator; cout << "First Step" << endl; // should print 5.85714 cout << calculator.Calc("3 + 4 * 5 / 7") << endl; cout << "\nSecond Step" << endl; // should print a 5 cout << calculator.Calc("( 3 + 4 ) * 5 / 7") << endl; cout << "\nThird Step" << endl; // should print 3 and 243. 3 for "pi" and 243 for "9 * 9 * 3". vector<double> output = calculator.CalcWithVars( { "pi = 3", "pizza = 9 * 9 * pi" }); for (size_t i = 0; i < output.size(); ++i) { cout << output[i] << endl; } }