Meydan okuma
İki büyük onaltılık dizeleri verilen (her ikisi de 6 karakter uzunluğunda XXXXXX ve YYYYYY) (arasında değişen RGB değerleri temsil 000000
etmek FFFFFF
dahil) ve pozitif sıfır olmayan N tamsayıdır XXXXXX gelen yyyyyy için oluşturulan N + 2 renk doğrusal bir geçiş görüntülemek renk gradyanı ile sonuçlanacaktır.
Misal
Giriş
FF3762
F08800
9
Çıktı
Örneğimizde, iki renk arasında 9 ara adım istedim, bu nedenle başlangıç renginden son renge kadar 11 satır görüntülenecek
FF3762
FD3F58
FC474E
FA4F44
F9573A
F75F31
F66727
F46F1D
F37713
F17F09
F08800
Uyarılar
Ara renkler için tamsayı değerlerini onaltılık biçime dönüştürmeden önce türetmek için basit bir doğrusal işleme devam ederken, yöntemleriniz değişebilir. Lütfen numaralarınızı buna göre yukarı / aşağı yuvarlamanın çeşitli yollarını göz önünde bulundurun .
Test yapmak
Bunu ilginç hale getirmek için, kodunuzu test etmek için iki rastgele renk sağlamak için bir düğme dahil olmak üzere kodunuzun test edilmesine izin veren bir snippet sağladım. Sonuçlarınızı görüntülemek isteğe bağlıdır, ancak teşvik edilir!
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) "İki rengin" düğmesine tıklayarak testiniz için iki rastgele renge erişebilirsiniz. 2) Ara adım sayısı, PPCG kullanıcı adınızdaki boşluklar dahil karakter sayısı ile aynı olacaktır, "WallyWest" durumunda 9 olacaktır (yukarıdaki örneğime göre). 3) Kodunuzu iki renk ve sayı ile çalıştırın ve oluşturduğunuz listeyi oluşturduktan sonra, çıktınızı metin alanına yapıştırma ve oluşturulan renk gradyanınızı elde etmek için sekmeden uzaklaştırma seçeneğiniz vardır.
Örneğim burada gösteriliyor:
İtiraf etmeliyim ki, bu harika görünüyor!
Lütfen dikkat: Bahsettiğim gibi, snippet'i kullanarak çıktılarınızı test etmenizi göstermek isteğe bağlıdır, ancak teşvik edilir! :)
Çıktı
Liste çıktısı, yukarıdaki örneğimde gösterildiği gibi, satır beslemeleri (\ n) ile ayrılmış 6 basamaklı onaltılık sayıların N + 2 setleri biçiminde olmalıdır. Çıktı, ayrı satırlar, boşluk / virgülle ayrılmış liste, bir dizi veya diliniz için en uygun olanı şeklinde olabilir ... (Başlıklar için teşekkürler @nimi) Lütfen kodunuzu test etmeyi planlıyorsanız, snippet, ancak her "renk" ayrı size kalmış.
kurallar
Bu kod golfüdür, bu nedenle bayttaki en kısa çözüm kazananı taçlandırır. Doğal olarak boşluk yok . Giriş, iki dizeyi ve bir sayıyı kabul etmelidir (söylediğim gibi, PPCG'deki kullanıcı adınızdaki harf sayısına eşit olacaktır, bu nedenle elde edilen çıktınız her zaman en az üç satır uzunluğunda olacaktır.