Sto provando ad eseguire il seguente codice che è l'entrata del 1988 di Obfuscated C Code Contest.Come convertire da K & R C a ANSI C?
#define _ -F<00||--F-OO--;
int F=00,OO=00;main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO()
{
_-_-_-_
_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_
_-_-_-_
}
Dalla descrizione della voce, questo codice sta calcolando il pi guardando la propria area. L'ho compilato con successo senza modificare il codice. Ma quando eseguo, mi dà un valore di 0.25, quello che mi aspetto è 3.14. La descrizione del codice dice che è in K & R C e non funziona correttamente in ANSI C senza alcune modifiche. Penso di dover fare quelle modifiche per eseguirlo correttamente. Non ho alcuna esperienza precedente con K & R C. Quindi qualcuno può aiutarmi a modificare il codice sopra ANSI C o a indicare i problemi, se presenti. Sto usando Microsoft Visual Studio 2008 per eseguire questo.
Per l'amore di $ divinità perché? Non riesco a vedere questo come il meno utile. Le competizioni offuscate vanno bene per dimostrare quanto sei "intelligente", ma hanno davvero poca rilevanza nel mondo reale. Il mio consiglio, trova un vero problema e risolvilo. – paxdiablo
@Pax: + Inf per $ DEITY :) – Jacob
@Pax: -Inf per blasfemia infinita :) – DVK