प्रिज़्म

प्रिज़्म

मध्यम

परिचय

आप PRISM (Precariously Redirected Illumination Safety Management) में एक शोधकर्ता हैं और एक सटीक लेज़र कैलिब्रेशन सिस्टम के साथ काम कर रहे हैं, जो प्रयोगात्मक क्रिस्टल प्रिज़्मों का परीक्षण करता है। इन क्रिस्टलों को अगली पीढ़ी के ऑप्टिकल कंप्यूटरों के लिए विकसित किया जा रहा है। हर क्रिस्टल में उसकी आणविक संरचना के आधार पर अनोखे अपवर्तन गुण होते हैं। अगर क्रिस्टलों पर अप्रत्याशित प्रकाश पड़े तो प्रयोगशाला का लेज़र सिस्टम उन्हें नुकसान पहुँचा सकता है, इसलिए सटीक पथ का पूर्वानुमान बेहद ज़रूरी है।

निर्देश

लेज़र ऐरे को सक्रिय करने से पहले आपको यह पहले से बताना है कि क्रिस्टल किस क्रम में टकराएँगे। इस क्रम की पहचान उनकी सैंपल आईडी से होती है।

उदाहरण टेस्ट केस

इस क्रिस्टल ऐरे कॉन्फ़िगरेशन को देखिए:

{
  "start": { "x": 0, "y": 0, "angle": 0 },
  "prisms": [
    { "id": 1, "x": 10, "y": 10, "angle": -90 },
    { "id": 2, "x": 10, "y": 0, "angle": 90 },
    { "id": 3, "x": 30, "y": 10, "angle": 45 },
    { "id": 4, "x": 20, "y": 0, "angle": 0 }
  ]
}

क्या हो रहा है

लेज़र मूल बिंदु (0, 0) से शुरू होता है और 0° के कोण पर दाईं ओर आड़ी दिशा में चलता है। बीम का रास्ता चरण दर चरण ऐसा है:

चरण 1: बीम x-अक्ष (y = 0) के साथ चलता है और सबसे पहले स्थिति (10, 0) पर क्रिस्टल #2 से टकराता है। इस क्रिस्टल का अपवर्तन कोण 90° है, यानी यह बीम को उसके मौजूदा रास्ते के लंबवत मोड़ देता है। बीम पहले 0° पर चल रहा था, अब उसे 90° पर मोड़ दिया जाता है (सीधे ऊपर)।

चरण 2: अब बीम स्थिति (10, 0) से ऊपर की ओर खड़ी दिशा में चलता है और स्थिति (10, 10) पर क्रिस्टल #1 से टकराता है। इस क्रिस्टल का अपवर्तन कोण -90° है, जो बीम को उसकी मौजूदा दिशा के सापेक्ष -90° मोड़ देता है। बीम 90° पर चल रहा था, इसलिए अपवर्तन के बाद अब वह 0° पर है (90° + (-90°) = 0°) और फिर से दाईं ओर आड़ी दिशा में चल रहा है।

चरण 3: स्थिति (10, 10) से बीम आड़ी दिशा में चलता है और स्थिति (30, 10) पर क्रिस्टल #3 से टकराता है। यह क्रिस्टल बीम को 45° अपवर्तित करता है और उसकी दिशा 45° कर देता है। बीम ऐरे से आगे खाली जगह में चला जाता है।

तीन प्रिज़्मों से अपवर्तित लेज़र बीम के रास्ते को दिखाने वाला ग्राफ़।तीन प्रिज़्मों से अपवर्तित लेज़र बीम के रास्ते को दिखाने वाला ग्राफ़।

x86-64 Assembly के लिए खास नोट्स

आप यह मान सकते हैं कि लेज़र किरण हमेशा अंततः खाली जगह में निकल ही जाती है। किरण का रास्ता प्रिज़्मों से होकर कभी अनंत तक नहीं चलता रहेगा।


स्रोत

FraSangaयह लिंक एक नई विंडो या टैब में खुलता है
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
x86-64 Assembly Exercism

प्रिज़्म शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और x86-64 Assembly को 22 कॉन्सेप्ट130 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।