ท้าทาย
ความท้าทายคือการเขียนโปรแกรมที่ใช้เวลาเป็นบวกตัวเลขa
และไม่ใช่ศูนย์จำนวนb
และเอาท์พุทa^b
(ยกกำลังข) คุณสามารถใช้+ - * / abs()
เป็นฟังก์ชัน / ตัวดำเนินการทางคณิตศาสตร์เท่านั้น สิ่งเหล่านี้สามารถใช้ได้กับค่าสเกลาร์เท่านั้น แต่ไม่สามารถใช้ได้กับรายการหรืออาร์เรย์ทั้งหมด
ตัวอย่าง:
1.234 ^ 5.678 = 3.29980
4.5 ^ 4.5 = 869.874
4.5 ^-4.5 = 0.00114959
ที่เกี่ยวข้อง: http://xkcd.com/217/
รายละเอียด
คุณสามารถเขียนฟังก์ชั่นหรือโครงสร้างที่คล้ายกันเพื่อใช้ในคอนโซล หากคุณไม่สามารถใช้อินพุตคอนโซลคุณสามารถสมมติว่าทั้งสองหมายเลขถูกบันทึกในตัวแปรและ ouptut ผ่านเอาต์พุตมาตรฐานหรือเขียนไปยังไฟล์ ผลลัพธ์จะต้องมีความถูกต้องอย่างน้อย 4 หลักนัยสำคัญ คุณสามารถสันนิษฐานได้ว่าทั้งคู่a
และb
ไม่ใช่ศูนย์ ไม่สามารถรันไทม์ที่มากกว่า 1 นาทีได้อย่างมีนัยสำคัญ จำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ โปรดอธิบายโปรแกรมและอัลกอริทึมของคุณ
แก้ไข: ต้องพิจารณาเฉพาะฐานบวก คุณสามารถสันนิษฐานa>0
ได้ ระวังว่าตัวเลขทั้งสองไม่จำเป็นต้องเป็นจำนวนเต็ม !!!
-0.5 ** 0.5
จะเป็น