30
หารจำนวนด้วย 3 โดยไม่ใช้ตัวดำเนินการ *, /, +, -,%
การอ้างอิงคำถามนี้ใน SO (การแจ้งเตือนสปอยเลอร์!): คำถามนี้ถูกถามในการสัมภาษณ์ Oracle คุณจะหารจำนวนด้วย 3 โดยไม่ใช้ *, /, +, -,%, โอเปอเรเตอร์ได้อย่างไร หมายเลขอาจถูกเซ็นชื่อหรือไม่ได้ลงนาม งานสามารถแก้ไขได้ แต่ดูว่าคุณสามารถเขียนรหัสที่สั้นที่สุด กฎ: ดำเนินการหารจำนวนเต็มที่ต้องการ( /3) ห้ามใช้ในผู้ประกอบการที่ไม่ใช่ข้อความ-based *, /, +, -หรือ%(หรือเทียบเท่าของพวกเขาเช่น__div__หรือadd()) นอกจากนี้ยังนำไปใช้ในการเพิ่มและ decrementing ผู้ประกอบการเหมือนหรือi++ i--การใช้ตัวดำเนินการสำหรับการต่อข้อมูลสตริงและการจัดรูปแบบนั้นก็โอเค การใช้อักขระเหล่านี้สำหรับโอเปอเรเตอร์ต่าง ๆ เช่น-โอเปอเรเตอร์unary สำหรับจำนวนลบหรือ*เพื่อแทนตัวชี้ใน C ก็โอเคเช่นกัน ค่าอินพุตอาจใหญ่มาก (สิ่งที่ระบบของคุณสามารถจัดการได้) ทั้งบวกและลบ อินพุตอาจเป็น STDIN หรือ ARGV หรือป้อนด้วยวิธีอื่น สร้างรหัสที่สั้นที่สุดที่คุณสามารถทำได้ด้านบน