Le défi
Étant donné les deux chaînes hexadécimales majuscules (les deux 6 caractères de long, XXXXXX et YYYYYY) représentant les valeurs RVB (allant de 000000
à FFFFFF
inclus), et un entier positif non nul N, afficher une transition linéaire des N + 2 couleurs générées de XXXXXX à YYYYYY cela entraînerait un dégradé de couleurs.
Exemple
Contribution
FF3762
F08800
9
Production
Veuillez noter dans notre exemple, j'ai demandé 9 étapes intermédiaires entre les deux couleurs, donc 11 lignes seront affichées de la couleur initiale à la couleur finale
FF3762
FD3F58
FC474E
FA4F44
F9573A
F75F31
F66727
F46F1D
F37713
F17F09
F08800
Avertissements
Bien que j'aie opté pour un processus linéaire simple de dérivation des valeurs entières pour les couleurs intermédiaires avant de les reconvertir en hexadécimal, vos méthodes peuvent varier. Veuillez considérer les différentes façons d'arrondir / diminuer vos chiffres en conséquence.
Essai
Pour rendre cela intéressant, j'ai fourni un extrait pour permettre le test de votre code, y compris un bouton pour vous fournir deux couleurs aléatoires pour tester votre code. L'affichage de vos résultats est facultatif, mais c'est encouragé!
c1=()=>('00000'+(Math.random()*(1<<24)|0).toString(16)).slice(-6);
$("#col").click(function(){
alert("Your two colors are: "+c1()+" and "+c1()+".");
});
$("#colors").blur(function(){
$("#test").empty();
var colArr = $("#colors").val().split("\n");
for(c in colArr){
$("#test").append('<div class="tester" style="background-color:#'+colArr[c]+';">'+colArr[c]+'</div>')
}
});
.tester{height: 20px;
width: 60px;padding: 4px;border: 1px solid black;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="col">Your two colors</button><br />
<textarea id="colors"></textarea>
<div id="test">
</div>
1) Vous pouvez accéder à deux couleurs aléatoires pour votre test en cliquant sur le bouton "Vos deux couleurs". 2) Le nombre d'étapes intermédiaires sera le même que le nombre de caractères dans votre nom d'utilisateur PPCG, espaces compris, dans le cas de "WallyWest", il serait de 9 (comme dans mon exemple ci-dessus). 3) Exécutez votre code avec les deux couleurs et le numéro et une fois que vous avez votre liste générée, vous avez la possibilité de coller votre sortie dans la zone de texte et de la tabuler pour obtenir votre dégradé de couleurs généré.
Mon exemple est montré ici:
Je dois admettre que ça a l'air génial!
Veuillez noter: Comme je l'ai mentionné, montrer votre test de votre sortie à l'aide de l'extrait est facultatif, mais c'est encouragé! :)
Production
La sortie de la liste doit être sous la forme de N + 2 ensembles de nombres hexadécimaux à 6 chiffres séparés par des sauts de ligne (\ n) comme indiqué dans mon exemple ci-dessus. La sortie peut prendre la forme de lignes séparées, d'une liste séparée par des espaces / virgules, d'un tableau ou de tout ce qui convient le mieux à votre langue ... (Merci @nimi pour les informations) N'oubliez pas que si vous prévoyez de tester votre code avec l'extrait, mais vous séparez chaque "couleur" est à vous.
Règles
Il s'agit de code-golf, donc la solution la plus courte en octets sera couronnée gagnante. Pas de failles , naturellement. L'entrée doit accepter les deux chaînes et un nombre (qui, comme je l'ai dit, équivaudra au nombre de lettres de votre nom d'utilisateur sur PPCG, donc votre sortie résultante aura toujours un minimum de trois lignes.