tanıtım:
Hatırlıyorum, çocukken bir hesap makinesi alıp +düğmeye basmaya devam edecektim ve ne kadar yüksek olabileceğimi görüyorum. Şimdi programlamayı seviyorum ve iOS için geliştiriyorum.
Sayma hem insanlar hem de bilgisayarlar için temel bir beceridir. Onsuz, matematik geri kalanı yapılamaz. Sadece başlayıp 1tekrar tekrar ekleyerek 1yapılır.
Meydan okuma:
Bu basit bir zorluktur. Programınızın yapmasını istediğim şey 1, ne Integergerekiyorsa yazdırmaktır . Ancak, ondalık sayım biraz sıkıcı olduğundan, içine bir bükülme atacağım:
Sayma, taban 10'da olamaz, ikili sayımı göstermelidir.
Yani, 32-bit tamsayılar kullanarak 5'e kadar saymak şöyle olur:
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
Bu bir bilgisayar. İkili en iyi bilirler. Girişiniz 32 bit veya 64 bit tam sayı olabilir. Gerçekten size kalmış. Ancak 32 bit tamsayı kullanırsanız, çıktı gerekir 32 bitlik tamsayılar olmak ikilik sistemde ve 64 bit tamsayı kullanıyorsa, bu çıkışı olmalıdır 64 bit tamsayı ikilik sistemde .
Örnek giriş:
32 bitlik bir tam sayı, 5
Örnek çıktı:
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
puanlama:
Puanınız, kodunuzun bulunduğu bayt sayısına eşittir. Bu Code Golf olduğu için en düşük puan kazanır.
Bonus puanlar:
Çıktıda, taban 10 sayısı olarak (örneğin, 0000 0000 0000 0000 0000 0000 0000 0001ikili olarak taban 10'a eşittir 1) sayı gösterirseniz, puanınızı çarpın 0.8.
4 basamaklı çıktıyı benim yaptığım gibi gruplandırırsanız, puanınızı 0.8(tekrar) ile çarpın . Bu gerekli değil.
Yuvarlamayın ve yuvarlamayın. Puanınız kayan noktalı bir sayıdır.
İyi şanslar!
intörneğin Python 3'ler ) ne olur?