Tag Archives: modulo

DCP-4: Great!!! The Work Is Done Solution

code i tried  around 5 of hours but didn’t succeded:

 

after checking one solution in github repo found the logic and impelmented in my own:
code:

uDebug also helped me for critical case:
https://www.udebug.com/DS/4

Modulo in Details

We can easuly get a range of output value after mod:
Code: for 100 here print from 0 to 99 range

Another Code: here for 1000 it will print 0 to 999 range

 

Learn Modulo in Easy Way

One thing was confusion for me but after watching this tut it is clear to me now.

a%n
if n>a then the result of the modulo result is a, that means a%n=a when a<n

if a<b then a%b is always a

Find sum of digits of a given number in C

Code:

With While Loop

With for loop:
Check below I didn’t initialized the for loop,

For Loop Another:

 

with do while loop

 

মডুলাস অপারেটর নিয়ে কিছু কথা

ইদানিং প্রব্লেম সল্ভ করতে গিয়ে কিছু প্রব্লেম এ পড়লে দেখছি যে মডুলাস এর ধারনা টা নিজের কাছে ক্লিয়ার থাকলে অনেক সুবিধা হয় … তো নিজে শেখা পাশাপাশি শেয়ার করতে চাচ্ছি…আজকে একটু ঘাটাঘাটি করে যা শিখার চেস্টা করেছি তা…

স্ট্যাক ওভার ফ্লো এবং আরো কিছু ওয়েবসাইট ঘাটাঘাটি করে যা জানতে পেরেছি

61%9 বের করতে চাই আমি…তাই যা করা লাগবে আমার হাতে কলমে যদি চাই

61/9=6.77778
6.77778-6=0.77778
0.77778*9=7

এক্সাকটলি রিমেইন্ডারটাও ৭… সি তে করে দেখলে

আসলে ব্যাপারটা যেভাবে হয়

আমরা কি জানি ভাগের ক্ষেত্রে 61(ভাজ্য বা Divident)÷9(ভাজক বা Divisor)=6.77778(Quotient বা ভাগফল) আর ভাগশেষ হিসেবে যদি 7 আসে ঐটা হচ্ছে Ramainder

সি বা যেকোনো ল্যাংগুয়েজেই মডুলার অ্যারেথমেটিক বা মডুলো অপারেটর বা মডুলাস এর কাজ হচ্ছে ভাগশেষ টা বের ক রা…এটা হাতে কলমে করলে এভাবেও আসে আমার  এর আগের একটা ব্লগ পোস্টে উল্লেখ করেছি তা লিঙ্ক

কিন্তু ক্যলকুলেটর বা দ্রুততার সাথে নিজে থেকে করতে গেলে উপরের ফর্মুলাটার ব্যাখা অনেকটা এরকম

61/9=6.77778 অর্থাৎ divident/divisor=quotient
6.77778-6=0.77778 অর্থাৎ quotient বা ভাগফল – quotient বা ভাগফল এর ইন্টেজার মান
0.77778*9=7 তারপর প্রাপ্ত বিয়োগফল টাকে divisor বা ভাজক দিয়ে গুন করলেই আমাদের কাংখিত remainder বা ভাগশেষ পেয়ে গেলাম 😀

যে কারনে আমরা ইন্টেজার নিলাম কারন হচ্ছে মডুলার অ্যারেথমেটিক এর ক্ষেত্রে দশমিকের পরের মানগুলা ইগনোর করা হয়

সাধারনত Modulo দিয়ে আমরা অনেক কাজ করতে পারি

যেমনঃ একটা ভ্যালু থেকে কত মাস কতদিন হয়  সহজেই আমরা তা বের করতে পারি।
লজিকটা অনেকটা এরকম

1.Taking input from user
2.Month=input/30
3.Days=input%30

এখানে প্রাপ্ত ইনপুট কে ৩০ দিয়ে ভাগ দিলেই আমরা কত মাস তা পেয়ে যাচ্ছি(কারন এক মাস সমান ৩০ দিন) আর আরো  গভীরে যেতে হলে যেমন গুনে গুনে কত দিন হয় তা বের করতে হলে আমাদের রিমেইন্ডার বা ভাগশেষ লাগছে

আবার ধরলাম যে কেউ ২৪ ঘন্টা সময়ের হিসাবে 15:00 টা  সমান ১২ ঘন্টা হিসাবে কত তা জানতে চাচ্ছে এ ক্ষেত্রে ভাগশেষ এর নিয়ম ছাড়া কোনো গতি নেই

তো কিভাবে হবে তা দেখে নেই

১৫ কে ১২ দিয়ে ভাগ অর্থাৎ
15/12=1.25
1.25-1=0.25
0.25*12=3

অর্থাৎ ১৫টা সমান ৩ টা…কি বুঝলেন 😀 😀