2011-06-28 35 views
7

एक्सेल में, मैं निकटतम फाइबोनैकी संख्या में घूमना चाहता हूं।एक्सेल में, निकटतम फाइबोनैकी संख्या

मैं (एक फ्रेंच Excel के साथ खेद) की तरह कुछ करने की कोशिश की:

RECHERCHEH(C7;FIBO;1;VRAI) -- HLOOKUP(C7, FIBO, 1, TRUE) 

जहां FIBO नामांकित श्रेणी (0, 0,5, 1, 2, 3, 5, 8, आदि।) है

मेरी समस्या यह है कि यह कार्य सबसे छोटी संख्या तक है और निकटतम नहीं है। उदाहरण के लिए 12.8 से 8 गोल और कर रहा है नहीं 13.

नोट: मैं सिर्फ एक एक्सेल सूत्र का उपयोग करना चाहते हैं, और कोई VBA

+3

आपके पास फिबोनाची संख्या के रूप में 0.5 क्यों है? –

+0

खैर, यह उपयोगकर्ता की कहानियों के वजन का आकलन करने के लिए agilists द्वारा उपयोग की जाने वाली एक छद्म फाइबोनैकी सूची है। इसमें 20 40 और 100 (या अनंत) –

उत्तर

5

यह काम करेगा:

=INDEX(FIBO,1, IF(C7>=(INDEX(FIBO,1,(MATCH(C7,FIBO,1)))+ 
    INDEX(FIBO,1,(MATCH(C7,FIBO,1)+1)))/2, MATCH(C7,FIBO,1)+1, MATCH(C7,FIBO,1))) 
+0

वाह भी शामिल है! धन्यवाद। उन लोगों के लिए फ्रेंच एक्सेल में अनुवाद किया गया है जो रुचि रखते हैं: = INDEX (FIBO; 1; एसआई (सी 7> = (इंडेक्स (FIBO; 1; (इक्विव (सी 7; FIBO; 1)) + INDEX (FIBO; 1) ; (इक्विव (सी 7; एफआईबीओ; 1) +1))/2; इक्विव (सी 7; एफआईबीओ; 1) +1; इक्विव (सी 7; एफआईबीओ; 1))) –

+0

दिलचस्प। chr – Fionnuala

1

लक्ष्य संख्या को परिभाषित करें Targ, जिसके सापेक्ष हम निकटतम फिब नंबर खोजना चाहते हैं।

परिभाषित

n = INT(LN(Targ*SQRT(5))/LN((1+SQRT(5))/2)) 

यह इस प्रकार है कि झूठ बोलना (एन) < = टार्ग < = मिथ्या (एन + 1)

एक मिथ्या (एन) और मिथ्या गणना कर सकता है जहां (n + 1) के माध्यम से

Fib(n) = ROUND(((1+SQRT(5))/2)^n/SQRT(5),0) 

अंत में झूठ बोलना (एन) और फिन (n + 1) के गणना मानों का उपयोग टार्ग के सबसे करीब मिथ्या नंबर मिल।

अन्य समाधान के रूप में कॉम्पैक्ट के रूप में प्रस्तुत नहीं किया गया है क्योंकि इसे कुछ सहायक सूत्रों की आवश्यकता है, लेकिन इसके लिए फिब संख्याओं के लिए कोई तालिका की आवश्यकता नहीं है।

+0

लुकास संख्याओं के बारे में क्या? वह सूत्र कैसा दिखता है? –