title: C | Comparison between two groups of arrays
body: <p>I'm pretty fresh in the computers world and started to work on c.
  now i'm building a little project about generating code (shown below):</p>
  
  <p>My main: </p>
  
  <pre><code>#include &lt;stdio.h&gt;
  #include "connect.h"
  #define EASY 20
  #define NORMAL 15
  #define HARD 10
  #define CRAZY 30
  int main ()
  {
      int choice = 1;
      char enter, returnV;
      system("cls");
      printf("Welcome to ""THE MAGSHIMIM CODE BREAKER""!!!\n");
      printf("\n");
      printf("A secret password was chosen to protect the credit card of Pancratius,\nthe descendant of Antiochus\n");
      printf("Your mission is to stop Pancratius by revealing his secret password.\n");
      printf("the rules are the follows:\n");
      printf("\n");
      printf("1. In each round you try to guess the secret password (4 distinct digits)\n");
      printf("2. After every guess you'll receive two hints about the password");
      printf("\nHITS    the number of digits in your guess witch were exactly right.\n");
      printf("MISSES  the number of digits in your guess witch belong to the password but weremiss-placed\n");
      printf("3 - if you'll fail to guess the password after a certain number of rounds \tPancratius will buy all the gift to Hanukkah!!!\n");
      printf("\n");
      printf("Press Enter to continue...\n");
      enter = getch();
      if (enter = '\n'){
          do{
               system("cls");
               printf("please choose level:\n");
               printf("1 - easy (20 rounds)\n");
               printf("2 - normal (15 rounds)\n");
               printf("3 - hard (10 rounds)\n");
               printf("4 - crazy (random number of rounds 5-25)\n");
               printf("Make a choice:");
               _flushall();
               scanf("%1d",&amp;choice);         
               if (choice == 1 || choice == 2 || choice == 3 || choice == 4 ){
                   switch(choice){
                       case (1):
                           system("cls");
                           returnV = levels(EASY);
                           break;
                       case (2):
                           system("cls");
                           returnV = levels(NORMAL);
                           break;
                       case (3):
                           system("cls");
                           returnV = levels(HARD);
                           break;        
                       case (4):
                           system("cls");
                           returnV = levels(CRAZY);
                           break;        
                   switch(returnV){
                       case('y'):
                           break;
                       case('n'):
                           return 0;
                           break;                       
                   }    
                  }
              }
               else if (choice != 1 || choice != 2 || choice != 3 || choice != 4 ){
                   system("cls");
                   printf("please choose level:\n");
                   printf("1 - easy (20 rounds)\n");
                   printf("2 - normal (15 rounds)\n");
                   printf("3 - hard (10 rounds)\n");
                   printf("4 - crazy (random number of rounds 5-25)\n");
                   printf("Make a choice:");
                   _flushall();
                   scanf("%1d",&amp;choice);
               }
          } while (returnV != 'n');           
      }  
      system("PAUSE");           
  }
  </code></pre>
  
  <p>header file to connect: </p>
  
  <pre><code>char levels (int level);
  </code></pre>
  
  <p>"levels" function: </p>
  
  <pre><code>#include &lt;stdio.h&gt;
  #include "connect.h"
  #include &lt;time.h&gt;
  #include &lt;stdlib.h&gt;
  char cases (int myCase, char crazyl);
  char levels (int level) {       
      char crazyl = 'n',playerChoice;
      switch (level){
           case (20):
               playerChoice = cases (level,crazyl);
               printf ("\n%c\n",playerChoice);
               return playerChoice;
               break;
           case (15):
               playerChoice = cases (level,crazyl);
               return playerChoice;
               break;
           case (10):
               playerChoice = cases (level,crazyl);
               return playerChoice;
               break;
           case (30):
               crazyl = 'x';
               level = rand() % (25 - 5 + 1);
               playerChoice = cases (level,crazyl);
               return playerChoice;
       }           
  }
  
  int ranGen (int code1,int code2, int code3, int code4);
  char cases (int level,char crazyl)
  {
      unsigned int check;
      char choise = 't',code1,code2,code3,code4;
      if(level &gt; 0){
         while (level &gt; 0){
              if(crazyl == 'n'){
              printf("Write your guess (only 1-6, no ENTER is needed) [%d guess left]\n",level);
              }
              else if (crazyl == 'x'){
             printf("Write your guess (only 1-6, no ENTER is needed) [xxx guess left]\n");
               }
  
      code1 = getch();
      printf("%c",code1);
      code2 = getch();
      printf("\t%c",code2);
      code3 = getch();
      printf("\t%c\t",code3);
      code4 = getch();
      printf("%c\n",code4);      
      if(code1 &gt; '0' &amp;&amp; code1 &lt; '7' &amp;&amp; code2 &gt; '0' &amp;&amp; code2 &lt; '7' &amp;&amp; code3 &gt; '0' &amp;&amp; code3 &lt; '7' &amp;&amp; code4 &gt; '0' &amp;&amp; code4 &lt; '7'){
           check = ranGen(code1,code2,code3,code4);
           level--;
      } else {
           printf("\nnot a good number only numbers between 1-6\n");
           level--;
      }
      if (level == 0) {
          printf("FOR GOD SAKE WE LOST!!!\n");
          printf("The secret password was:\n");
          while (choise != 'y' || choise != 'n') {
              if (choise != 'y' || choise != 'n') {
                   printf("keep playing? (y/n):");
                   _flushall();
                   scanf("%1c",&amp;choise);
                     if (choise == 'y' || choise == 'n' ) {
                         return choise;
                     } else { 
                         continue;
                     }
              }
          }
  
      }      
          }
      }  
  }
  
  int ranGen(int code1,int code2, int code3, int code4) {
      unsigned int ranCode[3],check,code[3];
      code[0] = (int) code1 - 48;
      code[1] = (int) code2 - 48;
      code[2] = (int) code3 - 48;
      code[3] = (int) code4 - 48;       
      do {       
          ranCode[0] = rand() % (6 - 1 + 1);
          ranCode[1] = rand() % (6 - 1 + 1);
          ranCode[2] = rand() % (6 - 1 + 1);
          ranCode[3] = rand() % (6 - 1 + 1);
      } while (code[0] != ranCode[0] || code[1] != ranCode[1] || code[2] != ranCode[2] || code[3] != ranCode[3]);
  }
  </code></pre>
  
  <p>Now my problem is in ranGen function at "levels" paste.</p>
  
  <p>I need to Generate 4 random numbers between 1-6 that different from each other
  (1234 is ok, 1878 not ok, 2234 not ok either) and that the user will guess the digits while if he made a correct digits lets say: 
  </p>
  
  <pre class="lang-none prettyprint-override"><code>generated code = 2345
  guess = 1364 
  </code></pre>
  
  <p>The user will get: 1 HIT and 1 MISS while if user will input 2222 he will get 1 HIT and 3 MISSES.</p>
  
  <p>Now im pretty lost here and any help will be great.</p>