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

তিনটি последователь প্রাকৃতিক সংখ্যা যেন যোগফল n - JavaScript

একটি সংখ্যা n কে তিনটি последователь প্রাকৃতিক সংখ্যার যোগফল হিসেবে প্রকাশ করা যায় কিনা চেক করা।

গাণিতিক বিশ্লেষণ

তিনটি последователь সংখ্যা: x, x+1, x+2

যোগফল: x + (x+1) + (x+2) = 3x + 3 = 3(x+1)

তাই n অবশ্যই ৩ দিয়ে বিভাজ্য হতে হবে এবং n ≥ 6 (১+২+৩=৬)।

সমাধান

const threeConsecutiveSum = (sum) => {
  // শর্তাবলী চেক
  if (sum < 6 || sum % 3 !== 0) {
    return false;
  }
  
  // x = (sum - 3) / 3
  const x = (sum - 3) / 3;
  
  // প্রাকৃতিক সংখ্যা চেক
  if (!Number.isInteger(x) || x < 1) return false;
  
  return [x, x + 1, x + 2];
};

// টেস্ট
console.log(threeConsecutiveSum(54));   // [17, 18, 19] → 17+18+19=54
console.log(threeConsecutiveSum(6));    // [1, 2, 3]
console.log(threeConsecutiveSum(7));    // false (৩ দিয়ে বিভাজ্য নয়)
console.log(threeConsecutiveSum(5));    // false (< 6)
console.log(threeConsecutiveSum(999));  // [332, 333, 334]

ব্যাখ্যা

  • sum % 3 === 0: যোগফল ৩ দিয়ে বিভাজ্য হতে হবে
  • sum >= 6: ন্যূনতম ১+২+৩=৬
  • x = (sum-3)/3: প্রথম সংখ্যা বের করা

সাধারণীকরণ: kটি последователь সংখ্যা

const kConsecutiveSum = (sum, k) => {
  // যোগফল = k*x + k(k-1)/2
  // x = (sum - k(k-1)/2) / k
  const numerator = sum - k * (k - 1) / 2;
  if (numerator % k !== 0 || numerator <= 0) return false;
  const x = numerator / k;
  return Array.from({ length: k }, (_, i) => x + i);
};

console.log(kConsecutiveSum(54, 3));  // [17, 18, 19]
console.log(kConsecutiveSum(30, 4));  // [6, 7, 8, 9]

উৎপাদন

[ 17, 18, 19 ]
  1. জাভাস্ক্রিপ্টে তিনটি সংখ্যার সর্বোচ্চ গুণফল বের করা

  2. C++-এ последователь পূর্ণসংখ্যা যোগফল হিসেবে সংখ্যা প্রকাশ

  3. C++ প্রোগ্রাম: সংখ্যা ৩টি কনsekutিভ ইন্টিজারের যোগফল কিনা চেক

  4. C++ প্রোগ্রাম: সংখ্যা কনsekutিভ নাম্বারগুলোর যোগফল কিনা চেক