Exponentiation order: Difference between revisions
(→{{header|Perl 6}}: add entry) |
(→{{header|REXX}}: Add Python) |
||
Line 36: | Line 36: | ||
[**] 5,3,2 ───► 1953125 |
[**] 5,3,2 ───► 1953125 |
||
[\**] 5,3,2 ───► 2 9 1953125</pre> |
[\**] 5,3,2 ───► 2 9 1953125</pre> |
||
=={{header|REXX}}== |
|||
<lang python>>>> 5**3**2 |
|||
1953125 |
|||
>>> (5**3)**2 |
|||
15625 |
|||
>>> 5**(3**2) |
|||
1953125 |
|||
>>> # The following is not normally done |
|||
>>> try: from functools import reduce # Py3K |
|||
except: pass |
|||
>>> reduce(pow, (5, 3, 2)) |
|||
15625 |
|||
>>> </lang> |
|||
=={{header|REXX}}== |
=={{header|REXX}}== |
Revision as of 18:23, 18 March 2014
This task will demonstrate the order of exponentiation (xy) when there are multiple exponents.
(Most languages usually support one of **, ^, or ↑ or somesuch.)
task requirements
Show the result of a language's evaluation of multiple exponentiation (either as an integer or floating point).
Use whatever exponentiation operator for your language; use a comment showing what the operator(s) is/are.
Using whatever operator or syntax your language supports (if any), show the results in three lines (with identification):
- 5**3**2
- (5**3)**2
- 5**(3**2)
If there are other methods (or formats) of multiple exponentiations, show them as well.
- See also
- Wiki entry exponentiation
- Mathworld entry exponentiation
Perl 6
<lang perl6>sub demo($x) { say " $x\t───► ", EVAL $x }
demo '5**3**2'; demo '(5**3)**2'; demo '5**(3**2)'; demo '[**] 5,3,2'; demo '[\**] 5,3,2';</lang>
- Output:
5**3**2 ───► 1953125 (5**3)**2 ───► 15625 5**(3**2) ───► 1953125 [**] 5,3,2 ───► 1953125 [\**] 5,3,2 ───► 2 9 1953125
REXX
<lang python>>>> 5**3**2 1953125 >>> (5**3)**2 15625 >>> 5**(3**2) 1953125 >>> # The following is not normally done >>> try: from functools import reduce # Py3K except: pass
>>> reduce(pow, (5, 3, 2)) 15625 >>> </lang>
REXX
<lang rexx>/*REXX program demonstrates various ways of multiple exponentiations. */ /*┌────────────────────────────────────────────────────────────────────┐
│ The REXX language uses ** for exponention. │ │ Also, * * can be used. │ └────────────────────────────────────────────────────────────────────┘*/
say ' 5**3**2 ───► ' 5**3**2 say ' (5**3)**2 ───► ' (5**3)**2 say ' 5**(3**2) ───► ' 5**(3**2)
/*stick a fork in it, we're done.*/</lang>
output
5**3**2 ───► 15625 (5**3)**2 ───► 15625 5**(3**2) ───► 1953125