Find Jobs
Hire Freelancers

Lexer and parser for advanced calculator (Flex + bison)

$30-250 USD

Ditutup
Disiarkan lebih dari 2 tahun yang lalu

$30-250 USD

Dibayar semasa penghantaran
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.
ID Projek: 32704345

Tentang projek

4 cadangan
Projek jarak jauh
Aktif 2 tahun yang lalu

Ingin menjana wang?

Faedah membida di Freelancer

Tetapkan bajet dan garis masa anda
Dapatkan bayaran untuk kerja anda
Tuliskan cadangan anda
Ianya percuma untuk mendaftar dan membida pekerjaan
4 pekerja bebas membida secara purata $105 USD untuk pekerjaan ini
Avatar Pengguna
I CAN COMPLETE YOUR PROJECT EASILY Hello, I am programmer with enough experiences on C/C++ for 13 years. C/C++ is nice programming language and I am majoring on it for long years so I have confident to complete your project by C/C++. I can work by full time for your project and trying to satisfy the requirements. I am designing the project from scratch and structure it well. I am following the project's design process exactly, and if any error is found, fix it within 24 hours and provide maintenance free of charge for a month. Client's idea + Programmer's good coding is the perfect result, this is my idea. I want to keep long-term relationship for customer so I want to give the nice result. If you want the perfect result, please contact with me.
$200 USD dalam 7 hari
4.9 (11 ulasan)
5.9
5.9
Avatar Pengguna
Hello, I'm an expert C,C++ developer with experience in object-oriented, data structure and more advanced. I can help you to finish this project with great quality. We can negotiate on price/Budget Regards Relevant Skills and Experience C,C++.
$140 USD dalam 1 hari
4.9 (13 ulasan)
3.8
3.8
Avatar Pengguna
Hi, I am an experienced C++ programmer (5 years). I have specialized in math, so this calculator will be no problem for me. I would love to work for You on this project and will deliver great results. I will do the job for lower amount of money, due to the lack of rating on this platform, but I promise to deliver a great app in the end. Sincerely Yours, Konstantin
$50 USD dalam 3 hari
0.0 (0 ulasan)
0.0
0.0

Tentang klien

Bendera BOSNIA AND HERZEGOVINA
Tuzla, Bosnia and Herzegovina
5.0
3
Kaedah pembayaran disahkan
Ahli sejak Dis 16, 2015

Pengesahan Klien

Terima kasih! Kami telah menghantar pautan melalui e-mel kepada anda untuk menuntut kredit percuma anda.
Sesuatu telah berlaku semasa menghantar e-mel anda. Sila cuba lagi.
Pengguna Berdaftar Jumlah Pekerjaan Disiarkan
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Memuatkan pratonton
Kebenaran diberikan untuk Geolocation.
Sesi log masuk anda telah luput dan telah dilog keluar. Sila log masuk sekali lagi.