Gunnar Bittersmann: Verschachtelte for-Schleifen

Beitrag lesen

ich habe nicht so recht verstanden, was du eigentlich tust, aber warum
machst du das nicht einfach so?:

function dez2hex(d) {
  max = Math.pow(16,8);
  var z = new Array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
  var x = "";
  var i = 1, v = d, r = 0;
  while(v > 15) {
    v = Math.floor(v / 16); i++;
  }
  v = d;
  for(j=i;j>=1;j--) {
    x = x + z[Math.floor(v / Math.pow(16,j-1))];
    v = v - (Math.floor(v / Math.pow(16,j-1)) * Math.pow(16,j-1));
  }

return x;
}

Christian,
ich habe zwar verstanden, was du eigentlich tust, aber warum machst du das nicht einfach so:

function dez2hex(d) {
  return d.toString(16);
}

Du bist dir bewusst, dass bei Argumenten kleiner als 16 keine führende 0 da ist? Hm, sieht nicht so aus: ;-)

for(i=0;i<256;++i) {
  for(j=0;j<256;++j) {
    for(k=0;k<256;++k) {
      document.write("<td>#" + dez2hex(i) + dez2hex(j) + dez2hex(k) + "</td>");
    }
  }
}

Und wozu die dreifache Schleife?

for (i = 0; i < 0x1000000; ++i) {
  s = i.toString(16);
  while (s.length < 6)
    s = "0" + s;
  document.write ("<td>#" + s + "</td>");
}

Gunnar

--
„Solang wir noch tanzen können
und richtig echte Tränen flennen,
ist noch alles offen,
ist noch alles drin.“
(Gundermann)