บทนำ:
ฉันจำได้ว่าตอนที่ฉันยังเป็นเด็กฉันจะได้รับเครื่องคิดเลขและกด+ปุ่มต่อไปและดูว่าฉันสามารถนับได้สูงแค่ไหน ตอนนี้ฉันชอบที่จะเขียนโปรแกรมและฉันกำลังพัฒนาสำหรับ iOS
การนับเป็นทักษะพื้นฐานสำหรับทั้งมนุษย์และคอมพิวเตอร์ ถ้าไม่มีมันคณิตศาสตร์ที่เหลือก็ทำไม่ได้ มันทำได้ง่ายๆโดยการเริ่มต้น1และเพิ่ม1เข้าไปซ้ำ ๆ
ความท้าทาย:
นี่เป็นเพียงความท้าทายอย่างง่าย สิ่งที่ฉันต้องการให้โปรแกรมของคุณทำคือพิมพ์จาก1ไปยังสิ่งที่Integerใช้ในอย่างไรก็ตามฉันจะโยนบิดเนื่องจากนับทศนิยมน่าเบื่อ:
การนับไม่สามารถอยู่ในฐาน 10 ได้ แต่ต้องแสดงตัวเองนับเป็นเลขฐานสอง
ดังนั้นในการนับถึง 5 โดยใช้จำนวนเต็ม 32 บิตมันจะเป็นดังนี้:
0000 0000 0000 0000 0000 0000 0000 0001 ..... 1
0000 0000 0000 0000 0000 0000 0000 0010 ..... 2
0000 0000 0000 0000 0000 0000 0000 0011 ..... 3
0000 0000 0000 0000 0000 0000 0000 0100 ..... 4
0000 0000 0000 0000 0000 0000 0000 0101 ..... 5
มันเป็นคอมพิวเตอร์ พวกเขารู้ดีที่สุดไบนารี ข้อมูลที่คุณป้อนอาจเป็นจำนวนเต็ม 32- บิตหรือ 64- บิต มันขึ้นอยู่กับคุณอย่างแท้จริง แต่ถ้าคุณใช้จำนวนเต็ม 32 บิตออกของคุณต้องเป็นจำนวนเต็ม 32 บิตในไบนารีและถ้าคุณใช้จำนวนเต็ม 64 บิตออกของคุณต้องเป็นจำนวนเต็ม 64 บิตในไบนารี
ตัวอย่างอินพุต:
จำนวนเต็ม 32 บิต 5
ตัวอย่างผลลัพธ์:
0000 0000 0000 0000 0000 0000 0000 0001
0000 0000 0000 0000 0000 0000 0000 0010
0000 0000 0000 0000 0000 0000 0000 0011
0000 0000 0000 0000 0000 0000 0000 0100
0000 0000 0000 0000 0000 0000 0000 0101
เกณฑ์การให้คะแนน:
คะแนนของคุณจะเท่ากับรหัสของคุณหลายไบต์ เช่นนี้คือ Code Golf คะแนนต่ำสุดชนะ
คะแนนโบนัส:
หากคุณแสดงในการส่งออกจำนวนเป็นที่เป็นเลขฐาน 10 (ตัวอย่างเช่น0000 0000 0000 0000 0000 0000 0000 0001ในไบนารีเท่ากับฐาน 10 1) 0.8คูณคะแนนของคุณโดย
หากคุณจัดกลุ่มผลลัพธ์ 4 หลักอย่างที่ฉันทำให้คูณคะแนนของคุณด้วย0.8(อีกครั้ง) สิ่งนี้ไม่จำเป็น
อย่าปัดขึ้นและอย่าปัดเศษ คะแนนของคุณคือจำนวนจุดลอยตัว
โชคดี!
int)