By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
449,422 Members | 1,310 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 449,422 IT Pros & Developers. It's quick & easy.

algebraic expression 'a*b+c' with CIN .Is it possible?

P: n/a
algebraic expression 'a*b+c' with CIN .Is it possible?

How to transfer the algebraic expression 'a*b+c' to the variable s
(all double) with cout in a "Console Application" ?

cout<<"Input a,b,c and expression in a,b,c "<<endl;
cin>>a;
cin>>b;
cin>>c;

cin>???!!!! and here !!!???. If I do cin>>(a*b*c) it's wrong !!!!
cout<<"This is a*b+c \n"<< s <<endl;

How to do it ?

Thanks
cristian
Aug 22 '07 #1
Share this Question
Share on Google+
9 Replies


P: n/a
Cristian wrote:
algebraic expression 'a*b+c' with CIN .Is it possible?

How to transfer the algebraic expression 'a*b+c' to the variable s
(all double) with cout in a "Console Application" ?

cout<<"Input a,b,c and expression in a,b,c "<<endl;
cin>>a;
cin>>b;
cin>>c;

cin>???!!!! and here !!!???. If I do cin>>(a*b*c) it's wrong !!!!
cout<<"This is a*b+c \n"<< s <<endl;

How to do it ?
Read a string using 'std::getline'. If you need to calculate the
result of that expression, you'll need to implement an expression
parser. See chapter 6 of TC++PL.

V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
Aug 22 '07 #2

P: n/a
On Wed, 22 Aug 2007 11:21:39 -0400, "Victor Bazarov"
<v.********@comAcast.netwrote:
>Cristian wrote:
>algebraic expression 'a*b+c' with CIN .Is it possible?

How to transfer the algebraic expression 'a*b+c' to the variable s
(all double) with cout in a "Console Application" ?
]zuip[
>Read a string using 'std::getline'. If you need to calculate the
result of that expression, you'll need to implement an expression
parser. See chapter 6 of TC++PL.

V
Is there something already prepared ?
Chapter 6 is very very crypticccccsss!!!!.....for me..
Heartfelt thankyou
Aug 22 '07 #3

P: n/a
On 2007-08-22 17:32, Cristian wrote:
On Wed, 22 Aug 2007 11:21:39 -0400, "Victor Bazarov"
<v.********@comAcast.netwrote:
>>Cristian wrote:
>>algebraic expression 'a*b+c' with CIN .Is it possible?

How to transfer the algebraic expression 'a*b+c' to the variable s
(all double) with cout in a "Console Application" ?
]zuip[
>>Read a string using 'std::getline'. If you need to calculate the
result of that expression, you'll need to implement an expression
parser. See chapter 6 of TC++PL.

V

Is there something already prepared ?
Chapter 6 is very very crypticccccsss!!!!.....for me..
Yes, the code is in there, but if you really want to use it you really
should take the time to understand it also.

--
Erik Wikström
Aug 22 '07 #4

P: n/a
>
Is there something already prepared ?
Chapter 6 is very very crypticccccsss!!!!.....for me..
Maybe you should start learing C++ before you do the hard stuff?
Aug 23 '07 #5

P: n/a
Cristian wrote:
algebraic expression 'a*b+c' with CIN .Is it possible?

How to transfer the algebraic expression 'a*b+c' to the variable s
(all double) with cout in a "Console Application" ?

cout<<"Input a,b,c and expression in a,b,c "<<endl;
cin>>a;
cin>>b;
cin>>c;

cin>???!!!! and here !!!???. If I do cin>>(a*b*c) it's wrong !!!!
cout<<"This is a*b+c \n"<< s <<endl;

How to do it ?
Let me guess: What you want is for the program to parse and interpret
a user-inputted mathematical expression such as for example "a*b+c" (or
any other expression thereof) for given value of the variables?

There's no language feature in C++ itself which would allow this.
C++ is a compiled language, it's not an interpreted scripting language.
What you want to do is easy to do in scripted languages because the
script interpreter is basically parsing and interpreting the input
source code all the time. Thus it's trivial to construct an expression
(eg. by asking the user for it) and make the interpreter parse and
interpret it. However, C++ is not an interpreted language and thus this
kind of thing is not possible directly.

If you want to be able to parse and interpret mathematical expressions
entered by the user you need a parsing/interpreting library for that.
Here's one example of such library: http://iki.fi/warp/FunctionParser/
Aug 23 '07 #6

P: n/a
On Thu, 23 Aug 2007 16:42:19 +0300, Juha Nieminen
<no****@thanks.invalidwrote:
>Cristian wrote:
>algebraic expression 'a*b+c' with CIN .Is it possible?
]zac..cc[
There's no language feature in C++ itself which would allow this.
C++ is a compiled language, it's not an interpreted scripting language.
What you want to do is easy to do in scripted languages because the
script interpreter is basically parsing and interpreting the input
source code all the time. Thus it's trivial to construct an expression
(eg. by asking the user for it) and make the interpreter parse and
interpret it. However, C++ is not an interpreted language and thus this
kind of thing is not possible directly.
ok but I don't understand why there isn't a library for this (for ex
in STD). I intend say: ask for algebraic input( mathematical
expressions ex. function) isn't common ?
In a scientific program I believe that this ownership is obligatory,
if there is not this tool as it can make the consumer to interact
with the program and to introduce a mathematical function whose
structure cannot be anticipated in phase of compilation?
>
If you want to be able to parse and interpret mathematical expressions
entered by the user you need a parsing/interpreting library for that.
Here's one example of such library: http://iki.fi/warp/FunctionParser/
I have to now develop small forms to personal use but it is probable
that in the future can use them for a greater project and therefore
before wasting time I would like to know if this your parser is
possible to also purchase commercial license and how much coast

I apologize you for my bad English
Tanks
cristian
Aug 23 '07 #7

P: n/a
Cristian wrote:
On Thu, 23 Aug 2007 16:42:19 +0300, Juha Nieminen
<no****@thanks.invalidwrote:
>Cristian wrote:
>>algebraic expression 'a*b+c' with CIN .Is it possible?
]zac..cc[
> There's no language feature in C++ itself which would allow this.
C++ is a compiled language, it's not an interpreted scripting
language. What you want to do is easy to do in scripted languages
because the script interpreter is basically parsing and interpreting
the input source code all the time. Thus it's trivial to construct
an expression (eg. by asking the user for it) and make the
interpreter parse and interpret it. However, C++ is not an
interpreted language and thus this kind of thing is not possible
directly.
ok but I don't understand why there isn't a library for this (for ex
in STD). I intend say: ask for algebraic input( mathematical
expressions ex. function) isn't common ?
In a scientific program I believe that this ownership is obligatory,
if there is not this tool as it can make the consumer to interact
with the program and to introduce a mathematical function whose
structure cannot be anticipated in phase of compilation?
If that's a requirement, and the entier system is written in C++,
then _usually_ folks /embed/ an interpreter from some other, well
known or popular language, like Python, or Basic, or Perl. Most
of them are /embeddable/. But please don't ask us where to find
such an interpreter or how to embed it. Such activity is beyond
the subject matter of this newsgroup.
> If you want to be able to parse and interpret mathematical
expressions entered by the user you need a parsing/interpreting
library for that. Here's one example of such library:
http://iki.fi/warp/FunctionParser/

I have to now develop small forms to personal use but it is probable
that in the future can use them for a greater project and therefore
before wasting time I would like to know if this your parser is
possible to also purchase commercial license and how much coast
www.google.com

V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
Aug 23 '07 #8

P: n/a
On Thu, 23 Aug 2007 12:38:51 -0400, "Victor Bazarov"
<v.********@comAcast.netwrote:
>Cristian wrote:
>On Thu, 23 Aug 2007 16:42:19 +0300, Juha Nieminen
<no****@thanks.invalidwrote:
>>Cristian wrote:
algebraic expression 'a*b+c' with CIN .Is it possible?
]zac..cc[
>> There's no language feature in C++ itself which would allow this.
C++ is a compiled language, it's not an interpreted scripting
language. What you want to do is easy to do in scripted languages
because the script in
]zac[
>such an interpreter or how to embed it. Such activity is beyond
the subject matter of this newsgroup.
doesn't this group speak of c++? have not I perhaps said since the
beginning that I am a beginner? I have told him.
but it is not able not answer in this group ?. To use some faculty not
to answer is a right. Use it
And however if I have disturbed I ask excuse everybody
thanks
cristian

Aug 23 '07 #9

P: n/a
Cristian wrote:
On Thu, 23 Aug 2007 12:38:51 -0400, "Victor Bazarov"
<v.********@comAcast.netwrote:
>Cristian wrote:
>>On Thu, 23 Aug 2007 16:42:19 +0300, Juha Nieminen
<no****@thanks.invalidwrote:

Cristian wrote:
algebraic expression 'a*b+c' with CIN .Is it possible?
>
]zac..cc[
There's no language feature in C++ itself which would allow this.
C++ is a compiled language, it's not an interpreted scripting
language. What you want to do is easy to do in scripted languages
because the script in
]zac[
>such an interpreter or how to embed it. Such activity is beyond
the subject matter of this newsgroup.

doesn't this group speak of c++?
Yes, it does. You need to separate the language itself with its
applications, though. Example: there is this newsgroup, called
'alt.usage.english' where I can learn how to use English, but they
will not tell me how to write a good business proposal in English.
Writing good business proposals is not necessarily the topic of
'alt.usage.english'.

Same here. If you have a language problem, we're happy to help
you with it. However, we will not tell you how to develop some
algorithm using C++. That's beyond this newsgroup's topic.
have not I perhaps said since the
beginning that I am a beginner?
Being a beginner is not an excuse.
I have told him.
but it is not able not answer in this group ?.
We are not able to tell you what you need to do to use a Python
interpreter in a C++ program. It's a topic for a Python forum.
To use some faculty not
to answer is a right.
I am not sure I understand that statement.
Use it
And however if I have disturbed I ask excuse everybody
You have not disturbed anybody, I hope. And from what I can see,
you have received at least some advice you should be able to use.

V
--
Please remove capital 'A's when replying by e-mail
I do not respond to top-posted replies, please don't ask
Aug 23 '07 #10

This discussion thread is closed

Replies have been disabled for this discussion.