clang-format and clang-tidy fixes for 4b93d5a5

This commit is contained in:
github-actions 2020-10-20 07:30:00 +00:00
parent bfa9eef130
commit 0c03970f10

View File

@ -1,8 +1,8 @@
/** /**
* @file * @file
* @brief C++ Program for Modular Exponentiation Iteratively. * @brief C++ Program for Modular Exponentiation Iteratively.
* Calculate the value of an integer a raised to an integer exponent b * Calculate the value of an integer a raised to an integer exponent b
* under modulo c. * under modulo c.
* @note The time complexity of this approach is O(log b). * @note The time complexity of this approach is O(log b).
* *
* Example: * Example:
@ -15,53 +15,46 @@
* We can also verify the result as 4^3 is 64 and 64 modulo 5 is 4 * We can also verify the result as 4^3 is 64 and 64 modulo 5 is 4
*/ */
#include <iostream> #include <iostream>
/// Iterative Function to calculate a raised to exponent b
/// Iterative Function to calculate a raised to exponent b
/// under modulo c in O(log b) using modular exponentiation. /// under modulo c in O(log b) using modular exponentiation.
int power(int a, unsigned int b, int c) int power(int a, unsigned int b, int c) {
{ int ans = 1; /// Initialize the answer to be returned
int ans = 1; /// Initialize the answer to be returned
a = a % c; /// Update a if it is more than or a = a % c; /// Update a if it is more than or
/// equal to c /// equal to c
if (a == 0) if (a == 0) {
{ return 0; /// In case a is divisible by c;
return 0; /// In case a is divisible by c; }
}
while (b > 0) {
while (b > 0) /// If b is odd, multiply a with answer
{ if (b & 1) {
/// If b is odd, multiply a with answer ans = (ans * a) % c;
if (b & 1) }
{
ans = (ans*a) % c; /// b must be even now
} b = b >> 1; // b = b/2
a = (a * a) % c;
/// b must be even now }
b = b>>1; // b = b/2
a = (a*a) % c; return ans;
} }
return ans;
}
/** /**
* @brief Main function * @brief Main function
* @returns 0 on exit * @returns 0 on exit
*/ */
int main() int main() {
{ /// Give two numbers num1, num2 and modulo m
/// Give two numbers num1, num2 and modulo m int num1 = 2;
int num1 = 2; int num2 = 5;
int num2 = 5; int m = 13;
int m = 13;
std::cout << "The value of " << num1 << " raised to exponent " << num2
std::cout << "The value of "<<num1<<" raised to exponent "<<num2<< << " under modulo " << m << " is " << power(num1, num2, m);
" under modulo "<<m<<" is " << power(num1, num2, m); /// std::cout << "The value of "<<num1<<" raised to exponent "<<num2<<"
/// std::cout << "The value of "<<num1<<" raised to exponent "<<num2<<" /// " under modulo "<<m<<" is " << power(num1, num2, m);
/// " under modulo "<<m<<" is " << power(num1, num2, m); }
}