Belirtilen sayının ilkliğini test edecek bir program yazın ve çıktıyı bir Boole değeri olarak verin (Gerçek asaldır). Birinci testiniz 1 numara için geçerli olabilir (ancak zorunlu değildir).
İşte yakalamak: programınızın kendisi bir asal sayıya toplanmalıdır. Her karakteri (boşluklar dahil) Unicode / ASCII değerine ( tablo ) dönüştürün. Ardından, programınızın toplamını almak için tüm bu sayıları bir araya getirin.
Örneğin, Python 3.3'te yazdığım bu harika olmayan programı kullanın:
q=None
y=int(input())
for x in range(2,int(y**0.5)+1):
if y%x==0:
q=False
if not q:
q=True
print(q)
Tüm karakterleri karşılık gelen Unicode / ASCII değerine dönüştürürseniz, şunları elde edersiniz:
113 61 78 111 110 101 10 121 61 105 110 116 40 105 110 112 117 116 40 41 41 10 102 111 114 32 120 32 105 110 32 114 97 110 103 101 40 50 44 105 110 116 40 121 42 42 48 46 53 41 43 49 41 58 10 32 32 32 32 105 102 32 121 37 120 61 61 48 58 10 32 32 32 32 32 32 32 32 113 61 70 97 108 115 101 10 105 102 32 110 111 116 32 113 58 10 32 32 32 32 113 61 84 114 117 101 10 112 114 105 110 116 40 113 41
Daha sonra bu sayıların toplamını manuel olarak veya kendi programınızla bulabilirsiniz. Bu özel program bir asal sayı olan 8293’e tekabül ediyor.
Tabii ki, bu Code Golf, yani programınızı ne kadar küçük yaparsanız, o kadar iyi. Diğer kullanıcılar tarafından işaret edildiği gibi, bu program çok golf gibi değil.
Birkaç kural:
Geçerli girişler STDIN ve istemleri içerir (işlev yok, bu sadece ekstra kod eklemenin bir yoludur). Boşluklara izin verilir, ancak yalnızca programınızın işlevselliği için çok önemliyse. Çıktı, bir değişken olmalı, sadece bir değişkende saklanmamış veya iade edilmemiş (baskı, STDOUT vb. Kullanın).
Bayraklar kullanılabilir ve genişletilmemelidir, kelimenin tam anlamıyla sayılmalıdır. Yorumlara izin verilmiyor. ASCII olmayan karakterlere gelince, ilgili kodlamalarındaki değere atanmalıdırlar.
Programınızın boyutunu ve programın toplamını listelediğinizden emin olun. Programların geçerli olduğundan emin olmak için test edeceğim.
İyi şanslar!
İşte programınızın toplamını saymak ve asal olup olmadığını kontrol etmek için bir kod parçası: