siehe dazu: https://www.thonky.com/qr-code-tutorial/mask-patterns

... die Farbe wird getauscht, wenn die folgende Bedingung erfüllt ist:
     Zeilennummer i; Spaltennummer j ... jeweils ab 0 gezählt; Start links oben

      Maske 0:   if (  (i + j) % 2 == 0 )
      Maske 1:   if ( i % 2 == 0 )
      Maske 2:   if ( j % 3 == 0 )
      Maske 3:   if (  (i + j) % 3 == 0 )
      Maske 4:   if (  (  (i / 2) + (j / 3)  ) % 2 == 0 )
      Maske 5:   if (  (  (i * j) % 2  ) + (  (i * j) % 3  ) == 0 )
      Maske 6:   if (  (  (  (i * j) % 2  ) + (  (i * j) % 3)  ) % 2 == 0 )
      Maske 7:   if (  (  (  (i + j) % 2  ) + (  (i * j) % 3)  ) % 2 == 0 )


Alle Divisionen sind Integerdivisionen (also OHNE Rest!):
z.B. 30/7 = 4;      27/6 = 4; (nicht 4,5)


a % b = DivisionsREST bei a/b
z.B. 14 % 3 = 2;      14 / 3 = 4 Rest 2
100 % 20 = 0;       100 / 20 = 5 Rest 0
209 % 15 = 14;       209 / 15 = 13 Rest 14