C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++でXで割り切れる最大のK桁の数値


このチュートリアルでは、xで割り切れる最大のk桁の数字を見つけるプログラムを作成します。

問題を解決するための手順を見てみましょう。

  • xとkを初期化します。
  • 最大のk桁の数値であるpow(10、k)-1の値を見つけます。
  • 次に、上記の値から余りの値を削除して、xで割り切れる最大のk桁の数値を取得します。

コードを見てみましょう。

#include <bits/stdc++.h>
using namespace std;
int answer(int x, int k) {
   int max = pow(10, k) - 1;
   return max - (max % x);
}
int main() {
   int x = 45, k = 7;
   cout << answer(x, k) << endl;
   return 0;
}

出力

上記のコードを実行すると、次の結果が得られます。

9999990

結論

チュートリアルに質問がある場合は、コメントセクションにそのことを記載してください。


  1. Xで割り切れる最大のK桁の数値のC++プログラム?

    この問題では、Xで割り切れる最大のK桁の数を見つけようとします。このタスクを実行するには、この式((10 ^ k)– 1)で最大のK桁の数を取得します。次に、数値がXで割り切れるかどうかを確認します。割り切れない場合は、この数式を使用して正確な数値を取得します。 𝑚𝑎𝑥−(𝑚𝑎𝑥 𝑚𝑜𝑑 𝑋) 1つの例は、29で割り切れる5桁の数字のようなものです。したがって、最大の5桁の数字は99999です。これは29で割り切れません。ここで、式を適用すると、-が得られます。 99999−(99999 𝑚𝑜𝑑 29)=99999−7=99992

  2. Xで割り切れる最小のK桁の数字のためのC++プログラム?

    この問題では、Xで割り切れる最小のK桁の数を見つけようとします。このタスクを実行するには、この式(10 ^(k-1))で最小のK桁の数を取得します。次に、数値がXで割り切れるかどうかを確認します。割り切れない場合は、この数式を使用して正確な数値を取得します。 (min+ 𝑋)−((min+ 𝑋) 𝑚𝑜𝑑 𝑋) 1つの例は、29で割り切れる5桁の数字のようなものです。したがって、最小の5桁の数字は10000です。これは29で割り切れません。ここで、式を適用すると、-が得られます。 (10000+ 29)−((10000+29) 𝑚𝑜𝑑 29)=1002