Answers for "Quine3"

0

Quine3

const char data [] =
"#vapyhqr <fgqvb.u>\n\nvag\nznva (ibvq)\n{\n  hafvtarq vag v;\n\n  c"
"evags (\"pbafg pune qngn [] =\");\n  sbe ( v=0 ; qngn[v] ; v++ "
")\n    {\n      vs ( v%60 == 0 )\n\tcevags (\"\\a\\\"\");\n      fjvgp"
"u ( qngn[v] )\n\t{\n\tpnfr '\\\\':\n\tpnfr '\"':\n\t  cevags (\"\\\\%p\", q"
"ngn[v]);\n\t  oernx;\n\tpnfr '\\a':\n\t  cevags (\"\\\\a\");\n\t  oernx;\n"
"\tpnfr '\\g':\n\t  cevags (\"\\\\g\");\n\t  oernx;\n\tqrsnhyg:\n\t  cevags"
" (\"%p\", qngn[v]);\n\t}\n      vs ( v%60 == 59 || !qngn[v+1] )\n\t"
"cevags (\"\\\"\");\n    }\n  cevags (\";\\a\\a\");\n  sbe ( v=0 ; qngn["
"v] ; v++ )\n    {\n      vs ( ( qngn[v] >= 'N' && qngn[v] < 'A"
"' )\n\t   || ( qngn[v] >= 'n' && qngn[v] < 'a' ) )\n\tchgpune (q"
"ngn[v] + 13);\n      ryfr vs ( ( qngn[v] >= 'A' && qngn[v] <="
" 'M' )\n\t\t|| ( qngn[v] >= 'a' && qngn[v] <= 'm' ) )\n\tchgpune "
"(qngn[v] - 13);\n      ryfr\n\tchgpune (qngn[v]);\n    }\n  erghe"
"a 0;\n}\n";

#include <stdio.h>

int
main (void)
{
  unsigned int i;

  printf ("const char data [] =");
  for ( i=0 ; data[i] ; i++ )
    {
      if ( i%60 == 0 )
	printf ("\n\"");
      switch ( data[i] )
	{
	case '\\':
	case '"':
	  printf ("\\%c", data[i]);
	  break;
	case '\n':
	  printf ("\\n");
	  break;
	case '\t':
	  printf ("\\t");
	  break;
	default:
	  printf ("%c", data[i]);
	}
      if ( i%60 == 59 || !data[i+1] )
	printf ("\"");
    }
  printf (";\n\n");
  for ( i=0 ; data[i] ; i++ )
    {
      if ( ( data[i] >= 'A' && data[i] < 'N' )
	   || ( data[i] >= 'a' && data[i] < 'n' ) )
	putchar (data[i] + 13);
      else if ( ( data[i] >= 'N' && data[i] <= 'Z' )
		|| ( data[i] >= 'n' && data[i] <= 'z' ) )
	putchar (data[i] - 13);
      else
	putchar (data[i]);
    }
  return 0;
}
Posted by: Guest on May-03-2022

Browse Popular Code Answers by Language