input does not work anymore (10637 )
09-25-2016, 08:30 PM
Post: #1
 hpfx Junior Member Posts: 28 Joined: Jan 2015
input does not work anymore (10637 )
Hello,
I spent lot of time to discover that input cannot be used anymore to handle math expression. Many of my progs does not work anymore
here is a simple example I made to show you...
In old 8151 firmware this prog did work :
Code:
EXPORT abc() BEGIN LOCAL a; INPUT({{a, [2]}},"test",{"y="},"","",{"2*X"}); PRINT(int(a)); END;

But in new firmware 10637 it does not work ! => Error. Bad Argument Value
surprised this wasn't checked on new firmware release...

The problem is that int() does not accept string anymore, is that a bug ?
But I found that I still could use single quote like this : int('2*X')
But what the hell ?! how can I get single quote out of a PRINT() ? Documentation does not explain it...

And WHERE is this f*** list of allowed types ?!!! And is there an "algebraic" type ?
I spent hours on that.

It is still possible to make program that manipulate math algebraic expression from user input ???
09-25-2016, 11:43 PM
Post: #2
 roadrunner Senior Member Posts: 358 Joined: Jun 2015
RE: input does not work anymore (10637 )
Try:

Code:
EXPORT abc() BEGIN  LOCAL a;  print;  INPUT({{a,[2]}},"test",{"y="},"","",{"2*x"});  print(a);  int(EVAL(a)); END;

09-25-2016, 11:51 PM
Post: #3
 roadrunner Senior Member Posts: 358 Joined: Jun 2015
RE: input does not work anymore (10637 )
And see the document by Cyrille de Brébisson in post #9 of this thread for a more complete explanation:

09-25-2016, 11:56 PM
Post: #4
 roadrunner Senior Member Posts: 358 Joined: Jun 2015
RE: input does not work anymore (10637 )
I meant to type:

print(int(eval(a)));

in the modification of your code but you should get the idea.