It is necessary to develop the application in C or C ++ programming language, using tools
for developing lexers and parsers, which works as an advanced calculator. Calculator
calculates mathematical expressions line by line, while having the ability to store in
variables and calls of trigonometric functions. Calculator description:
• The print command is used to print the value of an expression.
• The types of data that can appear in expressions are strings and real
numbers,
• operations that can be performed with real numbers are addition, subtraction
less, multiplication and division (+, -, *, /) respecting the priority of multiplication and
divisions over the other two,
• It is possible to group expressions using pairs of parentheses (), [] and {} which are
they do not differ in functionality, but contribute to clarity
expression :
a = 56*([5 + 4.7 * (6-2/3) - 8.875] + 5.87)
print a
1515.453333
• there is an unary operator -, which denies the value of the expression.
print 10 + 20
20.000000
print -10 + 20
10.000000
print ---10
-10.000000
• The operation that can be performed with strings is the build, which it uses
operator &,
• If a string and expression are found in the operation, the expression must be evaluated and converted
him into his textual representation,
print "Temperature is" & 20 & "degrees
The temperature is 20.000000 degrees
print "Temperature is" & (20 * 9/5 + 32) & "Fahrenheit"
The temperature is 68.000000 Fahrenheit
• It is possible to use the functions of one argument sin, cos, sindeg and cosdeg which
calculate the sine and cosine of the angle in radians, ie degrees. Functions
can be used with or without parentheses around the argument, eg sin (0.456) and sin
0.456 are equivalent. When calling with parentheses, you may not specify an expression
inside parentheses. If we omit the brackets, only the number can be passed
or a variable as a parameter, not an entire expression.
print sin(90)
0.893997
print sindeg 90
1.000000
print sindeg(3*30)
1.000000
To remember the results of arithmetic expressions, as well as to use these values
in other expressions, variables of arbitrary name may be used (rule
naming as in C language). The variables are exclusively of the real number type. It's not
it is possible to store a string in a variable.
• Variables are assigned a value by the operator =.
• An assignment operation is also an arithmetic expression whose value is exactly
assigned value so that it is possible to write an expression that variables b
assigns a value of 3 and then assigns the same value to variable A:
foo_ = bar1 = 3
print foo_
3.000000
print bar1
3.000000
• The print command can also be used to print multiple values (expressions),
where values (expressions) are separated by commas (eg print var, 4, 5/10).
Each comma-separated value is printed in a new line on the standard
exit.
print foo_ + 5, "bar = " & bar1, 10.0
8.000000
bar = 3.000000
10.000000
The calculator takes all commands from the standard input. Anything that is not precisely specified
fictional or cannot be inferred from the example below, you can realize it arbitrarily,
but not to violate any of the above.
The implemented task should contain a Makefile that compiles
the program uses the make command and generates an executable file named calculator.
Hello, I have rich experience in C/C++ coding.
I have read all your explanations carefully and fully understand your requirements.
So I am sure I can give you correct and good results.
I would appreciate it if you could contact me soon and share your project details.
Thank you.
===== Expert of C/C++/Lexical Parsing(Flex and Bison) HERE =====
Dear Client!
I am Andrei, experienced programmer from Russia.
I have read your requirement and I noticed that I am appropriate to this project.
As a skillful software developer, I have rich experience with C/C++, Lexical Parsing using Flex and Bison, and built many projects like this.
I promise I will finish this project with high quality on time.
I hope you to contact me so that we have a full discuss with the project.
Best regard!
Hi, there.
I have read your job description carefully and I think I can help you.
As an expert of C/C++, I can complete your project perfectly.
Please have a look at my profile reviews.
Hope for your reply.
Thanks.
Hi, I've read your description carefully.
I have full experience with java, c++
I've also worked on several similar projects.
So I can complete your project with high quality on time.
Looking forward to hear more about the project from you via chatting.
Thanks & Best regards!
Hi, It seems a very interesting project for me.
I have a deep understanding and experience in the areas of C, lexer & literal parser....
*******************************************************************************************
I've worked on several similar projects.
Looking forward to hear more about the project via chatting.
Regards!
✓ https://www.freelancer.com/u/VovaLunev1
Hi,
I have read and understand your requirements. I can do it perfectly. I type at the speed of 50 wpm. I have more than 5 years of experience as data entry operator. I can save your time and money.
Regards,
Sanyam Malhotra
sir me data entry operater hu meri 90% satik data entry kar sakta hu meri profile bahot achi hai i am good operater me bahot jagah per kaam kar chuka hu mere pass vahot experience hai
Hi There,
I am flexible with my working hours and would appreciate it if you could discuss your project as soon as possible.
I would greatly appreciate the opportunity to be working with you and to discuss my qualifications and your requirements in detail.
Thank you !