N と C の最大の奇数桁の積

WBOY
リリース: 2023-08-29 13:25:06
転載
1461 人が閲覧しました

N と C の最大の奇数桁の積

数値 N が与えられた場合、その数値とその最大の奇数桁を乗算する必要があります。奇数の桁がない場合は、-1 を出力します。

N を「153」で初期化し、この数値の最大の奇数桁は 5 であるため、結果は 153 と 5 の積、つまり 153 * になります。 5 = 765 で、数値に 246 のような奇数桁がない場合、出力は -1.

Input − N = 198

Output## となる必要があります。 # − 1782

説明 − 198 * 9 = 1782

入力 − N = 15382

出力 − 76910

説明 − 15382 * 5 = 76910

問題を解決するために以下に使用されるアプローチは次のとおりです。-

  • 入力 N を取得します。

  • ##すべての桁を調べて奇数の桁を探します
  • ##最大の奇数要素を見つけます。
  • 最大のオフ要素と元の番号 N を乗算します。
  • 奇数の要素がない場合は、結果を -1 で更新します。
  • ##結果を返します。
  • アルゴリズム
  • Start
    In function int largestodd(int n)
       Step 1→ Declare and Initialize large as -1
       Step 2→ Loop While n > 0
          Set digit as n % 10
          If digit % 2 == 1 && digit > large then,
             Set large as digit
          Set n as n / 10
       Step 3→ Return large
    In function int findproduct(int n)
       Step 1→ Declare and Initialize large set largestodd(n)
       Step 2→ If large == -1 then,
          Return -1
       Step 3→ Return (n * large)
    In function int main()
       Step 1→ Initialize n as 15637
       Print the results from calling findproduct(n)
    Stop
    ログイン後にコピー

演示

#include <stdio.h>
int largestodd(int n){
   // If all digits are even then
   // we wil return -1
   int large = -1;
   while (n > 0) {
      // checking from the last digit
      int digit = n % 10;
      // If the current digit is odd and
      // is greater than the large
      if (digit % 2 == 1 && digit > large)
         large = digit;
      n = n / 10;
   }
   // To return the maximum
   // odd digit of n
   return large;
}
int findproduct(int n){
   int large = largestodd(n);
   // If there are no odd digits in n
   if (large == -1)
      return -1;
   // Product of n with its largest odd digit
   return (n * large);
}
int main(){
   int n = 15637;
   printf("%d</p><p>", findproduct(n));
   return 0;
}
ログイン後にコピー

输出力

上記のコードを実行すると、以下の出力が生成されます-

109459
ログイン後にコピー

以上がN と C の最大の奇数桁の積の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!