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

জেলারের অ্যালগরিদম দিয়ে সপ্তাহের দিন বের করা (Find Weekday using Zeller's Algorithm)


জেলারের অ্যালগরিদম ব্যবহার করে একটি প্রদত্ত তারিখ থেকে সপ্তাহের দিন বের করা যায়। জেলারের অ্যালগরিদম ব্যবহার করে সপ্তাহের দিন বের করার সূত্র এখানে:

জেলারের অ্যালগরিদম দিয়ে সপ্তাহের দিন বের করা (Find Weekday using Zeller s Algorithm)

সূত্রটিতে কিছু ভেরিয়েবল আছে; সেগুলো হলো:

d − তারিখের দিন।

m: এটি মাস কোড। মার্চ থেকে ডিসেম্বর পর্যন্ত এটি ৩ থেকে ১২, জানুয়ারি জন্য এটি ১৩, এবং ফেব্রুয়ারি জন্য এটি ১৪। যখন জানুয়ারি বা ফেব্রুয়ারি বিবেচনা করব, তখন দেওয়া বছরের ১ কমাতে হবে।

y − বছরের শেষ দুটি অঙ্ক

c − বছরের প্রথম দুটি অঙ্ক

w − সপ্তাহের দিন। যখন এটি ০, তবে সেটি শনিবার, যখন ৬, তবে শুক্রবার

ইনপুট এবং আউটপুট

ইনপুট: দিন, মাস এবং বছর: ৪, ১, ১৯৯৭ আউটপুট: সেটি ছিল: শনিবার

অ্যালগরিদম

zellersAlgorithm(day, month, year)

ইনপুট: দিনের তারিখ।

আউটপুট: কোন দিন ছিল, (রবিবার থেকে শনিবার)।

শুরু 
  যদি month > 2, তবে 
    mon := month 
  অন্যথায় 
    mon := 12 + month 
    বছর ১ কমানো 
  y := বছরের শেষ দুটি অঙ্ক 
  c := বছরের প্রথম দুটি অঙ্ক 
  w := day + floor((13*(mon+1))/5) + y + floor(y/4) + floor(c/4) + 5*c 
  w := w mod 7 
  weekday[w] ফেরত দিন //weekday শনিবার থেকে শুক্রবার পর্যন্ত দিন ধারণ করবে 
শেষ

উদাহরণ

#include<iostream> #include<cmath> using namespace std; string weekday[7] = {"Saturday","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday"};       string zellersAlgorithm(int day, int month, int year) {   int mon;   if(month > 2)     mon = month;   //মার্চ থেকে ডিসেম্বর মাস কোড মাসের মতো   else {     mon = (12+month);   //জান এবং ফেবের জন্য মাস কোড হবে ১৩ এবং ১৪     year--; //জান এবং ফেবের জন্য বছর কমান }           int y = year % 100;   //শেষ দুটি অঙ্ক   int c = year / 100;   //প্রথম দুটি অঙ্ক   int w = (day + floor((13*(mon+1))/5) + y + floor(y/4) + floor(c/4) + (5*c));   w = w % 7;   return weekday[w]; } int main() {   int day, month, year;   cout << "Enter Day: "; cin >>day;   cout << "Enter Month: "; cin >>month;   cout << "Enter Year: "; cin >>year;   cout << "It was: " <<zellersAlgorithm(day, month, year); }

আউটপুট

Enter Day: 04 Enter Month: 01 Enter Year: 1997 It was: Saturday

  1. এন্ড্রয়েডে Year API ক্লাস ব্যবহার করে লিপ ইয়ার (অধিবর্ষ) যাচাই করার পদ্ধতি

  2. C গ্রাফিক্স-এ ফ্লাড ফিল অ্যালগরিদম ব্যবহার

  3. পাইথনে প্রিমস অ্যালগরিদম ব্যবহার করে MST বের করার প্রোগ্রাম

  4. Python ব্যবহার করে একটি নির্দিষ্ট বছরের প্রথম দিন বের করার পদ্ধতি