Java ร บจำนวนเต มบวกท ม ค าอย ระหว าง 1-100

เลขเดิม = 0 Math.abs( 0 ) = 0 เลขเดิม = -4499990 Math.abs( -4499990 ) = 4499990 เลขเดิม = -92.45 Math.abs( -92.45 ) = 92.45 เลขเดิม = -63.7777777777 Math.abs( - 63.7777777777 ) = 63.7777777777

ข้อนี้คือ ต้องรู้จักกับการจัดการเลขเยอะๆ ที่ใส่ใน int กับ long ไม่พอ ถ้าใช้ python ก็จะได้เปรียบกว่าคนอื่นนิดหน่อย

ข้อ 2.1-2.2

2.1 มีคำกล่าวว่า เลขคู่ ทุกๆตัวที่มากกว่าหรือเท่ากับ 4 สามารถเขียนได้ในรูปของจำนวนเฉพาะ (Prime number) 2 ตัวบวกกัน เช่น 4 = 2 + 2 6 = 3 + 3 14 = 11 + 3 ยังไม่มีมนุษย์คนไหนสามารถพิสูจน์ได้ว่า คำกล่าวนี้เป็นจริง

เราจะทำการทดลองว่าเลขคู่ที่สุ่มขึ้นมานั้นสามารถหาจำนวนเฉพาะ 2 ตัวที่มีผลรวมเท่ากับตัวมันเองได้หรือไม่ เมื่อรับค่าเลขคู่ ให้โปรแกรมตอบเป็นจำนวนเฉพาะ 2 ตัว หรือ “Sorry” หากไม่มีจำนวนเฉพาะเหล่านั้นอยู่จริง (6 คะแนน)

ในบางกรณี เลขคู่ มีคู่ของจำนวนเฉพาะ มากกว่า 1 คู่ เช่น 14 = 7 + 7 และ 14 = 3+ 11 สามารถตอบกรณีใดก็ได้

ผู้ให้คะแนนจะกำหนดเลขคู่ ไม่เกิน 7 หลัก ทั้งหมด 3 จำนวน คำตอบที่ถูกต้องจะได้คำตอบละ 2 คะแนน

ข้อนี้เอา list ของจำนวนเฉพาะ แบบข้อแรกก่อนแล้วก็ check ใน list อีกทีครับ

for (int j = 0; j < prime.size(); j++) { int k = prime.get(j); if (prime.contains(n - k)) {

System.out.println(n + " = " + k + "+" + (n - k));
return;
} } System.out.println("Sorry !!!!!");

2.2 จงเขียนโปรแกรมรับค่า n ซึ่งเป็นจำนวนเต็มบวก ไม่เกิน 2 หลัก และให้โปรแกรมแสดงผลดังนี้ (4 คะแนน)

n=3 x -x-x- x-x-x -x-x- x n=4 -x- x-x -x-x- x--x--x -x-x- x-x -x- n=5 x -x-x- x-x-- -x-x- x-x-x -x-x- x-x-- -x-x- x

ข้อนี้ยังไงก็ขอไม่เฉลยแล้วกันครับ น่าจะได้กันอยู่แล้ว

ข้อ 3

ในตารางจตุรัส 20 x 20 ด้านล่าง

34 90 61 34 10 42 01 90 54 69 20 50 58 70 58 42 48 82 73 84 20 43 78 99 49 30 15 70 41 27 61 36 96 66 44 78 58 76 79 05 76 39 32 74 28 16 90 88 37 94 47 51 78 04 17 61 65 39 35 05 36 01 64 17 37 55 90 39 12 39 71 78 77 25 09 36 20 67 44 06 72 06 78 03 62 28 99 87 39 65 44 07 24 72 04 50 46 51 83 35 57 39 22 39 17 92 44 59 24 36 81 66 87 13 57 87 55 14 15 91 83 25 10 22 35 13 69 24 47 49 48 78 14 23 56 39 24 45 49 05 19 95 97 39 82 73 66 33 01 80 98 30 44 11 56 39 51 00 41 73 41 07 36 88 74 65 88 26 12 29 16 16 87 94 25 10 27 44 18 34 00 06 06 46 93 53 84 93 87 92 57 42 74 44 11 30 50 69 65 53 34 52 89 81 48 98 53 13 91 35 15 43 26 05 19 30 32 00 12 01 86 27 93 90 26 52 84 73 65 04 33 99 50 34 79 32 27 54 69 86 95 82 36 96 75 15 68 17 28 35 46 15 49 54 68 07 29 42 56 85 53 60 22 29 26 78 87 60 37 73 35 57 91 60 49 64 29 23 87 94 75 07 72 03 82 79 83 62 06 06 93 35 93 31 63 65 56 72 60 62 97 51 78 55 65 06 43 29 53 08 90 46 80 96 71 55 75 45 74 76 39 15 27 39 67 23 30 96 10 08 75 06 67 02 16 40 67 76 97 80 15 11 73 19 70 95 64 16 00 30 00 16 59 31 77 18 40 86 98 98 05 32 40 25 12 26 00 68 64 23 59 40 29 30 42 11 26 22 80 38 36 77 48 18 62 50 00 85 67 72 39 93 03 17 26 38 89 96 86 68

มีเลข 4 ตัวตามแนวทะแยงมุม ซึ่งแสดงด้วยตัวหนาและขีดเส้นใต้ ผลรวมของเลข 4 ตัวนั้นคือ 52 + 68 + 60 + 06 = 186

จงหาผลรวมที่มากที่สุด และน้อยที่สุด ของเลขที่ติดกัน 4 ตัวตามแนวใดก็ได้ (ขึ้น, ลง, ซ้าย, ขวา, ทะแยงซ้าย, ทะแยงขวา) แต่จะต้องติดกันเท่านั้น จากตารางที่กำหนดให้

ผู้ให้คะแนนจะให้ไฟล์ .TXT บรรจุข้อมูลสำหรับทดสอบ จำนวน 25 ชุด โดยเป็นข้อมูลบรรทัดแรก (จำนวนแมว) และบรรทัดที่ 2 (หมายเลขที่ปลอกคอแมวแต่ละตัว) สลับกันไปจนครบ 25 ชุด คำตอบที่ถูกต้อง จะได้คะแนนชุดละ 1 คะแนน

จำนวนเต็มคือจำนวนที่ไม่มีเศษส่วน ใน Java จำนวนเต็มจะแสดงในพื้นที่ 32 บิต นอกจากนี้ยังแสดงในรูปแบบไบนารีเสริมของ 2 ซึ่งหมายความว่าหนึ่งบิตจาก 32 บิตเหล่านี้เป็นบิตเครื่องหมาย ดังนั้นจึงมีค่าที่เป็นไปได้ 231-1 ดังนั้นจึงไม่มีจำนวนเต็มที่มากกว่าจำนวน 231-1 ใน Java