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

C数値がその数字のいずれかで割り切れるかどうかをチェックするプログラム


数nが与えられた場合、タスクは、数のいずれかの桁が数を完全に分割するかどうかを見つけることです。与えられた数のように、128625は5で割り切れますが、これもその数に含まれています。

Input: 53142
Output: yes
Explanation: This number is divisible by 1, 2 and 3
which are the digits of the number
Input: 223
Output: No
Explanation: The number is not divisible by either 2 or 3

以下で使用されるアプローチは次のとおりです

  • ユニットの場所から始めて、ユニットの場所の番号を取得します。
  • 数値が除算可能かどうかを確認します
  • 数値を10で割ります
  • 番号が0になるまで手順1に進みます

アルゴリズム

Start
In function int divisible(long long int n)
   Step 1-> Declare and initialize temp = n
   Step 2 -> Loop while n {
      Set k as n % 10
      If temp % k == 0 then,
         Return 1
      Set n = n/ 10
   End loop
   Return 0
In Function int main()
   Step 1-> Declare and initialize n = 654123
   Step 2-> If (divisible(n)) then,
      Print "Yes”
   Step 3-> Else
   Print "No”

#include <stdio.h>
int divisible(long long int n) {
   long long int temp = n;
   // check if any of digit divides n
   while (n) {
      int k = n % 10;
      if (temp % k == 0)
         return 1;
         n /= 10;
   }
   return 0;
}
int main() {
   long long int n = 654123;
   if (divisible(n)) {
      printf("Yes\n");
   }
   else
      printf("No\n");
   return 0;
}

出力

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

Yes

  1. プラス完全数をチェックするCプログラム

    n桁の数xが与えられた場合、私たちのタスクは、与えられた数のプラス完全数かどうかを確認することです。数値がプラス完全数であることを確認するために、すべての桁のn乗d(d ^ n)を見つけて、すべての桁を合計します。合計がnに等しい場合、その数値はプラス完全数です。プラス完全数は、任意の数のアームストロングを見つけるのと似ています。 以下の例のように- 例 Input: 163 Output: Number is not a perfect_number Explanation: 1^3 + 6^3 + 3^3 is not equal to 163 Input: 371 Output:

  2. 配列内のすべての桁を使用して3つの数値で割り切れる可能性があるかどうかを確認するPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 整数の配列入力が与えられた場合、3で割り切れるように、これらの数値で使用可能なすべての数字を使用して整数を作成できるかどうかを確認する必要があります。 ここでは、整数の配列と配列の長さという2つの引数を取る関数を生成します。 以下に示す実装は、精神数学の概念に基づいて機能します。ここでは、桁の合計が3で割り切れる場合、数値は3で割り切れることがわかります。 次に、以下の実装を見てみましょう- 例 def isPossibleToMakeDivisible(arr, n): &nbs