Does it really? 4/2 = 2, 2 X 1 = 2. It's the same for me on my planet.

We learn CORLAT which translates as Parenetheses|Brackets, Indicies|Powers|Orders|Exponents, Division, Multiplication, Addition, Subtraction. But Div,Mult can be swapped as can Add,Sub.

I think the BIDMAS,BODMAS,PEDANT is a smokescreen. Unless you look at the second operator (indicies), there's very little that can go wrong.

CORLAT is another I've not heard of but it's the same order as BIDMAS so our results are the same.

Azmah commented: what's your planet? :D +0

I am very skeptic of mathematics by rules for simple maths. For me it is better to understand the meaning and do things by mind to avoid mistakes. For example my short version of "percent maths" rules: 100% = 1.00 = 100/100 and mark unknown with x. In my opinion there is no percent maths only numbers and maths.

Member Avatar for diafol

CORLAT is another I've not heard of but it's the same order as BIDMAS so our results are the same.

(C)romfachau = Parentheses
(O) = Of/Order
(R)hannu = Divide
(L)luosi = Multiply
(A)dio = Add
(T)ynnu = Subtract

Just the same old same old.

using BODMAS we get 6+(2x10) = 26 previously i thought 6+2x10= 80

Why in the world are there 5 pages in this thread?

because we're learning

@vernondozier
15 / 3 * 5 = gibberish
there is no such thing as left/right precedence, parentheses are required.

@vernondozier
15 / 3 * 5 = gibberish
there is no such thing as left/right precedence, parentheses are required.

That's funny. My compiler seems to think differently.

#include <iostream>
using namespace std;

int main()
{
    int a = 15 / 3 * 5;
    int b = 15 / 5 * 3;
    cout << a << '\t' << b;
    return 0;
}

So did all of my math professors. So do these five hundred thousand links.

http://lmgtfy.com/?q=algebra+left+to+right+precedence

Yes, it would be if it were written in C or C++ (and several other computer languages). But this is a math quiz, not a programming quiz. I don't recall ever seeing * meaning multiply until I started learning programming.

I've seen #x used as a base indicator, so the problem could be "what is 6 plus (10 in base 2)". And I've never heard of PODMAS, or whatever. We learned it the hard way, in the snow, uphill both ways! And in the 2nd grade.

Not it seems there are actually different versions of the 'MAS'. BODMAS, BIDMAS, PODMAS and more to come. We're really learning

@ Ardav

We learn CORLAT which translates as Parenetheses|Brackets, Indicies|Powers|Orders|Exponents, Division, Multiplication, Addition, Subtraction. But Div,Mult can be swapped as can Add,Sub.

I feel sorry for you ardav, you had to learn all that.

@ chilbex64
I wonder what more may there be ^_^

@Momerath

I've seen #x used as a base indicator, so the problem could be "what is 6 plus (10 in base 2)". And I've never heard of PODMAS, or whatever. We learned it the hard way, in the snow, uphill both ways! And in the 2nd grade.

What do you mean?

-----

One thing that I have noticed is that some programming languages have it differently. I'm learning Javascript and it seems to be different; I also think Python and C++/C might be too. Why can't they just stick the real deal? (haha reminds me, I was in a play called the Real Deal) XD

@ Ancient Dragon
I have a 404 Error

??? Are you talking about the link I posted in this post? It works for me, I just tried it again.

Think? Thinking is good!(ha) The way I was taught, the result would be 80. Now if you used brackets; (2 X 10) , then the answer would be 26. Am I missing something , not thinking enough? (man I cant afford lower points as a member! Joined way back but just lost track of this site, moved, etc. Are you grading this one on a curve!?? ha)
....( what I'd like to know, is why did I not see the umpteen million posts to this question already? instead of 0 posts? )

Think? Thinking is good!(ha) The way I was taught, the result would be 80. Now if you used brackets; (2 X 10) , then the answer would be 26. Am I missing something , not thinking enough? (man I cant afford lower points as a member! Joined way back but just lost track of this site, moved, etc. Are you grading this one on a curve!?? ha)
....( what I'd like to know, is why did I not see the umpteen million posts to this question already? instead of 0 posts? )

You had bad teacher then. Use your brain is best teaching. By the way writing in 2 x 10 makes difference for me, for some reason. It does not look like 2 times X times 10 any more. Interesting.. But maybe it is about time to close this thread.

You had bad teacher then. Use your brain is best teaching. By the way writing in 2 x 10 makes difference for me, for some reason. It does not look like 2 times X times 10 any more. Interesting.. But maybe it is about time to close this thread.

Close the thread? Good point, but I just happened apon it, and checking thread dates isn't
the first thing I'm looking for.
And... can anyone give me a clue what that last reply said? "2 time X times 10" ????
Also... it would be helpful to include one's own solution, and explain the error in what
used to be accepted math.

It was never excepted math, at least not since the stone ages. One way to think of the problem is like this: You bought 2 widgets for $10.00 each, plus it will cost you $6.00 shipping/handling for both of them. I hope you won't pay $80.00 for that :S If you will, then I have more widgets I'll sell you.

Ok my purposeful misinterpretation of question is:

1) in maths multiplication is left out between variable and number
2) X is generally denoted as unknown factor

Therefor 2X10 is 2 times X times 10 == 20X

and of course result is correctly 26, in my interpretation it is 20x+6 simplified.

In the original question, X means multiplication, not some unknown variable (the same as * in C and C++ languages).

commented: you're proving my point ;D +0

:icon_evil:purposeful misinterpretation

commented: haha! +0

Basic math is of course simple, but got myself mystified sometimes with exponentiation (shame on me, and I got stipend of best mathematical science student in my graduation year 1984 in my town):

-1**0.5 is valid formula (-1^0.5 some languages).

In c++ that would result in a compilation error as one is an int and the other is a double. Haha solved it (Answer: invalid input) lol :)

commented: i do believe +0

In c++ that would result in a compilation error as one is an int and the other is a double. Haha solved it (Answer: invalid input) lol :)

I do not understand, c++ has not exponentiation symbol (** is used in Python)

Well at least I think it's invalid input. I'll let the fellow posters decide that. For now I shall setup an equation that I find simple but I dunno about you.

(pow(2,128*4096>>10)|1)-1

>> I do not understand, c++ has not exponentiation symbol

Correct. C++ does not have an exponentiation operator. You have to use pow or write your own.


>> (pow(2,128*4096>>10)|1)-1

This is an error also. There's no pow(int, int) function in C++. Even if there was, 128*4096>>10 is 512. If your computer can raise 2 to the 512th power, I envy you.

The shift you posted looks like producing same result here in Python. 2**512 is no problem in Python (>>> is the interactive prompt):

Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> 128*4096>>10
512
>>> 2**512
13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096L
>>> 1<<512
13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096L
>>> 10 - 1 << 3
72

def myfact(n):
    f = 1
    for n in range(2,n+1):
        f *= n
    return f

>>> myfact(10)
3628800
>>> myfact(1000)
402387260077093773543702433923003985719374864210714632543799910429938512398629020592044208486969404800479988610197196058631666872994808558901323829669944590997424504087073759918823627727188732519779505950995276120874975462497043601418278094646496291056393887437886487337119181045825783647849977012476632889835955735432513185323958463075557409114262417474349347553428646576611667797396668820291207379143853719588249808126867838374559731746136085379534524221586593201928090878297308431392844403281231558611036976801357304216168747609675871348312025478589320767169132448426236131412508780208000261683151027341827977704784635868170164365024153691398281264810213092761244896359928705114964975419909342221566832572080821333186116811553615836546984046708975602900950537616475847728421889679646244945160765353408198901385442487984959953319101723355556602139450399736280750137837615307127761926849034352625200015888535147331611702103968175921510907788019393178114194545257223865541461062892187960223838971476088506276862967146674697562911234082439208160153780889893964518263243671616762179168909779911903754031274622289988005195444414282012187361745992642956581746628302955570299024324153181617210465832036786906117260158783520751516284225540265170483304226143974286933061690897968482590125458327168226458066526769958652682272807075781391858178889652208164348344825993266043367660176999612831860788386150279465955131156552036093988180612138558600301435694527224206344631797460594682573103790084024432438465657245014402821885252470935190620929023136493273497565513958720559654228749774011413346962715422845862377387538230483865688976461927383814900140767310446640259899490222221765904339901886018566526485061799702356193897017860040811889729918311021171229845901641921068884387121855646124960798722908519296819372388642614839657382291123125024186649353143970137428531926649875337218940694281434118520158014123344828015051399694290153483077644569099073152433278288269864602789864321139083506217095002597389863554277196742822248757586765752344220207573630569498825087968928162753848863396909959826280956121450994871701244516461260379029309120889086942028510640182154399457156805941872748998094254742173582401063677404595741785160829230135358081840096996372524230560855903700624271243416909004153690105933983835777939410970027753472000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000L
>>>

This 10 - 1 << 3 could differ from what you expect.

The shift you posted looks like producing same result here in Python. 2**512 is no problem in Python (>>> is the interactive prompt):

Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> 128*4096>>10
512
>>> 2**512
13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096L
>>> 1<<512
13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096L
>>> 10 - 1 << 3
72

def myfact(n):
    f = 1
    for n in range(2,n+1):
        f *= n
    return f

>>> myfact(10)
3628800
>>> myfact(1000)
402387260077093773543702433923003985719374864210714632543799910429938512398629020592044208486969404800479988610197196058631666872994808558901323829669944590997424504087073759918823627727188732519779505950995276120874975462497043601418278094646496291056393887437886487337119181045825783647849977012476632889835955735432513185323958463075557409114262417474349347553428646576611667797396668820291207379143853719588249808126867838374559731746136085379534524221586593201928090878297308431392844403281231558611036976801357304216168747609675871348312025478589320767169132448426236131412508780208000261683151027341827977704784635868170164365024153691398281264810213092761244896359928705114964975419909342221566832572080821333186116811553615836546984046708975602900950537616475847728421889679646244945160765353408198901385442487984959953319101723355556602139450399736280750137837615307127761926849034352625200015888535147331611702103968175921510907788019393178114194545257223865541461062892187960223838971476088506276862967146674697562911234082439208160153780889893964518263243671616762179168909779911903754031274622289988005195444414282012187361745992642956581746628302955570299024324153181617210465832036786906117260158783520751516284225540265170483304226143974286933061690897968482590125458327168226458066526769958652682272807075781391858178889652208164348344825993266043367660176999612831860788386150279465955131156552036093988180612138558600301435694527224206344631797460594682573103790084024432438465657245014402821885252470935190620929023136493273497565513958720559654228749774011413346962715422845862377387538230483865688976461927383814900140767310446640259899490222221765904339901886018566526485061799702356193897017860040811889729918311021171229845901641921068884387121855646124960798722908519296819372388642614839657382291123125024186649353143970137428531926649875337218940694281434118520158014123344828015051399694290153483077644569099073152433278288269864602789864321139083506217095002597389863554277196742822248757586765752344220207573630569498825087968928162753848863396909959826280956121450994871701244516461260379029309120889086942028510640182154399457156805941872748998094254742173582401063677404595741785160829230135358081840096996372524230560855903700624271243416909004153690105933983835777939410970027753472000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000L
>>>

This 10 - 1 << 3 could differ from what you expect.

Which one of those numbers are your answer because I'm confused?

The demonstration of big integet math was bit off topic, sorry. Your formula gives:

>>> (pow(2,128*4096>>10)|1)-1
13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096L
>>>

@vernondozier 15/3*5=25or1 (or anyone else)

so how can we explain the difference of these two/three verbally?:

"fifteen over three times five equals 1"
"fifteen divided by three times five equals 25"
"15
---- =1
3(5)"
"15/3*5=25"
i guess we are all just playing with words, but saving bits is kinda important right? hmmm...i see it best as "fifteen over three times five" because of the misleading forward-slash. guess i need to study some more different types of programming :)

There's nothing misleading about any of it. At some point before any of us were born someone made a bunch of rules for operator precedence in algebra and anyone who wants to be able to communicate effectively follows them. Whether it's PEMDAS, BOMDAS, or any other acronym, the rules are the same worldwide. The people who write computer programming languages make their languages follow the algebra rules that already exist, add a few more, then establish an order of precedence for operators and publish it, and those are the rules that everyone follows if they want to use the language. Why do we end statements in C++ with semicolons instead of with dollar signs? Somebody made a rule that made sense to him and everyone now follows it if they want to write code in C++. Otherwise no one could ever communicate with anyone else and no program would ever compile and run correctly because the guy who wrote the compiler and the guy who wrote the program can't agree on what 15 / 3 * 5 is. It's the same reason everyone drives on the same side of the road. It really doesn't matter which side it is just as long as everyone agrees. The American who moves to England and insists on continuing to drive on the right side of the road is going to have problems.


How do you explain it verbally? It's difficult. I guess you make really long pauses or mime parentheses where they're supposed to be till the other person gets it. It's better to write it.

commented: Amazing !!! +0

So i guess you could also interpret this whole post as having two awswers...
#A 6+2x10=26 or,
#B "6+2x10 is an algebraic expression where x=-6/20=-(0.3)."

we need to know if x is an operator or a variable in this statemant,
and if i remember correctly, x is always a variable algebra. you need parentheses to multiply.

there's one more answer: #C none of the above!

I guess there is multiple answers to this whole post(depending on the type of the math/level/step of the replierss

elementary 6+2x10 is 26
algebra 6+2x10 is x=-(0.3) //parentheses required?//

programming 6+2x10 is a user output/input or string output etc.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.