चुनौती
दो बड़े हेक्साडेसिमल तार को देखते हुए (दोनों 6 वर्ण, XXXXXX और yyyyyy) आरजीबी मूल्यों का प्रतिनिधित्व (से लेकर 000000
को FFFFFF
सम्मिलित), और एक सकारात्मक गैर शून्य एन पूर्णांक, N + 2 XXXXXX से yyyyyy करने के लिए उत्पन्न रंग की एक रेखीय संक्रमण प्रदर्शित यह एक रंग ढाल में परिणाम होगा।
उदाहरण
इनपुट
FF3762
F08800
9
उत्पादन
कृपया हमारे उदाहरण पर ध्यान दें, मैंने दोनों रंगों के बीच 9 अंतरिम चरणों का अनुरोध किया है, इसलिए प्रारंभिक रंग से अंतिम रंग तक 11 रेखाएं प्रदर्शित की जाएंगी
FF3762
FD3F58
FC474E
FA4F44
F9573A
F75F31
F66727
F46F1D
F37713
F17F09
F08800
चेतावनियां
हालांकि मैं अंतरिम रंगों के पूर्णांक मानों को हेक्साडेसिमल में वापस परिवर्तित करने से पहले एक सरल रैखिक प्रक्रिया के साथ गया हूं, आपके तरीके भिन्न हो सकते हैं। कृपया उन विभिन्न तरीकों पर विचार करें , जिनके अनुसार आप अपनी संख्याओं को बढ़ा / घटा सकते हैं ।
परिक्षण
इसे दिलचस्प बनाने के लिए, मैंने आपके कोड के परीक्षण की अनुमति देने के लिए एक स्निपेट प्रदान किया है, जिसमें एक बटन शामिल है जो आपको आपके कोड के परीक्षण के लिए दो यादृच्छिक रंग प्रदान करेगा। अपने परिणाम प्रदर्शित करना वैकल्पिक है, लेकिन यह प्रोत्साहित किया जाता है!
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) आप "अपने दो रंगों" बटन पर क्लिक करके अपने परीक्षण के लिए दो यादृच्छिक रंगों का उपयोग कर सकते हैं। 2) अंतरिम चरणों की संख्या आपके PPCG उपयोगकर्ता नाम के रिक्त स्थान में शामिल वर्णों की संख्या के समान होगी, "WallyWest" के मामले में यह 9 होगा (ऊपर मेरे उदाहरण के अनुसार)। 3) अपने कोड को दो रंगों और संख्या के साथ चलाएं और एक बार आपकी जनरेट की गई सूची के बाद, आपके पास अपने उत्पन्न टेक्स्ट ग्रैडिएंट को प्राप्त करने के लिए अपने आउटपुट को टेक्स्टारिया में चिपकाने और इसे दूर करने का विकल्प होता है।
मेरा उदाहरण यहाँ दिखाया गया है:
मुझे मानना होगा, कि बहुत बढ़िया लग रहा है!
कृपया ध्यान दें: जैसा कि मैंने उल्लेख किया है, स्निपेट का उपयोग करके अपने आउटपुट का परीक्षण दिखाना वैकल्पिक है, लेकिन इसे प्रोत्साहित किया जाता है! :)
उत्पादन
सूची आउटपुट एन + 2 सेट 6 अंकों के हेक्स संख्या के रूप में होना चाहिए जो लाइन फीड (\ n) द्वारा अलग किया गया है जैसा कि ऊपर मेरे उदाहरण में दिखाया गया है। आउटपुट अलग-अलग लाइनों, स्पेस / अल्पविराम से अलग सूची, एक सरणी या जो कुछ भी आपकी भाषा के लिए सबसे उपयुक्त है, के रूप में हो सकता है ... (हेड अप के लिए धन्यवाद @nimi) कृपया याद रखें, यदि आप अपने कोड के परीक्षण के साथ योजना बनाते हैं स्निपेट, हालांकि आप प्रत्येक "रंग" को अलग करते हैं, आप पर निर्भर है।
नियम
यह कोड-गोल्फ है, इसलिए बाइट्स में सबसे छोटे समाधान को विजेता का ताज पहनाया जाएगा। स्वाभाविक रूप से कोई खामियां नहीं । इनपुट को दो तार और एक संख्या को स्वीकार करना चाहिए (जैसा कि मैंने कहा था कि पीपीसीजी पर आपके उपयोगकर्ता नाम के अक्षरों की संख्या के बराबर होगा, इस प्रकार आपका परिणामी आउटपुट हमेशा तीन पंक्तियों का न्यूनतम होगा।