ผู้คนต่างบอกฉันว่าจตุรัสของตัวเลขนั้นคือจำนวนคูณด้วยตัวมันเอง เห็นได้ชัดว่าเป็นเท็จ วิธีที่ถูกต้องในการจัดตารางจำนวนคือการทำให้มันเป็นสี่เหลี่ยมโดยการซ้อนมันไว้ด้านบนของตัวเองจำนวนครั้งเท่ากับจำนวนตัวเลขที่มีและจากนั้นอ่านตัวเลขทั้งหมดจากตารางผลลัพธ์ทั้งในแนวนอน (จาก จากซ้ายไปขวาเท่านั้น) และแนวตั้ง (จากบนลงล่างเท่านั้น) จากนั้นเพิ่มเข้าด้วยกัน ดังนั้นสำหรับหมายเลข 123 คุณต้องสร้างตารางก่อน:
123
123
123
จากนั้นคุณนำแถวและคอลัมน์ทั้งหมดออกจากสแควร์แล้วเพิ่มเข้าด้วยกัน:
123+123+123+111+222+333
ซึ่งให้ผลกับ1035
เรา
สำหรับตัวเลขลบคุณสแต็คตามปกติ (โปรดจำไว้ว่าคุณนับจำนวนหลักเท่านั้นดังนั้นเครื่องหมายลบจะไม่รวมอยู่ในความยาว) จากนั้นอ่านตัวเลขแนวนอนตามปกติ (พร้อมเครื่องหมายลบ) แล้วละเว้นสัญญาณลบสำหรับ ตัวเลขแนวตั้ง ดังนั้นสำหรับจำนวนที่-144
เราได้รับตาราง:
-144
-144
-144
ซึ่งให้เรา-144-144-144+111+444+444
ซึ่งเท่ากับ567
สำหรับตัวเลขที่มีเพียงหนึ่งหลักสี่เหลี่ยมจะเท่ากับจำนวนสองเท่าเสมอ (อ่านครั้งเดียวในแนวนอนและแนวตั้งหนึ่งครั้ง) ดังนั้น4
ให้เรา
4
ซึ่งจะช่วยให้เราซึ่งเท่ากับ 4+4
8
สำหรับตัวเลขที่มีส่วนทศนิยมให้ตั้งสแต็กตามปกติ (โปรดจำไว้ว่าเฉพาะตัวเลขที่นับในจำนวนครั้งที่คุณสแต็กจำนวนเท่านั้นดังนั้นจะไม่นับจำนวนทศนิยม) และละเว้นสัญลักษณ์ทศนิยมเมื่ออ่านตัวเลขแนวตั้ง ตัวอย่างเช่นจำนวน244.2
ทำให้เรา
244.2
244.2
244.2
244.2
ซึ่งจะช่วยให้เราซึ่งเท่ากับ244.2+244.2+244.2+244.2+2222+4444+4444+2222
14308.8
เศษส่วนหรือจำนวนเชิงซ้อนไม่สามารถยกกำลังสอง
งานของคุณ:
ฉันเบื่อที่จะยกกำลังสองของตัวเลขด้วยมือของฉันดังนั้นฉันตัดสินใจที่จะทำให้กระบวนการเป็นไปโดยอัตโนมัติ เขียนโปรแกรมหรือฟังก์ชั่นที่รับค่าทศนิยมหรือสตริงตามที่คุณต้องการเป็นอินพุตและส่งกลับผลลัพธ์ของการยกกำลังสองในแบบของฉัน
ตัวอย่าง:
123 -> 1035
388 -> 3273
9999 -> 79992
0 -> 0
8 -> 16
-6 -> 0
-25 -> 27
-144 -> 567
123.45 -> 167282.25
244.2 -> 14308.8
2 -> 4
-0.45 -> 997.65
0.45 -> 1000.35
เกณฑ์การให้คะแนน:
มือของฉันกำลังคับแคบจากการเขียนสแควร์ทั้งหมดเหล่านั้นและคอมพิวเตอร์ของฉันไม่สนับสนุนการคัดลอก / วางดังนั้นรายการที่มีรหัสน้อยที่สุดสำหรับฉันที่จะพิมพ์ (วัดเป็นไบต์ด้วยเหตุผลบางอย่าง?) ชนะ!
244.2
ไม่ใช่จำนวนลอย ไม่สามารถแปลงเป็นสตริง"244.2"
ได้