Java สอนเขียนโปรแกรมตรวจสอบจำนวนเฉพาะ (Prime Number)

โจทย์ แบบฝึกหัดและวิธีทำเขียนโปรแกรมตรวจสอบจำนวนเฉพาะ (Prime Number) คือจำนวนธรรมชาติที่มีตัวหารที่เป็นบวกอยู่ 2 ตัว คือ 1 กับตัวมันเอง

May 06, 2015

แก้ไขล่าสุด มีผู้อ่าน 25,860  |  JAVA PROGRAMMING EXAM

ตอนเด็กๆ ครูให้หาจำนวนเฉพาะด้วยมือ ทดในเศษกระดาษ ตอนโตอาจารย์เขียนโปรแกรมหา เป็นโจทย์สนุกๆ อีกข้อหนึ่งครับ ลองทำกันดูนะ

 

โจทย์

การเขียนโปรแกรมตรวจสอบจำนวนเฉพาะ (Prime Number) 

"จำนวนเฉพาะ (Prime Number) คือจำนวนธรรมชาติที่มีตัวหารที่เป็นบวกอยู่ 2 ตัว คือ 1 กับตัวมันเอง" 

วิเคราะห์

โจทย์ข้อนี้สังเกตุจะพบว่า ถ้าเอาตัวเลขตั้งแต่ 2 ถึงตัวมันเองมาหาร ถ้าหารแล้วไม่ลงตัวทั้งหมดแสดงว่าจำนวนนั้นเป็นจำนวนเฉพาะ เราสามารถนำ for มาเพื่อช่วยวนหารไปเรื่อยๆ เพื่อเช็คว่าหารลงตัวหรือไม่

 

 

Source Code

package com.olanlab.share.exam;

import java.util.Scanner;

public class PrimeNumber {

   public static void main(String[] args) {
      Scanner scan = new Scanner(System.in);
      boolean prime = true;
      System.out.print("Input number to check Prime Number : ");
      int number = scan.nextInt(); // รับค่าที่ต้องการตรวจสอบจำนวนเฉพาะผ่านคีบอร์ด
      int limit = (int) Math.sqrt(number); // จำนวนสุดท้ายใช้หารเพื่อตรวจสอบจำนวนเฉพาะ
      
      for (int i = 2; i <= limit; i++) { // วนลูปตรวจสอบจำนวนเฉพาะเริ่มต้นที่ 2 ถึงจำนวนสุดท้าย
         if (number % i == 0) { // ถ้ามีตัวไหนหารลงตัวแสดงว่าไม่ใช้จำนวนเฉพาะ
            prime = false;
            break;
         }
      }

      System.out.println(number + " is prime = " + prime);
   }
}

Output

Input number to check Prime Number : 11
11 is prime = true

 

เนื้อหาบทความที่เกี่ยวข้องกับโจทย์

Java - สอน Java สำหรับผู้เริ่มต้น ตอนที่ 3 โครงสร้าง Java

Java - สอน Java สำหรับผู้เริ่มต้น ตอนที่ 4 Variable และ Memory Concept

Java - สอน Java สำหรับผู้เริ่มต้น ตอนที่ 7.3 Control Statement แบบทำซ้ำ for


แบ่งปัน

ชอบ +1

บันทึก

ฝากคำถาม คำแนะนำ ได้ที่

Facebook : Share.OlanLab.Com
LINE ID : @olanlab
อีเมล์ : olan@olanlab.com
Share คลังความรู้ด้านเทคโนโลยี สารสนเทศ นวัตกรรมคอมพิวเตอร์ สอนเขียนโปรแกรม Php Java Html CSS Javascript C C++ Objective-C และอื่นๆ บนระบบปฏิบัติการ Window Linux Unix CentOS IOS Android
โดยผู้เขียนที่มีความเชี่ยวชาญเฉพาะ ให้บริการพื้นที่สำหรับนักเขียนที่ต้องการแบ่งปันความรู้ พร้อมให้คำปรึกษาแก่ผู้ที่สนใจ โดยไม่เสียค่าใช้จ่าย