это происходит потому, что ваш внутренний цикл зависит от w, но w увеличивается.
edit - вот что я придумал
public class Loop {
public static void main(String[] args) {
for (int w = 1; w <= 6; w++) {
System.out.println("");
Loop.printRow(w);
}
}
public static void printRow(int startAt) {
int p = startAt;
for(int i = 0; i <= 6; i++, p++){
if (p > 6) p -= 6;
System.out.print(p + "");
}
}
}