code:
Can't Copy and Paste this?
Click here for a copy-and-paste friendly version of this code!
Terms of Agreement:
By using this code, you agree to the following terms...
1) You may use this code in your own programs (and may compile it into a program and distribute it in compiled format for langauges that allow it) freely and with no charge.
2) You MAY NOT redistribute this code (for example to a web site) without written permission from the original author. Failure to do so is a violation of copyright laws.
3) You may link to this code from another website, but ONLY if it is not wrapped in a frame.
4) You will abide by any additional copyright restrictions which the author may have placed in the code or code's description.
//
//Calculator.cpp
//A basic calculator program by NuKeR
#include
#include
#include
float add(float x, float y);
float substract(float x, float y);
float mult(float x, float y);
float div(float x, float y);
float power(float x, float y);
float help(float x, float y);
float (*f) (float x, float y);
void main()
{
char sign, operators[6] = {'+','-','*','/','^','?'};
float(*func[])(float,float) = {add, substract, mult, div, power, help};
int i;
float x, y, z;
//char imagen[80];
cout << "Calculator\n\nEnter a single expression to evaluate it. if you need help only type 1?1.\nExpression: ";
while(cin >> x >> sign >> y )
{
for (i = 0; i <= 6; i++)
{
if (sign == operators[i])
{
f = func[i];
z = f(x, y);
cout << "\n" << x
<< " " << sign
<< " " << y
<< " = " << z
<< "" << &f;
}//break;
}
cout <<"\nExpresion: ";
}
cout << "\n\n";
system("PAUSE");
//return 0;
}
float add(float x, float y)
{
return x + y;
}
float substract(float x, float y)
{
return x - y;
}
float mult(float x, float y)
{
return x * y;
}
float div(float x, float y)
{
return x / y;
}
float power(float x, float y)
{
double result;
result = pow(x,y);
return result;
}
float help(float x,float y)
{
cout << "\n\n***Calculator fast help***\n\nOperators:\n\t + Add to integers.\n\t - Substract two integers.\n\t * Multiply two integers.\n\t / Divide two integers.\n\t ^ Power a number: use: n^exp.\n\t" << endl;
return x;
}