Java โปรแกรมตรวจสอบเลขเด่น
หมายเลขเฉพาะคืออะไร?
จำนวนเฉพาะคือจำนวนที่หารด้วย 1 หรือตัวมันเองได้เท่านั้น เช่น 11 หารด้วย 1 หรือตัวมันเองได้เท่านั้น จำนวนเฉพาะอื่นๆ ได้แก่ 2, 3, 5, 7, 11, 13, 17….
หมายเหตุ 0 และ 1 ไม่ใช่จำนวนเฉพาะ 2 เป็นจำนวนเฉพาะคู่เพียงตัวเดียว
Java โปรแกรมเช็คว่าเป็นจำนวนเฉพาะหรือไม่
ตรรกะของโปรแกรม:
- เราจำเป็นต้องหารตัวเลขอินพุต เช่น 17 จากค่า 2 ถึง 17 แล้วตรวจสอบส่วนที่เหลือ ถ้าเศษเป็น 0 ก็ไม่ใช่จำนวนเฉพาะ
- ไม่มีจำนวนใดที่หารเกินครึ่งหนึ่งของตัวมันเอง ดังนั้นเราจึงจำเป็นต้อง ห่วง ผ่านเพียง
numberToCheck/2- หากอินพุตเป็น 17 ครึ่งหนึ่งคือ 8.5 และลูปจะวนซ้ำผ่านค่า 2 ถึง 8 - หาก numberToCheck หารด้วยตัวเลขอื่นได้อย่างสมบูรณ์ แฟล็ก isPrime จะถูกตั้งค่าเป็น
falseและออกจากวงแล้ว
public class PrimenumberToCheckCheck {
public static void main(String[] args) {
int remainder;
boolean isPrime=true;
int numberToCheck=17; // Enter the numberToCheckber you want to check for prime
//Loop to check whether the numberToCheckber is divisible any numberToCheckber other than 1 and itself
for(int i=2;i<=numberToCheck/2;i++)
{
//numberToCheckber is divided by itself
remainder=numberToCheck%i;
System.out.println(numberToCheck+" Divided by "+ i + " gives a remainder "+remainder);
//if remainder is 0 than numberToCheckber is not prime and break loop. Else continue the loop
if(remainder==0)
{
isPrime=false;
break;
}
}
// Check value true or false, if isprime is true then numberToCheckber is prime otherwise not prime
if(isPrime)
System.out.println(numberToCheck + " is a Prime numberToCheckber");
else
System.out.println(numberToCheck + " is not a Prime numberToCheckber");
}
}
ผลลัพธ์ที่คาดหวัง:
17 Divided by 2 gives a remainder 1 17 Divided by 3 gives a remainder 2 17 Divided by 4 gives a remainder 1 17 Divided by 5 gives a remainder 2 17 Divided by 6 gives a remainder 5 17 Divided by 7 gives a remainder 3 17 Divided by 8 gives a remainder 1 17 is a Prime numberToCheckber
ตรวจสอบโปรแกรมของเราเพื่อค้นหา สำคัญ Numbers จาก 1 ไป 100
