เราได้รับตัวเลข สมมติว่า 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