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

C++でN以下の最大の偶数桁


このチュートリアルでは、数字がすべて偶数で、指定されたn以下の最大数を見つけるプログラムを作成します。

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

  • 番号nを初期化します。
  • i=nからループを記述します。
    • 現在の番号の桁がすべて偶数かどうかを確認します。
    • 上記の条件が満たされている場合は、番号を印刷してください。
    • それ以外の場合は、iをデクリメントします。

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

#include <bits/stdc++.h>
using namespace std;
int allDigitsEven(int n) {
   while (n) {
      if ((n % 10) % 2){
         return 0;
      }
      n /= 10;
   }
   return 1;
}
int findLargestEvenNumber(int n) {
   int i = n;
   while (true) {
      if (allDigitsEven(i)) {
         return i;
      }
      i--;
   }
}
int main() {
   int N = 43;
   cout << findLargestEvenNumber(N) << endl;
   return 0;
}

出力

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

42

結論

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


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

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

  2. C++のCHAR_BIT

    CHAR_BITは、charのビット数です。これは、C++言語の「limits.h」ヘッダーファイルで宣言されています。 1バイトあたり8ビットです。 これがC++言語のCHAR_BITの例です 例 #include <bits/stdc++.h> using namespace std; int main() {    int x = 28;    int a = CHAR_BIT*sizeof(x);    stack<bool> s;    cout << "T