Hello.
I'm new to C Programming and am struggling with a practice exercise for a course I'm doing. My aim is to code a simple calculator, which has two constants, two variables that are manually input, and an answer. Then there is a statement at the end showing my two input values and the answer to the calculation.
I just don't know how to get this to work.
Code:
#include <iostream>
using namespace std;
int main () {
//variable declarations and initialisation
const double mol = 1.0;
const double gas_const = 8.315;
char temp[50], vol[50], pres[50];
//prompt and read
cout << "Please enter the temperature / K:" << endl;
cin >> temp;
cout << "Please enter the volume / m^3:" << endl;
cin >> vol;
//calculate pressure
pres = (mol * gas_const * temp) / vol;
//print result
cout << "One mole of gas at " << temp << "K, in a volume of " << vol << "m^3, has a pressure of " << pres << "Pa." << endl;
} //end of main()
The calculator uses the expression P = nRT/V, where n and R are constants that I define in the program, and T and V are variables that I input manually.
This coding gives a single error on the line with the equation:
Code:
error C2297: '*' : illegal, right operand has type 'char [50]'
Both "pres" and "temp" have red lines underneath. When I move the cursor over "pres" I get "Error: expression must be a modifyable lvalue", and doing the same with "temp" gives "Error: expression must have arithmetic or enum type".
I've been working on this for almost four hours at the time of posting. I've Googled and searched through books, I've gone through my notes, but I don't understand what I'm supposed to do.
If I remove the expression and give "pres" a fixed value, the statement at the end works. Its the expression part that I don't understand.
Could anyone help me with this? Any help would be very much appreciated.
Thanks.