C++で数値が8の累乗であるかどうかを確認します
このセクションでは、数値が8の累乗であるかどうか、またはより簡単な方法を使用していないかどうかを確認します。 4096のような数値が存在する場合、これは8の累乗であるため、プログラムはtrueを返します。
トリックは簡単です。 log8(num)を計算します。これが整数の場合、nは8の累乗です。ここでは、tranc(n)関数を使用して、double値の最も近い整数を見つけます。
例
#include <iostream> #include <cmath> using namespace std; bool isPowerOfEight(int n) { double val = log(n)/log(8); //get log n to the base 8 return (val - trunc(val) < 0.000001); } int main() { int number = 4096; if(isPowerOfEight(number)){ cout << number << " is power of 8"; } else { cout << number << " is not power of 8"; } }
出力
4096 is power of 8
-
C++で多数が25で割り切れるかどうかを確認します
ここでは、数値が25で割り切れるかどうかを確認する方法を説明します。この場合、その数は非常に多い数です。したがって、数値を文字列として入力します。 最後の2桁が00の場合、数値は25で割り切れます。または、25で割り切れます。 例 #include <bits/stdc++.h> using namespace std; bool isDiv25(string num){ int n = num.length(); int last_two_digit_val = (num[n-2] - '0') * 10 +
-
C++で多数が11で割り切れるかどうかを確認します
ここでは、数値が11で割り切れるかどうかを確認する方法を説明します。この場合、その数は非常に多い数です。したがって、数値を文字列として入力します。 数値が11で割り切れるかどうかを確認するには、奇数の位置の値の合計と偶数の位置の値の合計が同じである場合、その数値は11で割り切れます。 例 #include <bits/stdc++.h> using namespace std; bool isDiv11(string num){ int n = num.length(); long odd_sum = 0, even_sum =