diff --git a/md/0040.md b/md/0040.md new file mode 100644 index 0000000..66d0368 --- /dev/null +++ b/md/0040.md @@ -0,0 +1,11 @@ +เราต้องการรู้ว่าตัวเลขแต่ละตัวนเป็นจํานวนเฉพาะหรือเป็นจํานวนคี่หรือไม่ สังเกตว่าถ้า $x$ เป็นจำนวนเฉพาะที่ไม่ใช่ 2, $x$ จะต้องหารด้วย 2 ไม่ลงตัวตามนิยามของจำนวนเฉพาะ นั่นคือ $x$ จะต้องเป็นเลขคี่ ดังนั้นเซ็ทของตัวเลขที่เป็นจำนวนเฉพาะหรือจำนวนคี่ มีค่าเท่ากับเซ็ทที่มีจำนวนคี่ทั้งหมด และเลข 2 เขียนเป็นสมการได้ว่า $\set{x \mid x \text{ is odd or prime}} = \set{x \mid x \text{ is odd}} \cup \set{2}$ + +ดังนั้นเราไม่จำเป็นต้องรู้ว่าตัวเลขแต่ละตัวเป็นจำนวนเฉพาะหรือไม่ เราสามารถเช็คแค่ว่ามันคือ 2 หรือไม่ และมันเป็นเลขคี่หรือไม่ และการเช็คว่าตัวเลขเป็นเลขคี่หรือไม่ก็ทำได้โดยการสนใจเฉพาะหลักสุดท้ายของตัวเลข + +```cpp +string number; cin >> number; +int last_digit = number[number.size()-1] - '0'; +if (number == "2") cout << "T\n"; +else if (last_digit % 2 == 1) cout << "T\n"; +else cout << "F\n"; +```