Mit jelent a „BODMAS” kifejezés?

szavazat
15

Mi BODMAS és miért hasznos a programozás?

A kérdést 06/08/2008 15:54
a forrás felhasználó
Más nyelveken...                            


7 válasz

szavazat
20

http://www.easymaths.com/What_on_earth_is_Bodmas.htm :

Mit gondol a válasz 2 + 3 x 5?

Ez (2 + 3) x 5 = 5 x 5 = 25?

vagy 2 + (3 x 5) = 2 + 15 = 17?

BODMAS jöhet a mentő, és ad nekünk szabályokat kell követni, hogy mi mindig a helyes választ:

(B) ütő (O) rder (D) iVision (M) ultiplication (A) ddition (S) ubtraction

Szerint BODMAS, szorzás mindig el kell végezni, mielőtt felül, ezért a 17. valójában a helyes válasz szerint BODMAS és az is a válasz, amely a számológép ad, ha beír 2 + 3 x 5.

Miért hasznos a programozás? Fogalmam sincs, de feltételezem, hogy azért, mert akkor megszabadulni néhány konzolok? Én egy meglehetősen defenzív programozó, így a sorok így néz ki:

result = (((i + 4) - (a + b)) * MAGIC_NUMBER) - ANOTHER_MAGIC_NUMBER;

A BODMAS lehet, hogy ez egy kicsit világosabb:

result = (i + 4 - (a + b)) * MAGIC_NUMBER - ANOTHER_MAGIC_NUMBER;

Azt hiszem, még mindig az első változat - több konzolok, de így én nem kell tanulni még egy szabály, és én befut kisebb a kockázata annak elfelejti okozva a fura nehéz hibakeresés hibákat?

Csak találgatás, hogy legnagyobb részben mégis.

Mike Stone-EDIT: fix matematikai mint Gaius rámutat

Válaszolt 06/08/2008 15:57
a forrás felhasználó

szavazat
8

Egy másik változata ennek a (középiskolás), hogy „Kérem, bocsásson Kedves Sally”.

  • zárójelben
  • kitevők
  • Szorzás
  • Osztály
  • Kiegészítés
  • Kivonás

Az emlékeztető eszköz hasznos volt az iskolában, és még mindig hasznos programozási ma.

Válaszolt 06/08/2008 16:01
a forrás felhasználó

szavazat
5

Nem kell a hatalom, hogy módosítsa @Michael Stum válasza , de ez nem egészen helyes. ő csökkenti

(i + 4) - (a + b)

nak nek

(i + 4 - a + b)

Ők nem egyenértékű. A legjobb csökkentés tudok az egész kifejezés

((i + 4) - (a + b)) * MAGIC_NUMBER - ANOTHER_MAGIC_NUMBER;

vagy

(i + 4 - a - b) * MAGIC_NUMBER - ANOTHER_MAGIC_NUMBER;
Válaszolt 14/08/2008 02:29
a forrás felhasználó

szavazat
5

Műveletek sorrendje egy kifejezésben, mint például:

foo * (bar + baz^2 / foo) 
  • B ütő első
  • O rders (azaz Powers és négyzetgyök, stb)
  • D iVision és M ultiplication (balról jobbra)
  • A ddition és S ubtraction (balról jobbra)

forrás: http://www.mathsisfun.com/operation-order-bodmas.html

Válaszolt 06/08/2008 16:03
a forrás felhasználó

szavazat
4

Amikor megtudtam, ez az általános iskolában (Kanada) azt nevezzük BEDMAS:

B ütők
E xponents
D iVision
M ultiplication
A ddition
S ubtraction

Csak azok számára ez a rész a világ ...

Válaszolt 06/08/2008 16:11
a forrás felhasználó

szavazat
1

Nem vagyok benne biztos, hogy alkalmazható programozási régi BODMAS mnemonikot van egyébként. Nincs garancia műveletek sorrendjét nyelvek között, és míg sokan tartani az alapvető műveleteket, ebben a sorrendben, de nem mindegyik. Aztán vannak olyan nyelvek, ahol műveletek sorrendje nem igazán minden értelmes (Lisp dialektusok, például). Oly módon, akkor valószínűleg jobb programozási, ha elfelejti a standard rend és használhatja zárójelben mindent (pl (a * b) + c), vagy kifejezetten tanulni ahhoz, hogy minden nyelv dolgozik.

Válaszolt 06/08/2008 16:12
a forrás felhasználó

szavazat
0

Olvastam valahol, hogy különösen a C / C ++, darabolja fel kifejezéseket kis kimutatások jobb volt optimalizálás; így írása helyett hihetetlenül összetett kifejezéseket egy sorban, akkor cache a részek változó, és nem mindegyiket lépést, majd őket építeni, ahogy megy végig.

Az optimalizálási eljárásokat használ regiszterek olyan helyeken, ahol meg kellett változókat így nem befolyásolja a teret, de ez segíthet a fordító egy kicsit.

Válaszolt 22/10/2008 11:45
a forrás felhasználó

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more