I have tab[110] array with random 1 and 0 ints, so: 1001111001011110... and so on untill end of array. I am trying to output 7 different rows of bits according to Hamming Code. My loop works but only for groups starting from bits, which index in array are 2,4,8,16. For 32th loop cuts half of them (so start output from 64, not from 32) and group 64th is skipped completely.
int x=0;
int sum=0;
int pointer=0;
boolean w = true;
System.out.println("Grupy Bitow Parzystych");
for (int i=2; i<=7; i++)
{
System.out.println("\n");
switch(i)
{
//case 1: pointer=1;
case 2: pointer=2;
break;
case 3: pointer=4;
break;
case 4: pointer=8;
break;
case 5: pointer=16;
break;
case 6: pointer=32;
break;
case 7: pointer=64;
break;
default: System.out.println("DEFAULT SWiTCH");
break;
}
sum=0;
x=0;
for (int p=0; p<tab.length; p++)
{
if (p==0) System.out.println("Grupa bitow: "+pointer);
if (p<=pointer-1) continue;
x++;
if (x == pointer)
{
x = 0;
w = !w;
}
if (p%20==0) System.out.println("");
if (w)
{
iterator = p+1;
System.out.print(tab[p]+"("+iterator+")"+",");
sum++;
}
if (p==tab.length-1) System.out.println("Suma bitow pary "+pointer+": "+sum);
}
}