Reverse polish notation, Operations with big numbers Ivelin Rachev Telerik Corporation...

Preview:

Citation preview

Equation solving,Big numbers

Reverse polish notation, Operations with big numbers

Ivelin Rachev

Telerik Corporationhttp:/telerikacademy.

com

“Baba Tonka” High School of Mathematics

Table of Contents

1. Priority of Operations

Left and Right associatively

2. Reverse Polish notation

Getting reverse polish notation

Calculating reverse polish notation

3. Big Numbers

Comparing

Adding

Subtracting

Multiplying 2

Equation SolvingSolve the equations!

Priority of Operations (1)

Operations have strict priority

Functions

“(“ and “)”

“*” and “/”

“+” and “–”

Priority of Operations (2)

LEFT ASSOCIATIVE

The left operation takes priority!

7-3+2=(7-3)+2=6

5

When operations have the same priority it matters whether they are

left or right associative

RIGHT ASSOCIATIVE

The right operation takes priority!

7-3+2=7-(3+2)=2

Reverse Polish notation (1)

6

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 * -Infixed Suffixed

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.

7

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

8

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.

9

Reverse Polish notation (5)

10

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.

11

LIVE DEMO

12

Big NumbersHow 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.

15

Big Numbers (3)

16

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

LIVE DEMO

17

форум програмиране, форум уеб дизайнкурсове и уроци по програмиране, уеб дизайн – безплатно

програмиране за деца – безплатни курсове и уроцибезплатен SEO курс - оптимизация за търсачки

уроци по уеб дизайн, HTML, CSS, JavaScript, Photoshop

уроци по програмиране и уеб дизайн за ученициASP.NET MVC курс – HTML, SQL, C#, .NET, ASP.NET MVC

безплатен курс "Разработка на софтуер в cloud среда"

BG Coder - онлайн състезателна система - online judge

курсове и уроци по програмиране, книги – безплатно от Наков

безплатен курс "Качествен програмен код"

алго академия – състезателно програмиране, състезания

ASP.NET курс - уеб програмиране, бази данни, C#, .NET, ASP.NETкурсове и уроци по програмиране – Телерик академия

курс мобилни приложения с iPhone, Android, WP7, PhoneGap

free C# book, безплатна книга C#, книга Java, книга C#Дончо Минков - сайт за програмиранеНиколай Костов - блог за програмиранеC# курс, програмиране, безплатно

?

? ? ??

?? ?

?

?

?

??

?

?

? ?

Questions?

?http://algoacademy.telerik.com

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

Recommended