منشور

منشور

متوسط

مقدمه

شما پژوهشگری در PRISM (Precariously Redirected Illumination Safety Management) هستید و با یک سامانه‌ی کالیبراسیون لیزری دقیق کار می‌کنید که منشورهای کریستالی آزمایشی را می‌آزماید. این کریستال‌ها برای رایانه‌های نوری نسل بعدی در حال توسعه هستند و هر کدام بر پایه‌ی ساختار مولکولی خود، ویژگی‌های شکستی منحصربه‌فردی دارند. اگر نوردهی غیرمنتظره‌ای به کریستال‌ها برسد، سامانه‌ی لیزری آزمایشگاه می‌تواند به آن‌ها آسیب بزند، بنابراین پیش‌بینی دقیق مسیر اهمیت حیاتی دارد.

دستورالعمل‌ها

پیش از فعال‌سازی آرایه‌ی لیزر، باید پیش‌بینی کنید که بلورها با چه ترتیب دقیقی برخورد می‌کنند؛ هر بلور با شناسه‌ی نمونه‌اش مشخص می‌شود.

نمونه‌ی Test

این پیکربندی آرایه‌ی بلور را در نظر بگیرید:

{
  "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) شروع می‌کند و با زاویه‌ی ۰ درجه به‌صورت افقی به سمت راست شلیک می‌کند. مسیر پرتو به‌صورت گام‌به‌گام چنین است:

گام ۱: پرتو در امتداد محور x (y = ۰) حرکت می‌کند و نخست در موقعیت (10, 0) به بلور شماره‌ی ۲ برمی‌خورد. زاویه‌ی شکست این بلور ۹۰ درجه است؛ یعنی پرتو را طوری می‌شکند که بر مسیر کنونی‌اش عمود شود. پرتویی که در ابتدا با زاویه‌ی ۰ درجه حرکت می‌کرد، حالا به ۹۰ درجه (مستقیم رو به بالا) تغییر مسیر می‌دهد.

گام ۲: پرتو حالا از موقعیت (10, 0) به‌صورت عمودی به سمت بالا می‌رود و در موقعیت (10, 10) به بلور شماره‌ی ۱ می‌خورد. زاویه‌ی شکست این بلور منفی ۹۰ درجه است و پرتو را نسبت به جهت کنونی‌اش منفی ۹۰ درجه می‌شکند. پرتو با زاویه‌ی ۹۰ درجه حرکت می‌کرد، بنابراین پس از شکست حالا با زاویه‌ی ۰ درجه (۹۰° + (-۹۰°) = ۰°) و دوباره به‌صورت افقی به سمت راست حرکت می‌کند.

گام ۳: پرتو از موقعیت (10, 10) به‌صورت افقی حرکت می‌کند و در موقعیت (30, 10) به بلور شماره‌ی ۳ می‌خورد. این بلور پرتو را ۴۵ درجه می‌شکند و جهت آن را به ۴۵ درجه تغییر می‌دهد. پرتو به مسیر خود در فضای خالی بیرون از آرایه ادامه می‌دهد.

"نموداری که مسیر یک پرتو لیزر را پس از شکست از میان سه منشور نشان می‌دهد.""نموداری که مسیر یک پرتو لیزر را پس از شکست از میان سه منشور نشان می‌دهد."


منبع

FraSangaاین لینک در پنجره یا تب جدیدی باز می‌شود.
ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
Wren Exercism

آماده‌اید منشور را شروع کنید؟

در Exercism ثبت‌نام کنید تا Wren را همراه با 117 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.