在 Java 中计算 n 中至少有一位数字与 n 相同的除数

javaobject oriented programmingprogramming更新于 2024/4/19 17:45:00

给定一个数字,假设为 num,任务是计算给定数字的除数,从而计算 num 中至少有一位数字与 n 相同的除数。

输入 − num = 24

输出 − 计数为 4

解释 − 我们将执行以下步骤

  • 首先,计算给定数字的除数

    • 24 的除数是 − 1、2、3、4、6、8、12、24

  • 其次,检查哪个除数至少有一个数字与数字的数字匹配

    • 2、4、12、24 是包含与数字中的数字匹配的数字的除数

输入 − num = 10

输出 − 计数为 2

解释 −我们将执行以下步骤 

  • 首先,计算给定数字的除数

    • 24 的除数为:1、2、5、10

  • 其次,检查哪个除数至少有一位数字与数字的数字匹配

    • 1 和 10 是包含与数字中的数字匹配的数字的除数。

示例

package test;
import java.util.*;
import java.util.List;
import java.util.Scanner;
public class Testdigit{
   static int digitCheck(int m,int arr[]){
      while (m > 0){
         if (arr[m % 10]==1){
            return(1);
         }
         m = m / 10;
      }
      return(0);
   }
   public static void main (String[] args){
      Scanner scan=new Scanner(System.in);
      int n=scan.nextInt();
      int arr[] = new int[10];
      int m = n;
      while (m > 0){
         arr[m % 10] = 1;
         m = m / 10;
      }
      int count = 0;
      for (int i = 1; i <= Math.sqrt(n);i++){
         if (n % i == 0){
            if (digitCheck(i, arr)==1){
               count++;
            }
            if (n / i != i){
               if (digitCheck(n/i, arr)==1){
                  count++;
               }
            }
         }
      }
      System.out.println(ans);
   }
}

输出

如果我们运行上述代码,我们将得到以下输出 −

Enter any number: 24
Count 5

相关文章