কার্য
নোটটি কতটা সেন্টের বাইরে সুরক্ষিত আছে তার সাথে একটি নির্দিষ্ট ফ্রিকোয়েন্সিটিতে সুরযুক্ত একটি নির্দিষ্ট পয়েন্টে চেপে একটি প্রোগ্রাম লিখুন।
সরলতার স্বার্থে, ধরে নিই যে উত্পাদিত শব্দটির ফ্রিকোয়েন্সি এবং স্ট্রিংয়ের দৈর্ঘ্য যেখানে চাপছে তার ডানদিকে বিপরীতভাবে আনুপাতিক।
দ্রষ্টব্য: এই টাস্কটি সম্পূর্ণরূপে মৌলিক স্বরে কাজ করে, ওভারটোনস / অন্যান্য সুরেলা বা সুরকারীর সাথে নয়।
ইনপুট
আপনার প্রোগ্রামে ডেটা দুটি টুকরা দেওয়া হয়:
প্রশ্নবিদ্ধ স্ট্রিংকে উপস্থাপন করে নির্বিচারে দৈর্ঘ্যের একটি স্ট্রিং। এই স্ট্রিংটি একটি এক্স দিয়ে চিহ্নিত করা হবে যেখানে স্ট্রিংটি চেপে রাখা হবে।
[-----] is a string divided in six sections (five divisions). [--X--] is a string pressed at the exact center of the string. [X----] is a string pressed at 1/6 the length of the string. (Length used is 5/6) [-X--] is a string pressed at 2/5 of the length of the string. (Length used is 3/5)
ধরুন নোটটি ডানদিকে স্ট্রিংয়ের অংশটি ব্যবহার করে শোনানো হয়েছে
X
।- একটি সংখ্যা (অগত্যা কোনও পূর্ণসংখ্যার নয়), স্ট্রিংটি যে ফ্রিকোয়েন্সিটিতে সুর করা হয় তা নির্দেশ করে। এই সংখ্যার যথার্থতা দশমিকের চেয়ে বেশি চার অঙ্কের হবে।
ধারণা করা যেতে পারে যে পাস করা ফ্রিকোয়েন্সিগুলি 10 Hz
এবং এর মধ্যে থাকবে 40000 Hz
।
ইনপুট আপনার পছন্দের বিন্যাসে পাস হতে পারে। আপনার উত্তরে আপনার প্রোগ্রামে কীভাবে ইনপুট গ্রহণ করা হবে তা দয়া করে নির্দিষ্ট করুন।
আউটপুট
আপনার প্রোগ্রামটি অবশ্যই বারো-টোন সমান মেজাজের টিউনিং সিস্টেমের নিকটতম নোট * এবং সেন্টারের সংখ্যার নিকটতম নোট থেকে দূরে অবশ্যই আউটপুট দিতে হবে যে স্ট্রিং দ্বারা বর্ণিত শব্দটি (নিকটতম সেন্টারে গোলাকার) হবে।
+n
সেন্টগুলি n
নোটের উপরে তীক্ষ্ণ / উপরে চিহ্নিত করতে এবং নোটটির -n
নীচে ফ্ল্যাট / নীচে চিহ্নিত করতে ব্যবহার করা উচিত ।
নোটটি বৈজ্ঞানিক পিচ স্বরলিপিতে আউটপুট করা উচিত। ধরুন এ 4 টি টিউন হয়েছে 440Hz
। ফ্ল্যাট / তীক্ষ্ণ নোটের জন্য খ এবং # ব্যবহার করুন। দ্রষ্টব্য: হয় ধারালো বা ফ্ল্যাট ব্যবহার করা যেতে পারে। নোটের জন্য, নোটের জন্য 466.16Hz
হয় A#
বা Bb
আউটপুট করা যেতে পারে।
আউটপুট ফর্ম্যাট আপনার উপর নির্ভর করবে, যতক্ষণ না আউটপুটে কেবলমাত্র দু'টি পূর্বনির্ধারিত তথ্য রয়েছে (যেমন প্রতিটি সম্ভাব্য আউটপুট মুদ্রণের অনুমতি নেই)।
* নিকটতম নোটটি সেই নোটটিকে বোঝায় যা ইনপুট দ্বারা চিহ্নিত শব্দের নিকটতম, সেন্টের সংখ্যায় পরিমাপ করা (অতএব, শিরোনামের মধ্যে থাকা নোট 50 cents
)। শব্দটি যদি 50 cents
দুটি পৃথক নোট (বৃত্তাকার পরে) থেকে দূরে থাকে তবে দুটি নোটের কোনও একটি আউটপুট হয়ে যেতে পারে।
উদাহরণ
আপনার প্রোগ্রামটি কেবলমাত্র নিম্নলিখিত উদাহরণগুলি নয়, সমস্ত ক্ষেত্রে কাজ করা উচিত।
Output Input Frequency Input String
A4, +0 cents 220 [-----X-----]
A5, +0 cents 220 [--------X--]
D5, -2 cents 440 [--X--------]
B4, -49 cents 440 [X----------]
A#4, +19 cents* 314.1592 [X-]
Eb9, +8 cents* 400 [-----------------------X]
Eb11,+8 cents* 100 [--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------X]
D#1, +49 cents* 10 [--X]
A0, -11 cents 11.7103 [---X--]
* হয় ধারালো বা ফ্ল্যাট আউটপুট করা যেতে পারে।
সম্ভাব্য সহায়ক লিঙ্কগুলি
এই কোড-গলফ এত সংক্ষিপ্ত উত্তর জেতা
[-X--]
, স্ট্রিংটি 4 টি জায়গায় বিভক্ত (এবং তাই 5 ভাগে বিভক্ত) এবং এই বিভাগগুলির দ্বিতীয়টিতে টিপুন । সুতরাং, এটি টিপানো হয় 2/5
, এবং ব্যবহৃত দৈর্ঘ্য হয় 3/5
।
-
মূলত বিভাগগুলির অবস্থানের প্রতিনিধিত্ব করে, ব্যাখ্যা করার জন্য আপনাকে ধন্যবাদ!
[--X--]
স্ট্রিংটি বিভাগের মাঝখানে যেখানে চাপানো হয়েছে সেখানে চাপানো হয়েছেx
, যখন[-X--]
এই যুক্তিটি অনুসরণ করার পরে শেষটি 3/8 (2/5 নয়) এ হবে। নাকি আমি কিছু ভুল বুঝতে পারি?