190 likes | 328 Views
Equation solving, Big numbers. Reverse polish notation, Operations with big numbers. Ivelin Rachev. Telerik Corporation. http:/telerikacademy.com. “Baba Tonka” High School of Mathematics. Table of Contents. Priority of Operations Left and Right associatively Reverse Polish notation
E N D
Equation solving,Big numbers Reverse polish notation, Operations with big numbers IvelinRachev Telerik Corporation http:/telerikacademy.com “Baba Tonka” High School of Mathematics
Table of Contents • Priority of Operations • Left and Right associatively • Reverse Polish notation • Getting reverse polish notation • Calculating reverse polish notation • Big Numbers • Comparing • Adding • Subtracting • Multiplying
Equation Solving Solve the equations!
Priority of Operations (1) • Operations have strict priority
Priority of Operations (2) When operations have the same priority it matters whether they are left or right associative LEFT ASSOCIATIVE The left operation takes priority! 7-3+2=(7-3)+2=6 RIGHT ASSOCIATIVE The right operation takes priority! 7-3+2=7-(3+2)=2
Reverse Polish notation (1) Equation written in reverse polish notation has the operations, functions etc. written after the operands. (suffixed) There are no “(“ and “)” in Reverse Polish notation! 5+3*(2-1)-1*4 → 5 3 2 1 - * + 1 4 * - Suffixed Infixed
Reverse Polish notation (2) • Add a zero before each empirical operator. • While there are symbols to be read: • Read a symbol • If it is a number add it to the stack • If it is an operator: • While the top operator of the stack has lower priority to the current operator or it is left associated and has the same or lower priority pop it out of the stack and add it the suffixed equation. • Push the current operator into the stack. • If it is a left parenthesis put it in the stack.
Reverse Polish notation (3) • If it is a right parenthesis: • Until the token at the top of the stack is a left parenthesis, pop operators off the stack onto the suffixed equation. • Pop the left parenthesis from the stack, but not onto the suffixed equation. • If the stack runs out without finding a left parenthesis, then there are mismatched parentheses
Reverse Polish notation (4) • When there are no more symbols to read: • While there are still operator tokens in the stack: • If the operator token on the top of the stack is a parenthesis, then there are mismatched parentheses. • Pop the operator onto the suffixed equation.
Reverse Polish notation (6) • Read through the suffixed equation: • When you reach an • When you reach an operation do it using the values in your stack and push the answer back in the stack • The only remaining value in your stack is your answer to the equation.
Big Numbers How to?
Big Numbers(1) Big Numbers are usually represented using a data structure and an logical variable for signed big numbers.
Big Numbers(2) • Criteria in comparing big numbers: • By positivity and negativity. • By Length. • By each individual digit. • Note that negative numbers are ordered in reverse order by absolute value.
Big Numbers (3) • We fallow the same steps as in real life when we add and extract. The maximum that can be transferred is 1. • Multiplying is just adding numbers and moving them rightwards
Free Trainings @ Telerik Academy • “C# Programming @ Telerik Academy • csharpfundamentals.telerik.com • Telerik Software Academy • academy.telerik.com • Telerik Academy @ Facebook • facebook.com/TelerikAcademy • Telerik Software Academy Forums • forums.academy.telerik.com