fonction palette web

<?php

define
("CEILING"0xFF);
define("STEP"0x33);
define("CONTRAST"0xFF); // switch between black or white (text-)color

echo palette_web();

/**
 * build an HTML table containing the original safe-web-palette
 * 216 colors based on RGB (Red Green Blue) (3 bytes)
 * @return an HTML table with the 216 colors (216 cells) of the Safe Web Palette 
 */
function palette_web() {
    
$rouge 0;
    
$vert 0;
    
$bleu 0;
    
$couleur 0;
    
    
$palette "<table style=\"font-size:9pt;\">\n";
    
$palette .= "<caption>Safe Web Palette (216 colors)</caption>";
    for (
$rouge 0x00$rouge <= CEILING $rouge+=STEP) {
        for (
$vert 0x00$vert <= CEILING $vert+=STEP) {        
            if (
$vert == 0) { 
                
$palette .= "<tr>"
            }
            for (
$bleu 0x00$bleu <= CEILING $bleu+=STEP) {
                
$couleur = ($rouge << 16) + ($vert << 8) + $bleu;
                if ( (
$rouge $vert $bleu) <= CONTRAST ) {
                    
$fontColor " color:#FFFFFF";
                }
                else {
                    
$fontColor " color:#000000;";
                }
                
$palette .= sprintf("<td style=\"background-color:#%06X; %s \"> #%06X </td>"$couleur$fontColor$couleur);
            }
            if (
$vert == 1) { 
                
$palette .= "</tr>\n"
            }    
        }
    }
    
$palette .= "</table>\n";
    return 
$palette;
}

?>

Liste des exercices

  1. dix fois hello
  2. heure du serveur
  3. chiffres hexadecimaux
  4. table de multiplication
  5. bases de numeration
  6. conversions ASCII
  7. fonctions table multiplication
  8. table ASCII
  9. palette web
  10. fonction table ASCII
  11. fonction palette web
  12. fonction bases de numeration
  13. appels fonction bases de numeration