ตรวจรางวัลลอตเตอรี
โจทย์
รางวัลจะถูกมอบให้ตามการจับคู่ตัวเลขอย่างแม่นยำ โดยมีระดับรางวัลที่แตกต่างกันสำหรับการจับคู่แต่ละแบบ มีรางวัลที่พบบ่อยช่น
- รางวัลที่ 1 ที่จับคู่ทุกหลักในสลาก มีมูลค่า 6 ล้านบาท
- รางวัล 3 ตัวหน้าหรือหลัง มีมูลค่า 4,000 บาท
- รางวัล 2 ตัวหลัง มีมูลค่า 2,000 บาท
สำหรับงวดนี้
- รางวัลที่ 1 คือ 199606
- รางวัล 3 ตัวหน้า คือ 173 หรือ 220
- รางวัล 3 ตัวหลัง คือ 388 หรือ 094
- รางวัล 2 ตัวหลัง คือ 94
อินพุต: เลขบนสลากกินแบ่ง
เอาต์พุต: จำนวนเงินรางวัล หากไม่มีการถูกรางวัล ให้พิมพ์ 0
| Input | Output |
|---|---|
| 199606 | 6000000 |
| 173606 | 4000 |
| 199388 | 4000 |
| 199389 | 0 |
โค้ด
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String lotto = scanner.nextLine();
String firstThreeLotto = lotto.substring(0, 3);
String lastThreeLotto = lotto.substring(3, 6);
String lastTwoLotto = lotto.substring(4, 6);
int prize = 0;
if(lotto.equals("199606")) {
prize += 6000000;
}
if (firstThreeLotto.equals("173") || firstThreeLotto.equals("220")) {
prize += 4000;
}
if (lastThreeLotto.equals("388") || lastThreeLotto.equals("094")) {
prize += 4000;
}
if (lastTwoLotto.equals("94")) {
prize += 2000;
}
System.out.println(prize);
}
}คำอธิบาย
ขั้นตอนที่ 1: การเริ่มต้นโปรแกรม
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);- โค้ดเริ่มต้นด้วยการ import คลาส
Scannerซึ่งเป็นเครื่องมือที่ช่วยให้เราสามารถรับข้อมูลจากผู้ใช้ได้ - เราสร้างคลาสชื่อ
Mainและกำหนดเมธอดmainซึ่งเป็นจุดเริ่มต้นของโปรแกรม - เราสร้างตัวแปร
scannerเพื่อใช้รับข้อมูลจากผู้ใช้
ขั้นตอนที่ 2: การรับข้อมูลเลขล็อตเตอรี่
String lotto = scanner.nextLine();- เราใช้
scanner.nextLine()เพื่อรับเลขล็อตเตอรี่จากผู้ใช้ และเก็บไว้ในตัวแปรlotto
ขั้นตอนที่ 3: การแยกส่วนเลขล็อตเตอรี่
String firstThreeLotto = lotto.substring(0, 3);
String lastThreeLotto = lotto.substring(3, 6);
String lastTwoLotto = lotto.substring(4, 6);- เราแยกเลขล็อตเตอรี่ออกเป็นส่วนๆ เพื่อเตรียมตรวจรางวัล:
firstThreeLotto: 3 ตัวแรก (ตำแหน่งที่ 0, 1, 2)lastThreeLotto: 3 ตัวท้าย (ตำแหน่งที่ 3, 4, 5)lastTwoLotto: 2 ตัวท้าย (ตำแหน่งที่ 4, 5)
ขั้นตอนที่ 4: การเตรียมตัวแปรสำหรับเก็บมูลค่ารางวัล
int prize = 0;- เราสร้างตัวแปร
prizeเพื่อเก็บมูลค่ารางวัลรวม เริ่มต้นที่ 0 บาท
ขั้นตอนที่ 5: การตรวจรางวัลที่ 1
if(lotto.equals("199606")) {
prize += 6000000;
}- ถ้าเลขล็อตเตอรี่ตรงกับ “199606” (รางวัลที่ 1) เราจะเพิ่มเงินรางวัล 6 ล้านบาท
ขั้นตอนที่ 6: การตรวจรางวัล 3 ตัวหน้า
if (firstThreeLotto.equals("173") || firstThreeLotto.equals("220")) {
prize += 4000;
}- ถ้า 3 ตัวแรกตรงกับ “173” หรือ “220” เราจะเพิ่มเงินรางวัล 4,000 บาท
ขั้นตอนที่ 7: การตรวจรางวัล 3 ตัวท้าย
if (lastThreeLotto.equals("388") || lastThreeLotto.equals("094")) {
prize += 4000;
}- ถ้า 3 ตัวท้ายตรงกับ “388” หรือ “094” เราจะเพิ่มเงินรางวัล 4,000 บาท
ขั้นตอนที่ 8: การตรวจรางวัล 2 ตัวท้าย
if (lastTwoLotto.equals("94")) {
prize += 2000;
}- ถ้า 2 ตัวท้ายตรงกับ “94” เราจะเพิ่มเงินรางวัล 2,000 บาท
ขั้นตอนที่ 9: การแสดงผลรางวัล
System.out.println(prize);- สุดท้าย เราแสดงมูลค่ารางวัลรวมที่คำนวณได้
หลักการทำงาน
ปรับปรุงล่าสุด