Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

दो स्ट्रिंग्स को गुणा करने और C++ में स्ट्रिंग के रूप में परिणाम लौटाने का प्रोग्राम

मान लीजिए कि हमारे पास स्ट्रिंग के रूप में दो नंबर हैं। हमें उन्हें गुणा करना होगा और परिणाम को भी स्ट्रिंग में वापस करना होगा। इसलिए यदि संख्याएं "28" और "25" हैं, तो परिणाम "700" होगा

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • दो तर्क x और y लेते हुए यह इंगित करता है कि x, y को विभाजित करता है

  • अगर x <−इन्फिनिटी और y =1, तो रिटर्न इनफिनिटी

  • ए:=|एक्स|,बी:=|y| और उत्तर :=0

  • जबकि a - b>=0

    • पी:=0

    • जबकि ए - (बाएं स्थानांतरित बी (बाएं 1 पी बार स्थानांतरित किया गया))> =0

      • पी:=पी + 1

    • a :=a - (बाएं शिफ्ट b, p बार)

    • उत्तर:=उत्तर + बाईं ओर 1 बार बार शिफ्ट करें

  • यदि x> 0 सत्य है और y> 0 भी सत्य है, तो उत्तर दें, अन्यथा वापस (- उत्तर)

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

उदाहरण

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   string multiply(string num1, string num2);
};
string Solution::multiply(string nums1, string nums2) {
   int n = nums1.size();
   int m = nums2.size();
   string ans(n + m, '0');
   for(int i = n - 1; i>=0; i−−){
      for(int j = m - 1; j >= 0; j−−){
         int p = (nums1[i] − '0') * (nums2[j] − '0') + (ans[i + j +
         1] − '0');
         ans[i+j+1] = p % 10 + '0';
         ans[i+j] += p / 10 ;
      }
   }
   for(int i = 0; i < m + n; i++){
      if(ans[i] !='0')return ans.substr(i);
   }
   return "0";
}
main(){
   Solution ob;
   cout << ob.multiply("28", "25");
}

इनपुट

"28", "25"

आउटपुट

"700"

  1. C++ में दो बाइनरी स्ट्रिंग्स जोड़ने का प्रोग्राम

    बाइनरी नंबर के साथ दो स्ट्रिंग्स को देखते हुए, हमें उन दो बाइनरी स्ट्रिंग्स को जोड़कर प्राप्त परिणाम को खोजना होगा और परिणाम को बाइनरी स्ट्रिंग के रूप में वापस करना होगा। बाइनरी नंबर वे नंबर होते हैं जिन्हें या तो 0 या 1 के रूप में व्यक्त किया जाता है। 2 बाइनरी नंबर जोड़ते समय बाइनरी जोड़ नियम होता

  1. दो बाइनरी स्ट्रिंग्स जोड़ने का प्रोग्राम, और C++ में बाइनरी स्ट्रिंग के रूप में भी वापस लौटें

    मान लीजिए कि हमारे पास दो बाइनरी स्ट्रिंग्स ए और बी हैं, हमें इन बाइनरी नंबरों को जोड़ना है और उनका योग भी एक स्ट्रिंग के रूप में निकालना है। इसलिए, यदि इनपुट a =10110, b =10010 जैसा है, तो आउटपुट 101000 होगा। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - रिट:=खाली स्ट्रिंग ना :=a का आकार, nb

  1. सी ++ में स्ट्रिंग्स गुणा करें

    मान लीजिए कि हमारे पास एक स्ट्रिंग के रूप में दो संख्याएं हैं। हमें उन्हें गुणा करना है और परिणाम को भी एक स्ट्रिंग में वापस करना है। इसलिए यदि संख्याएं 26 और 12 हैं, तो परिणाम 312 होगा इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - दो तर्क x और y लेते हुए यह इंगित करता है कि x, y को विभाजित करता