Modular exponentiation: Difference between revisions

Content added Content deleted
m (Added comment)
m (added whitespace.)
Line 1: Line 1:
{{task}}
{{task}}
Find the last 40 decimal digits of <math>a^b</math>, where
Find the last &nbsp; '''40''' &nbsp; decimal digits of &nbsp; <math>a^b</math>, &nbsp; where


* <math>a = 2988348162058574136915891421498819466320163312926952423791023078876139</math>
::* &nbsp; <math>a = 2988348162058574136915891421498819466320163312926952423791023078876139</math>
* <math>b = 2351399303373464486466122544523690094744975233415544072992656881240319</math>
::* &nbsp; <math>b = 2351399303373464486466122544523690094744975233415544072992656881240319</math>


<br>
A computer is too slow to find the entire value of <math>a^b</math>.


Instead, the program must use a fast algorithm for [[wp:Modular exponentiation|modular exponentiation]]: <math>a^b \mod m</math>.
A computer is too slow to find the entire value of &nbsp; <math>a^b</math>.


The algorithm must work for any integers <math>a, b, m</math> <br>where <math>b \ge 0</math> and <math>m > 0</math>.
Instead, the program must use a fast algorithm for [[wp:Modular exponentiation|modular exponentiation]]: &nbsp; <math>a^b \mod m</math>.

The algorithm must work for any integers &nbsp; <math>a, b, m</math>, &nbsp; &nbsp; where &nbsp; <math>b \ge 0</math> &nbsp; and &nbsp; <math>m > 0</math>.
<br><br>
<br><br>