दिया गया नंबर फाइबोनैचि है या नहीं जांचने के लिए जावा प्रोग्राम निम्नलिखित है:
उदाहरण
public class Demo{
static boolean perfect_square_check(int val){
int s = (int) Math.sqrt(val);
return (s*s == val);
}
static boolean fibonacci_num_check(int n){
return perfect_square_check(5*n*n + 4) || perfect_square_check(5*n*n - 4);
}
public static void main(String[] args){
for (int i = 6; i <= 17; i++)
System.out.println(fibonacci_num_check(i) ? i + " एक फाइबोनैचि संख्या है" : i + " एक फाइबोनैचि संख्या नहीं है");
}
}
आउटपुट
6 एक फाइबोनैचि संख्या नहीं है 7 एक फाइबोनैचि संख्या नहीं है 8 एक फाइबोनैचि संख्या है 9 एक फाइबोनैचि संख्या नहीं है 10 एक फाइबोनैचि संख्या नहीं है 11 एक फाइबोनैचि संख्या नहीं है 12 एक फाइबोनैचि संख्या नहीं है 13 एक फाइबोनैचि संख्या है 14 एक फाइबोनैचि संख्या नहीं है 15 एक फाइबोनैचि संख्या नहीं है 16 एक फाइबोनैचि संख्या नहीं है 17 एक फाइबोनैचि संख्या नहीं है
Demo नामक एक क्लास एक स्टैटिक बूलियन फंक्शन को परिभाषित करती है जो एक इंटीजर मान को पैरामीटर के रूप में लेता है। यह मान के वर्गमूल की जांच करता है और इसे दूसरे मान को असाइन करता है। यदि वर्गमूल को वर्गमूल से गुणा करने का गुणनफल पास किए गए मान के बराबर है, तो इसे वापस कर दिया जाता है।
अगला, एक और बूलियन स्टैटिक फंक्शन परिभाषित किया जाता है जो पिछले फंक्शन को कॉल करता है। मुख्य फंक्शन में, प्रारंभिक संख्या और अंतिम संख्या के माध्यम से पुनरावृति की जाती है, और प्रासंगिक संदेश प्रिंट किया जाता है साथ ही यह जांचते हुए कि हर संख्या फाइबोनैचि संख्या है या नहीं।