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

C/C++ প্রোগ্রাম: বিজোড় বার występuা সংখ্যা বের করা


এই প্রোগ্রামে আমরা দেখব কীভাবে একটি অ্যারেতে বিজোড় বার произош descanso 숫্যা বের করা যায়। অনেক পদ্ধতি আছে। সবচেয়ে সহজ পদ্ধতি হলো XOR অপারেশন। যদি একটি সংখ্যাকে নিজের সাথে XOR করা হয়, তবে ফলাফল ০ হবে। সুতরাং যদি কোনো সংখ্যা জোড় বার XOR করা হয়, তবে ফলাফল ০, অন্যথায় সংখ্যাটি নিজেই ফেরত আসবে।

এই সমাধানের একটা সমস্যা আছে, যদি একাধিক এলিমেন্ট বিজোড় বার আসে, তবে এটি 그중 একটি রিটার্ন করবে।

অ্যালগরিদম

getNumOccurredOdd(arr, n)

begin res := 0 for each element e from arr, do res := res XOR e done return res end

উদাহরণ

#include  using namespace std; int getNumOccurredOdd(int arr[], int n) { int res = 0; for (int i = 0; i < n; i++) res = res ^ arr[i]; return res; } int main() { int arr[] = {3, 4, 6, 5, 6, 3, 5, 4, 6, 3, 5, 5, 3}; int n = sizeof(arr)/sizeof(arr[0]); cout << getNumOccurredOdd(arr, n) << " is present odd number of times"; }

আউটপুট

6 is present odd number of times

  1. সি/সি++ প্রোগ্রামে n-তম ফিবোনাচ্চি নম্বর বের করা

  2. সি/সি++ প্রোগ্রামে অ্যারে মাল্টিপ্লিকেশনের রিমাইন্ডার n দিয়ে ভাগ দিয়ে বের করা

  3. সি/সি++ প্রোগ্রামে একটি নম্বরের یونিক প্রাইম ফ্যাক্টরগুলোর গুণফল বের করা

  4. সি/সি++ প্রোগ্রামে ট্রায়্যাঙ্গুলার ম্যাচস্টিক নম্বর বের করা