3 ডি-মডেলিং সফ্টওয়্যারটি মূলত 3 ডি অবজেক্টে টেক্সচারের মানচিত্রের জন্য ইউভি ম্যাপিং ব্যবহার করে । ইউ এবং ভি উভয়ের জন্য বৈধ মানগুলি সাধারণত অন্তর্ভুক্ত [0..1]ব্যাপ্তিতে থাকে।
চ্যালেঞ্জ
আপনি একটি নতুন 3 ডি-মডেলিং সফ্টওয়্যার কিনেছেন যা ব্যবহার করা অত্যন্ত সহজ। তবে এটির সাথে একটি সমস্যা রয়েছে: এটি ইউভি মান থেকে একটি এলোমেলো সংখ্যার যোগ বা বিয়োগ করে। আপনার কাজ হ'ল একটি প্রোগ্রাম বা এমন একটি ফাংশন তৈরি করা যা অন্তর্ভুক্ত [0..1]পরিসরে একটি ভাসমান মান পেতে একটি ইনপুট মানকে পরিবর্তন করে ।
ফলস্বরূপ ভাসমানটির মূল হিসাবে একই ভগ্নাংশ থাকতে হবে এবং যতটা সম্ভব মূলের কাছাকাছি হওয়া উচিত। উভয়ই 0এবং 1আউটপুট পরিসরে থাকায় যে কোনও পূর্ণসংখ্যা 0 বা তার চেয়ে কম হয় 0 এ পরিবর্তিত হওয়া উচিত এবং যে কোনও পূর্ণসংখ্যা 1 বা এর চেয়ে বড় হয় এটি 1 এ পরিবর্তিত হওয়া উচিত।
জাভাস্ক্রিপ্টে একটি উদাহরণ অ্যালগরিদম:
function modFloat(input) {
while (input < 0 || input > 1) {
if (input < 0) input += 1;
if (input > 1) input -= 1;
}
return input;
}
বিধি
- ইনপুট একটি একক পূর্ণসংখ্যা বা ভাসমান মান। যে কোনও যুক্তিসঙ্গত ফর্ম্যাট যতক্ষণ না এটি আপনার উত্তরে নির্দিষ্ট করা থাকে ততক্ষণ অনুমোদিত।
- আউটপুটটি একটি ভাসমান মানের দশমিক প্রতিনিধিত্ব হওয়া উচিত।
- আউটপুট নির্ভুলতা ইনপুট হিসাবে কমপক্ষে একই দশমিক স্থান হওয়া উচিত।
- চলার শূন্যগুলি অনুমোদিত।
- আপনার কোডটি 0 বা 1 এর মধ্যে কোনটি পূর্ণসংখ্যার ইনপুটগুলির জন্য আউটপুট দেয় তা সঠিকভাবে চয়ন করে তা নিশ্চিত হন।
পরীক্ষার মামলা
Input | Output
------------+---------
-4 | 0
-1 | 0
0 | 0
1 | 1
2 | 1
1.0001 | 0.000100
678.123456 | 0.123456
-678.123456 | 0.876544
4.5 | 0.5
এটি কোড-গল্ফ , তাই বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জয়ী!
any reasonable input format is allowed, তাই আমি বলব "কেন নয়?"।