/*************************************************************
* Baitronic Rot-13 En/Decoder 
* (c) 2001 Andreas Baier 				    www.baitronic.de
*								 
* Usage: 		encrypt13 (letter):
* 				returns the corresponding letter which is given 
* 				by the rot13 permutation. (letter on the 13th 
* 				place after the given letter).
* 				
* 				
*************************************************************/

char encrypt13(char letter1){

	char template[52], template_big[52];
	char *templ, *templ_big;
	int i;

/* Template für Alphabet vorbereiten*/
strcpy(template,     "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz");
strcpy(template_big, "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ");

/*Zeiger initialisieren, auf 1. Element setzen*/
templ=template;            
templ_big=template_big;

/*Pointer der Templates verschieben, bis Buchstaben übereinstimmen, dann 
 * 13 Buchstaben weiterschieben und pointer zurücksetzen
 * */
i=1;
for(i=1; i<=27;i++){       
	if(letter1==*templ){ 
			templ+=13;
			return(*templ);
			templ-=13;   /*ausgangsstellung*/					
	}
	if(letter1==*templ_big){
			templ_big+=13;
			return(*templ_big);
			templ_big-=13;									
	}
   templ++;		  
   templ_big++;		   
  }
  return ('0'); /*kein Buchstabe, nicht in Templates*/
}

