Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में reduce फंक्शन का उपयोग करके परिमेय संख्याओं का गुणनफल खोजने का प्रोग्राम


मान लीजिए हमारे पास परिमेय संख्याओं की एक सूची है। हमें reduce फंक्शन का उपयोग करके उनका गुणनफल ज्ञात करना है। reduce() फंक्शन दो आर्गुमेंट वाले फंक्शन को ऑब्जेक्ट्स की सूची पर बाएं से दाएं संचयी रूप से लागू करता है।

उदाहरण के लिए, यदि इनपुट fractions = [(5,3),(2,8),(6,9),(5,12),(7,2)] है, तो आउटपुट (175, 432) होगा क्योंकि 5/3 * 2/8 * 6/9 * 5/12 * 7/2 = (5*2*6*5*7)/(3*8*9*12*2) = 2100/5184 = 175/432।

समाधान दृष्टिकोण

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

  • fracs := एक नई सूची
  • frac में प्रत्येक f के लिए, करें
    • (अंश, हर) जोड़ी f से एक नया फ्रैक्शन ऑब्जेक्ट बनाएं और उसे fracs के अंत में डालें
  • t := reduce(fracs फंक्शन func(x, y) के साथ जो x*y लौटाता है)
  • (t का अंश, t का हर) जोड़ी लौटाएं

उदाहरण

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

from fractions import Fraction
from functools import reduce

def solve(frac):
    fracs = []
    for f in frac:
        fracs.append(Fraction(*f))
    t = reduce(lambda x, y: x*y, fracs)
    return t.numerator, t.denominator

frac = [(5,3),(2,8),(6,9),(5,12),(7,2)]
print(solve(frac))

इनपुट

[(5,3),(2,8),(6,9),(5,12),(7,2)]

आउटपुट

(175, 432)
  1. नॉन-रिकर्सिव फंक्शन का उपयोग करके संख्याओं का GCD खोजने का C प्रोग्राम नॉन-रिकर्सिव फंक्शन का उपयोग करके संख्याओं का GCD खोजने का C प्रोग्राम

    समस्या दो दी गई संख्याओं के लिए महत्तम सामान्य भाजक (GCD) को नॉन-रिकर्सिव फंक्शन का उपयोग करके खोजें। समाधान यह नीचे समझाया गया है कि नॉन-रिकर्सिव फंक्शन का उपयोग करके दो दी गई संख्याओं के लिए महत्तम सामान्य भाजक (GCD) कैसे खोजें। एल्गोरिथम नॉन-रिकर्सिव फंक्शन का उपयोग करके दो दी गई संख्याओं के लि

  1. रिकर्सिव फंक्शन का उपयोग करके संख्याओं का GCD खोजने का C प्रोग्राम रिकर्सिव फंक्शन का उपयोग करके संख्याओं का GCD खोजने का C प्रोग्राम

    समस्या C प्रोग्रामिंग भाषा में रिकर्सिव फंक्शन का उपयोग करके दो दी गई संख्याओं के लिए महत्तम सामान्य भाजक (GCD) खोजें। समाधान रिकर्सिव फंक्शन का उपयोग करके दो दी गई संख्याओं के लिए महत्तम सामान्य भाजक (GCD) खोजने का समाधान निम्नानुसार है: एल्गोरिथम रिकर्सिव फंक्शन का उपयोग करके दो दी गई संख्याओं क

  1. - पायथन का उपयोग करके कीथ नंबर कैसे खोजें

    समस्या विवरण आप पायथन में किसी संख्या के कीथ नंबर होने की जांच के लिए निम्न कोड का उपयोग कर सकते हैं। उदाहरण def is_keith_number(n): # अंकों का योग निकालें पहले सभी अंकों की सरणी प्राप्त करके फिर उन्हें जोड़कर c = str(n) a = list(map(int, c)) b = sum(a) # अब जांचें कि संख्या कीथ