কম্পিউটার টিউটোরিয়াল

JavaScript-এ লাইন সেগমেন্টে সমান দূরত্বে পয়েন্ট জেনারেট করা

JavaScript-এ লাইন সেগমেন্টের দৈর্ঘ্য এবং পয়েন্ট সংখ্যা দিয়ে সমান দূরত্বে (equidistant) পয়েন্টের অ্যারে জেনারেট করা যায়। এটি গ্রাফিক্স, অ্যানিমেশন, বা ডেটা ভিজ্যুয়ালাইজেশনে কাজে লাগে।

অ্যালগরিদম

স্ট্রাট পয়েন্ট (০) থেকে এন্ড পয়েন্ট (x) পর্যন্ত n সংখ্যক পয়েন্ট বাঁটতে হলে প্রতিটি পয়েন্টের অবস্থান:

position = (index + 1) / (n + 1) * length

ফাংশন উদাহরণ

function generateEquidistantPoints(count, length) {
    const points = [];
    for (let i = 0; i < count; i++) {
        const ratio = (i + 1) / (count + 1);
        const position = ratio * length;
        points.push(Math.round(position)); // পূর্ণসংখ্যায় রাউন্ড
    }
    return points;
}

// ৫টি পয়েন্ট, দৈর্ঘ্য ৫০
const points = generateEquidistantPoints(5, 50);
console.log("পয়েন্টগুলো:", points);

চলানোর পদ্ধতি

  1. কোডটি pointsDemo.js নামে সংরক্ষণ করুন।
  2. টার্মিনালে চালান: node pointsDemo.js

আউটপুট

পয়েন্টগুলো: [ 8, 17, 25, 33, 42 ]

গণনা ব্যাখ্যা

ইনডেক্সঅনুপাত (i+1)/(n+1)পজিশন (×50)রাউন্ডেড
01/6 = 0.166...8.33...8
12/6 = 0.333...16.66...17
23/6 = 0.52525
34/6 = 0.666...33.33...33
45/6 = 0.833...41.66...42

উন্নত সংস্করণ (ফ্লোট রিটার্ন)

function generatePointsPrecise(count, length, decimals = 2) {
    const factor = Math.pow(10, decimals);
    return Array.from({ length: count }, (_, i) => 
        Math.round(((i + 1) / (count + 1)) * length * factor) / factor
    );
}

console.log(generatePointsPrecise(5, 50, 2)); 
// [ 8.33, 16.67, 25, 33.33, 41.67 ]
  1. জাভাস্ক্রিপ্ট অবজেক্ট অ্যারে কিনা যাচাই করার পদ্ধতি

  2. জাভাস্ক্রিপ্টে একই অ্যারেতে অ্যারের এলিমেন্টগুলো ডুপ্লিকেট করা

  3. জাভাস্ক্রিপ্টে অবজেক্ট অফ অবজেক্টকে অবজেক্ট অফ অ্যারে অফ অবজেক্ট-এ ট্রান্সফর্ম করা

  4. জাভাস্ক্রিপ্টে অ্যারেতে নির্দিষ্ট শব্দ খুঁজে বের করা