Quello che mi piacerebbe vedere sono i tuoi tentativi di scrivere una sorta di "storia" che abbia un significato abbastanza facile da leggere, ma che crei anche un frammento di codice valido. Ad esempio, questo codice BASIC (BBC):
LET customer = "sober"
REPEAT
INPUT "more beer"
UNTIL customer = "drunk"
(basato su http://img.rakuten.com/PIC/12184048/0/1/300/12184048.jpg per l'idea)
Regole / linee guida:
- Il codice deve essere valido nella lingua specificata: chiunque deve essere in grado di eseguirlo senza la necessità di creare fantasie
- È possibile utilizzare stringhe, commenti o qualsiasi cosa che consenta di aggiungere testo libero al codice, ma per un massimo di 3 parole per stringa (e non è possibile inserire più stringhe o commenti in una riga)
- Il codice non deve generare alcun output sensibile quando viene eseguito. Può anche essere un ciclo infinito, purché il codice sia valido e rappresenti qualcosa di sensato (*) quando letto in inglese.
- Qualsiasi interconnessione nel tuo codice verrà ignorata nella storia.
- Non è necessario definire le variabili. Il codice che crei qui è solo un frammento di codice . Potrai perdere 5 punti per chiamare un / parola / etichetta di variabile non definita / etc. anche se.
- per ogni singola parola chiave / istruzione / funzione / ecc. incorporata, ricevi 15 punti . Questi includono
for
eif
, ma anche funzioni integrate comereplace()
. Le librerie non contano come funzioni integrate, ma sei libero di usarle. - per ogni lettera, numero o carattere di sottolineatura nel tuo codice, ricevi 1 punto .
- per ogni riga / blocco di codice non correlato ( ) alla storia o che utilizza parole chiave / istruzioni / ecc. senza significato ( ) in inglese, perdi 20 punti e i caratteri coinvolti non verranno conteggiati per il 1 punto per lettera / numero. Per essere onesti con le lingue che richiedono tipi di dati come
int
quando si definiscono le variabili, i tipi di dati vengono ignorati completamente. Ciò significa che non ricevono 10 punti per essere una parola chiave, non riceveranno punti per i personaggi coinvolti, ma non causano nemmeno la perdita di punti. - Non è permesso solo fare qualcosa di valido in inglese inserendo un commento per "riempire gli spazi vuoti".
- Poiché si tratta di un concorso di popolarità , per ogni votazione alla tua risposta riceverai 25 punti .
- Assicurati di specificare in quale lingua è il tuo codice e la formula che hai usato per contare la quantità di punti ottenuti dalla tua risposta.
- La risposta con il maggior numero di punti, usando questo sistema sopra, vince.
- Utilizzando questo sistema, il codice di esempio sopra otterrebbe
4*15 + 53*1 = 113
punti iniziali.
(*) parte di eccessiva analisi / oggettivazione: per mantenerlo il più oggettivo possibile, "sensibile" o "non correlato" significa quanto segue: se il pezzo di codice usa parole che non sono inglesi, non è valido (per esempio, const
o int
sono non parole inglesi, ma foreach
o typeof
sono unite 2 parole inglesi, quindi va bene). Inoltre, anche se usi parole inglesi valide come print
o echo
, queste dovranno adattarsi alla storia con il loro significato originale (quindi "mettere inchiostro sulla carta" e "suono riflettente", non "mostrare su uno schermo"). E con "adattamento", intendo che l'argomento della storia deve essere correlato ad esso.
Spero che quest'ultimo "disclaimer" soddisfi i requisiti per la definizione di criteri oggettivi.