ماشین‌حساب‌های ریاضی
ماشین حساب مدولو


ماشین حساب مدولو

ماشین حساب مدولو باقی‌مانده تقسیم دو عدد مثبت/منفی عقلانی/غیرعقلانی را پیدا می‌کند. شما همچنین می‌توانید نحوه یافتن مدول به صورت دستی را دریابید

مدول

1

در محاسبه شما خطایی رخ داد.

فهرست مطالب

  1. محاسبات بدون ماشین حساب مدولوس
    1. مثال
  2. نمایش ساعت از اصل مدولو
    1. مثال
  3. استفاده از مدولو
    1. تعیین اعداد زوج و فرد
    2. تبدیل واحد
    3. تعیین سال کبیسه
  4. تولید کننده‌های عدد تصادفی
    1. رمزنگاری
  5. نتیجه‌گیری

ماشین حساب مدولو

عملیات مدولو یک روش برای یافتن باقی‌مانده عملیات تقسیم است. ویژگی‌های مدولو این است که باقی‌مانده را به عنوان یک عدد صحیح بازمی‌گرداند.

فرض کنید سه فرزند دارید. شما یک جعبه آب‌نبات خریداری می‌کنید که شامل 20 عدد از آن‌ها است. شما می‌خواهید تمام آب‌نبات‌ها را به طور مساوی و منصفانه بین فرزندانتان تقسیم کنید. و آب‌نبات باقی‌مانده را بدون نیاز به بریدن یا شکستن آن، خودتان بخورید. فرزندان شما هنوز در مدرسه هستند. پس می‌توانید ابتدا باقی‌مانده پس از تقسیم را مشخص کنید و تعداد آب‌نبات‌های خود را بخورید.

این موقعیتی است که در آن می‌توانید از عملگر مدولو استفاده کنید. همچنین می‌توان آن را به صورت علامت % یا mod نشان داد. برای عملیات با اعداد کوچک، می‌توانید محاسبات را در ذهن خود انجام دهید. اگر با اعداد بزرگ کار می‌کنید، استفاده از ماشین حساب مدولو برایتان راحت‌تر خواهد بود.

معادله می‌تواند به صورت زیر نمایش داده شود:

مقسوم = (خارج قسمت × مقسوم‌علیه) + باقی‌مانده

در مورد ما:

  • مقسوم 20 است (کل تعداد آب‌نبات‌ها);
  • مقسوم‌علیه 3 است (تعداد فرزندان);
  • خارج قسمت 6 است (تعداد آب‌نبات‌ها برای هر کودک);
  • باقی‌مانده 2 است (تعداد آب‌نبات‌هایی که می‌توانید برای خود بردارید).

اگر از عملیات مدولو استفاده کنید، می‌توانید آن را به صورت زیر بنویسید:

x % y = r

یا

x mod y = r

که در آن x مقسوم، y مقسوم‌علیه و r باقی‌مانده است.

در مورد ما،

20 % 3 = 2

محاسبات بدون ماشین حساب مدولوس

بیایید یک مورد خاص را به عنوان مثال بررسی کنیم.

مثال

وایان در بالی زندگی می‌کند و در حال ساخت یک مهمان‌خانه کوچک با شش واحد مسکونی است. او قصد دارد حمام‌ها را کاشی‌کاری کند. همسایه‌اش، گده، که ساخت هتل خود را به پایان رسانده است، پیشنهاد تخفیف قابل توجهی به وایان برای خرید باقیمانده کاشی‌ها می‌دهد.

همسایه شمرده است که 15 جعبه در انبارش دارد، هر کدام شامل 4 کاشی (60 × 60 سانتی‌متر) و دو کاشی به صورت جداگانه. پس در کل 62 کاشی است. و گده می‌خواهد تمام کاشی‌ها را یکجا بفروشد.

حال وایان باید محاسبه کند که چند حمام را می‌تواند با این کاشی‌ها کاشی‌کاری کند. و چند کاشی احتمالا بدون استفاده باقی می‌ماند؟

چگونه می‌توان به صورت دستی مدولوس را بدون استفاده از ماشین حساب عملگر مدولوس پیدا کرد؟

وایان اندازه یک حمام استاندارد در مهمان‌خانه‌اش را اندازه‌گیری کرد و متوجه شد که به حدود 14 کاشی برای هر اتاق نیاز دارد.

بیایید محاسبات دستی را انجام دهیم!

  1. یک شماره شروع یا مقسوم را تعیین کنید. در مورد ما، این 62 است، یا تعداد کاشی‌هایی که همسایه پیشنهاد می‌دهد.
  2. مقسوم‌علیه را تعیین کنید. این عدد 14 است—میانگین تعداد کاشی‌ها برای یک حمام استاندارد.
  3. مقسوم را بر مقسوم‌علیه تقسیم کرده و نتیجه را به یک عدد صحیح گرد کنید. 62 / 14 = 4.428571428571429 یا 4. پس وایان می‌تواند کاشی‌ها را برای چهار حمام استفاده کند.
  4. نتیجه گرد شده تقسیم را در مقسوم‌علیه ضرب کنید. و این می‌شود 4 × 14 = 56. این تعداد کاشی برای چهار اتاق خواهد بود.
  5. نتیجه این ضرب را از مقسوم اصلی کم کنید. یعنی 62 - 56 = 6. این باعث می‌شود وایان شش کاشی اضافی داشته باشد.

به شکل ساده‌شده و خلاصه، می‌توانیم این عملیات را به صورت زیر بنویسیم:

62 % 14 = 6

یا

62 mod 14 = 6

وایان تصمیم گرفت این گزینه خوبی است زیرا باید حدود 10٪ کاشی را به عنوان ذخیره برای کار کاشی‌کاری در نظر بگیرد، در صورت برش یا سوءتفاهم‌ها. و او کاشی‌ها را برای دو حمام دیگر از یک فروشگاه مصالح ساختمانی محلی خریداری خواهد کرد.

یک ماشین حساب مدولو می‌تواند این نتیجه را در چند ثانیه ارائه دهد.

نمایش ساعت از اصل مدولو

یک نوع ریاضیات به نام "حساب مدولار" با ساختارهای چرخه‌ای سروکار دارد. ساده‌ترین راه برای نمایش این، یک صفحه با چرخه‌ای از 12 است. برای یک ریاضیدان، صفحه دارای mod 12 است.

اگر می‌خواهید ببینید آیا می‌توانید 251 ساعت را بدون باقی‌مانده بر روزها تقسیم کنید، می‌توانید عملیات

251 mod 24

را اعمال کنید.

نتیجه 11 است، پس جواب خیر است! ما فقط در صورتی می‌توانیم "بله" پاسخ دهیم که نتیجه 0 باشد.

مثال

دانیل می‌خواهد با اتوبوس از آتلانتا به میامی برود. این اتوبوس ساعت 1 بعدازظهر حرکت می‌کند و سفر 15 ساعت طول می‌کشد. ساعت چند خواهد بود وقتی به مقصد می‌رسد؟ این خواهد بود

1 + 15 mod 12

که می‌شود 4. در این مورد، ساعت 4 صبح خواهد بود.

استفاده از مدولو

تعیین اعداد زوج و فرد

یکی از اساسی‌ترین کاربردهای عملگر مدولو، تعیین این است که آیا یک عدد زوج است یا فرد. این امر ممکن است زیرا x % 2 همیشه یا 0 یا 1 را بازمی‌گرداند. اعداد زوج همیشه 0 را برمی‌گردانند زیرا به طور مساوی توسط 2 تقسیم می‌شوند، در حالی که اعداد فرد همیشه باقی‌مانده‌ای از 1 دارند.

شایع‌ترین مورد استفاده از مدولو در برنامه‌نویسی زمانی است که می‌خواهید یک جدول را در برنامه خود چاپ کنید و می‌خواهید رنگ‌های ردیف‌ها را متناوب کنید. ممکن است بخواهید آنها را آبی روشن و خاکستری روشن رنگ کنید، بنابراین با چک کردن مدولو می‌بینید که آیا در یک ردیف زوج یا فرد هستید.

تبدیل واحد

تبدیل واحد نمونه‌ای استاندارد از کاربرد عملی عملیات مدولو است. معمولاً زمانی استفاده می‌شود که ما می‌خواهیم یک واحد کوچکتر، مانند دقایق، اینچ یا سانتی‌متر، را به یک واحد بزرگتر، مانند ساعت، مایل یا کیلومتر تبدیل کنیم. اعداد اعشاری یا کسری همیشه در چنین موقعیت‌هایی مفید نیستند.

برای مثال، اگر ما می‌خواهیم تعداد ساعات در 373 دقیقه را بدانیم، نتیجه‌ای که به صورت 6 ساعت و 13 دقیقه بیان شده باشد ممکن است ارزشمندتر از 6.2166666666666667 ساعت باشد.

تقسیم استاندارد (با گرد کردن به نزدیک‌ترین عدد کامل) تعداد ساعات را مشخص می‌کند و از عملیات مدولو برای محاسبه دقایق باقی‌مانده استفاده می‌شود. چه با زمان، فاصله، فشار، انرژی یا ذخیره‌سازی داده‌ها سر و کار داشته باشید، می‌توانید از این رویکرد عمومی برای تبدیل واحدها استفاده کنید.

تعیین سال کبیسه

نمونه دیگری از استفاده از عملگر مدولو برای دیدن این است که آیا یک سال، سال کبیسه است یا خیر.

سال کبیسه سال تقویمی است که شامل یک روز اضافی در تقویم خورشیدی می‌باشد. روز اضافی در یک سال کبیسه 29 فوریه است.

در 1 ژانویه 45 پیش از میلاد، دیکتاتور رومی، گایوس جولیوس سزار، تقویمی را که توسط ستاره‌شناسان الکساندری در رم توسعه یافته بود، معرفی کرد. این تقویم بر اساس محاسبه‌ای بود که یک سال نجومی تقریباً 365.25 روز است (365 روز و 6 ساعت). این تقویم، تقویم جولیانی نامیده شد.

برای متعادل کردن انحراف شش ساعته، سزار سال کبیسه را معرفی کرد. برای سه سال متوالی، در هر سال 365 روز وجود داشت. و هر سال، که مضربی از چهار بود، یک روز اضافی در فوریه اضافه می‌شد.

با این حال، با گذشت زمان، مشخص شد که این قانون به تنهایی کافی نیست.

میانگین سال استوایی (زمان بین دو اعتدال بهاری) دقیق‌تر حدود 365 روز و 5 ساعت و 49 دقیقه است. تفاوت بین سال میانگین و سال تقویم جولیانی (365 روز و 6 ساعت) حدود 11 دقیقه بود. پس در حدود 128 سال، این 11 دقیقه می‌توانست به یک روز اضافی اضافه شود.

برای جبران خطاهای تجمعی و جلوگیری از یک انحراف مشابه در آینده، پاپ گرگوری XIII در سال 1582 تقویم را اصلاح کرد. او قوانین اضافی برای سال‌های کبیسه اضافه کرد. سال‌های کبیسه همچنان مضربی از چهار بودند، اما استثنائاتی برای آن سال‌هایی که مضربی از 100 بودند، اعمال شد. چنین سال‌هایی فقط در صورتی سال کبیسه بودند که همچنین توسط 400 قابل تقسیم باشند.

قوانین برای تعیین سال کبیسه به شرح زیر شد:

  • سالی که عدد آن مضربی از 400 است، سال کبیسه است.
  • بقیه سال‌هایی که جمع آنها مضربی از 100 است، سال کبیسه نیستند (برای مثال، سال‌های 1700، 1800، 1900، 2100، 2200، 2300)؛
  • بقیه سال‌ها، که عدد آنها مضربی از 4 است، سال‌های کبیسه هستند.
  • تمام سال‌های دیگر، سال کبیسه نیستند.

بنابراین، سال‌های 1700، 1800 و 1900 سال‌های کبیسه نیستند، زیرا آنها مضربی از 100 بوده و مضربی از 400 نیستند. سال‌های 1600 و 2000 سال‌های کبیسه هستند، زیرا آنها مضربی از 400 هستند.

بیایید به مسئله خود بازگردیم.

ما می‌دانیم که:

  • اگر عدد یک سال بر 4 بخش‌پذیر باشد و عدد آن سال بر 100 بخش‌پذیر نباشد، پس آن سال، سال کبیسه است.
  • اگر عدد یک سال بر 400 بخش‌پذیر باشد، پس آن سال، سال کبیسه است.
  • در هر حالت دیگری، آن سال، سال کبیسه نیست.

با یک اسکریپت ساده پایتون، می‌توانید بفهمید که آیا یک سال سال کبیسه است یا نه. به این شکل خواهد بود:

year = int(input('سال را وارد کنید: '))

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0) :

print(year, "سال کبیسه است.")

else:

print(year, "سال کبیسه نیست.")

کاربردهای محبوب عملگر مدولو در برنامه‌نویسی شامل:

  • تعیین اینکه چیزی زوج یا فرد است؛
  • انجام یک عملیات خاص روی هر N امین آیتم در یک لیست؛
  • محدود کردن عدد به یک بازه؛
  • چرخش در میان گزینه‌های محدود (آرایه دورانی)؛
  • برگرداندن یک عدد؛
  • تبدیل داده‌های خطی به یک ماتریس؛
  • تعیین اینکه آیا آرایه‌ها نسخه‌های چرخشی یکدیگر هستند؛
  • صفحه‌بندی.

تولید کننده‌های عدد تصادفی

هم‌خوانی مدولو اغلب در سخت‌افزار کامپیوتر و تجهیزات ارتباطی برای ایجاد اعداد کنترل و به دست آوردن اعداد تصادفی در یک محدوده محدود، مانند تولید کننده عدد تصادفی متجانس، استفاده می‌شود. دریک هنری لمر در سال 1949 روش خطی متجانس را پیشنهاد داد.

روش خطی متجانس بر اساس فرمول زیر کار می‌کند:

$$X_{n+1} = (a × X_n + c)\mod m$$

که در آن:

  • m مدولو است،
  • a ضرب‌کننده است،
  • c افزایش است، و
  • X₀ مقدار اولیه است.

به عنوان مثال، برای m = 11, X₀ = 9, a = 9, c = 9، ما سری زیر از اعداد تصادفی را به دست می‌آوریم:

9، 2، 5، 10، 0، 9، 2، 5، 10، 0، 9

رمزنگاری

رمزنگاران عاشق مدولو هستند. زیرا وقتی با اعداد بسیار بزرگ استفاده می‌شود، می‌توان با مدولو چیزی را ایجاد کرد که به عنوان "توابع یک طرفه" شناخته می‌شوند. این توابع ویژه کار را برای محاسبه چیزی در یک جهت آسان می‌کنند اما در جهت مخالف نه.

اگر 9 نتیجه توان دو باشد، می‌توانید به سرعت تعیین کنید که ورودی 3 بوده است. می‌توانید کل فرآیند را از ابتدا تا انتها مقابل خود تصور کنید. اگر به شما بگویم که 9 نتیجه مدولو 29 است، سخت‌تر است که بفهمید در ورودی چه چیزی وجود داشته است.

رمزنگاران از این ایده خوششان می‌آید زیرا آن‌ها می‌توانند از تقسیم با باقیمانده برای تولید اعداد اول عظیم به منظور ایجاد کلیدهای رمزنگاری استفاده کنند.

نتیجه‌گیری

چه در تلاش باشید تا اشیاء را به طور مساوی در یک جعبه ذخیره‌سازی توزیع کنید، بدانید که آیا یک عدد بر عدد دیگری بخش‌پذیر است یا فقط سعی در محاسبه زمان داشته باشید، مدولو همیشه در کنار شماست. در تمام این موارد، باقی‌مانده به اندازه خارج قسمت در عملیات تقسیم مهم است.

گاهی اوقات مسئله در دست ساده و بدیهی است. با این حال، همیشه بهتر است هنگامی که امور پیچیده هستند، از ماشین حساب مدولو آنلاین برای یافتن راه‌حل استفاده کنید.