Scrivi un programma che testerà la primalità di un numero specificato e fornirà l'output come valore booleano (True è primo). Il tuo test primo può (ma non deve) essere valido per il numero 1.
Ecco il problema: il tuo stesso programma deve riassumere in un numero primo. Converti ogni carattere (inclusi gli spazi) nel suo valore Unicode / ASCII ( tabella ). Quindi, aggiungi tutti quei numeri insieme per ottenere la somma del tuo programma.
Ad esempio, prendi questo programma non eccezionale che ho scritto in Python 3.3:
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)
Se converti tutti i caratteri nel loro corrispondente valore Unicode / ASCII, otterrai:
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
È quindi possibile trovare la somma di tali numeri manualmente o con il proprio programma. Questo programma specifico si somma a 8293, che è un numero primo.
Naturalmente, questo è Code Golf, quindi più piccolo puoi rendere il tuo programma, meglio è. Come sottolineato da altri utenti, questo programma non è molto da golf.
Alcune regole:
Gli input validi includono STDIN e prompt (nessuna funzione, è solo un modo per aggiungere un codice extra gratuito). Gli spazi sono consentiti, ma solo se sono cruciali per la funzionalità del tuo programma. L'output deve essere un output, non solo archiviato in una variabile o restituito (usa print, STDOUT, ecc.)
Le bandiere possono essere utilizzate e devono essere contate letteralmente, non espanse. I commenti non sono ammessi Per quanto riguarda i caratteri non ASCII, dovrebbero essere assegnati al valore nella rispettiva codifica.
Assicurati di elencare le dimensioni del tuo programma e la somma del programma. Proverò per accertarmi che i programmi siano validi.
In bocca al lupo!
Ecco uno snippet per contare la somma del tuo programma e verificare se è primo: