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

ক্যারি প্রোপাগেট ছাড়া দুটি সংখ্যা যোগ করা


এখানে আমরা একটি সমস্যা দেখব, যেখানে দুটি n-ডিজিট সংখ্যা যোগ করা হবে কিন্তু ক্যারি প্রোপাগেট করা হবে না। একটি উদাহরণ দিয়ে বুঝি −

ক্যারি প্রোপাগেট ছাড়া দুটি সংখ্যা যোগ করা

এখানে শুধু ডিজিটগুলো যোগ হয় এবং উত্তর প্লেস করা হয়। এখানে একটি ট্রিক আছে। আমাদের সংখ্যাগুলোকে ডানে থেকে বামে স্ক্যান করতে হবে। সুতরাং ৩+২ = ৬ প্রথমে ক্যালকুলেট হবে, কিন্তু এটি শেষে প্লেস হবে। তাই আমরা ইন্টারমিডিয়েট রেজাল্টগুলো স্টোর করার জন্য স্ট্যাক ব্যবহার করব।

অ্যালগরিদম

noPropagateCarry(a, b)

begin size = max of length of a and length of b for i in range i to size, do al := last digit of a bl := last digit of b push (al + bl) into stack a := a / 10 b := b /10 done pop and print the elements from stack end

উদাহরণ

#include #include #include using namespace std; int length(int n){ return log10(n) + 1; } void noPropagateCarry(int a, int b){ int size = max(length(a), length(b)); stack stk; for(int i = 0; i 

আউটপুট

Result: 1611125

  1. সি প্রোগ্রাম: কোনো অপারেটর ছাড়া দুটি সংখ্যার যোগফল বের করা

  2. C#-এ মেথড ছাড়া দুটি বাইনরি সংখ্যার যোগফল বের করা

  3. C#-এ অস্থায়ী ভেরিয়েবল ছাড়া দুটি সংখ্যা সোয়াপ করা

  4. পাইথনে দুটি বড় সংখ্যা যোগ করা