কম্পিউটার

জাভাস্ক্রিপ্টে শব্দ টাইপ করতে সময় গণনা করা


ধরুন আমাদের একটি কীওয়ার্ড আছে, যেটি প্রথাগত qwerty টাইপ কী ম্যাপিংয়ের পরিবর্তে, ম্যাপ কীগুলিকে কেবল ইংরেজি বর্ণানুক্রম অনুসারে যেমন, abcde...

আমরা সমস্যার মধ্যে ডুব দেওয়ার আগে, আমাদের নিম্নলিখিত দুটি অনুমান করতে হবে -

  • বর্তমানে আমাদের আঙুলের ডগা সূচক 0 এ রাখা হয়েছে, অর্থাৎ কী 'a

  • একটি কী থেকে অন্য কীতে যেতে যে সময় লাগে তা হল তাদের সূচকের নিখুঁত পার্থক্য, উদাহরণস্বরূপ 'a' থেকে 'k' এ যেতে সময় লাগবে |0 - 10| =10

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা ইংরেজি ছোট হাতের অক্ষরগুলির একটি স্ট্রিং নেয় এবং স্ট্রিং টাইপ করার জন্য আমাদের প্রয়োজনীয় সময় গণনা করে এবং ফেরত দেয়৷

যেমন −

যদি ইনপুট স্ট্রিং −

হয়
const str = 'dab';

আউটপুট

const output = 7;

কারণ যে আন্দোলনগুলি হয়েছিল তা হল −

'a' -> 'd' = 3
'd' -> 'a' = 3
'a' -> 'b' = 1

উদাহরণ

এর জন্য কোড হবে −

const str = 'dab';
const findTimeTaken = (str = '') => {
   let timeSpent = 0;
   const keyboard = 'abcdefghijklmnopqrstuvwxyz';
   let curr = 'a';
   for(let i = 0; i < str.length; i++){
      const el = str[i];
      const fromIndex = keyboard.indexOf(curr);
      const toIndex = keyboard.indexOf(el);
      const time = Math.abs(fromIndex - toIndex);
      curr = el;
      timeSpent += time;
   };
   return timeSpent;
};
console.log(findTimeTaken(str));

আউটপুট

এবং কনসোলে আউটপুট হবে −

7

  1. জাভাস্ক্রিপ্ট টাইপ ত্রুটি

  2. জাভাস্ক্রিপ্ট কনস্ট

  3. জাভাস্ক্রিপ্টে কাস্টিং টাইপ করুন।

  4. জাভাস্ক্রিপ্টে কনস্ট বনাম চলুন।