Determine that if given number is full Fibonacci Number
A full Fibonacci number is a positive integer that can be written as the sum of two or more consecutive Fibonacci numbers. To determine if a given number is a full Fibonacci number, we can check if it can be expressed as the sum of two or more consecutive Fibonacci numbers. If it can, then it is a full Fibonacci number; otherwise, it is not. Fibonacci numbers are a sequence of numbers in which each number is the sum of the two preceding numbers, starting from 0 and 1.
Fibonacci numbers are a sequence of numbers in which each number is the sum of the two preceding numbers, starting from 0 and 1. So the sequence begins 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, and so on.
To determine if a given number is a full Fibonacci number, we need to check if it can be expressed as the sum of two or more consecutive Fibonacci numbers. For example, the number 21 is a full Fibonacci number because it can be expressed as the sum of 8 and 13, two consecutive Fibonacci numbers.
Program Solution
// C program for
// Determine that if given number is full Fibonacci Number
#include <stdio.h>
#include <math.h>
int isFibonacciNo(int n)
{
// 5n²+4
int a = 5 *n *n + 4;
// 5n²-4
int b = 5 * n * n - 4;
int aSqrt = sqrt(a);
int bSqrt = sqrt(b);
if ((aSqrt *aSqrt) == a || (bSqrt *bSqrt) == b)
{
// When aSqrt or bSqrt is perfect square
return 1;
}
return 0;
}
int isFibonacciDigit(int num)
{
int n = num;
while (n > 0)
{
if (n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return 0;
}
// Remove last digit
n = n / 10;
}
return 1;
}
void isFullFibonacciNo(int n)
{
if (n > 0 && isFibonacciNo(n) && isFibonacciDigit(n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
printf("\n Given %d is full fibonacci number ", n);
}
else
{
printf("\n Given %d is not fibonacci number ", n);
}
}
int main(int argc, char const *argv[])
{
// Test
isFullFibonacciNo(51);
isFullFibonacciNo(233);
isFullFibonacciNo(21);
isFullFibonacciNo(14);
return 0;
}
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
// Java Program
// Determine that if given number is full Fibonacci Number
public class FibonacciNumber
{
public boolean isFibonacciNo(int n)
{
// 5n²+4
int a = 5 * n * n + 4;
// 5n²-4
int b = 5 * n * n - 4;
int aSqrt = (int)Math.sqrt(a);
int bSqrt = (int)Math.sqrt(b);
if ((aSqrt * aSqrt) == a || (bSqrt * bSqrt) == b)
{
// When aSqrt or bSqrt is perfect square
return true;
}
return false;
}
public boolean isFibonacciDigit(int num)
{
int n = num;
while (n > 0)
{
if (n % 10 == 4 && n % 10 == 6 && n % 10 == 7 && n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false;
}
// Remove last digit
n = n / 10;
}
return true;
}
public void isFullFibonacciNo(int n)
{
if (n > 0 && isFibonacciNo(n) && isFibonacciDigit(n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
System.out.print("\n Given " + n + " is full fibonacci number ");
}
else
{
System.out.print("\n Given " + n + " is not fibonacci number ");
}
}
public static void main(String[] args)
{
FibonacciNumber task = new FibonacciNumber();
// Test
task.isFullFibonacciNo(51);
task.isFullFibonacciNo(233);
task.isFullFibonacciNo(21);
task.isFullFibonacciNo(14);
}
}
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
// Include header file
#include <iostream>
#include <math.h>
using namespace std;
// C++ Program
// Determine that if given number is full Fibonacci Number
class FibonacciNumber
{
public: bool isFibonacciNo(int n)
{
// 5n²+4
int a = 5 *n *n + 4;
// 5n²-4
int b = 5 *n *n - 4;
int aSqrt = (int) sqrt(a);
int bSqrt = (int) sqrt(b);
if ((aSqrt *aSqrt) == a || (bSqrt *bSqrt) == b)
{
// When aSqrt or bSqrt is perfect square
return true;
}
return false;
}
bool isFibonacciDigit(int num)
{
int n = num;
while (n > 0)
{
if (n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false;
}
// Remove last digit
n = n / 10;
}
return true;
}
void isFullFibonacciNo(int n)
{
if (n > 0 && this->isFibonacciNo(n) && this->isFibonacciDigit(n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
cout << "\n Given " << n << " is full fibonacci number ";
}
else
{
cout << "\n Given " << n << " is not fibonacci number ";
}
}
};
int main()
{
FibonacciNumber *task = new FibonacciNumber();
// Test
task->isFullFibonacciNo(51);
task->isFullFibonacciNo(233);
task->isFullFibonacciNo(21);
task->isFullFibonacciNo(14);
return 0;
}
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
// Include namespace system
using System;
// Csharp Program
// Determine that if given number is full Fibonacci Number
public class FibonacciNumber
{
public Boolean isFibonacciNo(int n)
{
// 5n²+4
int a = 5 * n * n + 4;
// 5n²-4
int b = 5 * n * n - 4;
int aSqrt = (int) Math.Sqrt(a);
int bSqrt = (int) Math.Sqrt(b);
if ((aSqrt * aSqrt) == a || (bSqrt * bSqrt) == b)
{
// When aSqrt or bSqrt is perfect square
return true;
}
return false;
}
public Boolean isFibonacciDigit(int num)
{
int n = num;
while (n > 0)
{
if (n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false;
}
// Remove last digit
n = n / 10;
}
return true;
}
public void isFullFibonacciNo(int n)
{
if (n > 0 && this.isFibonacciNo(n) && this.isFibonacciDigit(n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
Console.Write("\n Given " + n + " is full fibonacci number ");
}
else
{
Console.Write("\n Given " + n + " is not fibonacci number ");
}
}
public static void Main(String[] args)
{
FibonacciNumber task = new FibonacciNumber();
// Test
task.isFullFibonacciNo(51);
task.isFullFibonacciNo(233);
task.isFullFibonacciNo(21);
task.isFullFibonacciNo(14);
}
}
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
package main
import "math"
import "fmt"
// Go Program
// Determine that if given number is full Fibonacci Number
func isFibonacciNo(n int) bool {
// 5n²+4
var a int = 5 * n * n + 4
// 5n²-4
var b int = 5 * n * n - 4
var aSqrt int = int(math.Sqrt(float64(a)))
var bSqrt int = int(math.Sqrt(float64(b)))
if (aSqrt * aSqrt) == a || (bSqrt * bSqrt) == b {
// When aSqrt or bSqrt is perfect square
return true
}
return false
}
func isFibonacciDigit(num int) bool {
var n int = num
for (n > 0) {
if n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9 {
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false
}
// Remove last digit
n = n / 10
}
return true
}
func isFullFibonacciNo(n int) {
if n > 0 && isFibonacciNo(n) && isFibonacciDigit(n) {
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
fmt.Print("\n Given ", n, " is full fibonacci number ")
} else {
fmt.Print("\n Given ", n, " is not fibonacci number ")
}
}
func main() {
// Test
isFullFibonacciNo(51)
isFullFibonacciNo(233)
isFullFibonacciNo(21)
isFullFibonacciNo(14)
}
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
<?php
// Php Program
// Determine that if given number is full Fibonacci Number
class FibonacciNumber
{
public function isFibonacciNo($n)
{
// 5n²+4
$a = 5 * $n * $n + 4;
// 5n²-4
$b = 5 * $n * $n - 4;
$aSqrt = (int) sqrt($a);
$bSqrt = (int) sqrt($b);
if (($aSqrt * $aSqrt) == $a || ($bSqrt * $bSqrt) == $b)
{
// When aSqrt or bSqrt is perfect square
return true;
}
return false;
}
public function isFibonacciDigit($num)
{
$n = $num;
while ($n > 0)
{
if ($n % 10 == 4 && $n % 10 == 6 &&
$n % 10 == 7 && $n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false;
}
// Remove last digit
$n = (int)($n / 10);
}
return true;
}
public function isFullFibonacciNo($n)
{
if ($n > 0 && $this->isFibonacciNo($n) && $this->isFibonacciDigit($n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
echo("\n Given ".$n.
" is full fibonacci number ");
}
else
{
echo("\n Given ".$n.
" is not fibonacci number ");
}
}
}
function main()
{
$task = new FibonacciNumber();
// Test
$task->isFullFibonacciNo(51);
$task->isFullFibonacciNo(233);
$task->isFullFibonacciNo(21);
$task->isFullFibonacciNo(14);
}
main();
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
// Node JS Program
// Determine that if given number is full Fibonacci Number
class FibonacciNumber
{
isFibonacciNo(n)
{
// 5n²+4
var a = 5 * n * n + 4;
// 5n²-4
var b = 5 * n * n - 4;
var aSqrt = parseInt(Math.sqrt(a));
var bSqrt = parseInt(Math.sqrt(b));
if ((aSqrt * aSqrt) == a || (bSqrt * bSqrt) == b)
{
// When aSqrt or bSqrt is perfect square
return true;
}
return false;
}
isFibonacciDigit(num)
{
var n = num;
while (n > 0)
{
if (n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false;
}
// Remove last digit
n = parseInt(n / 10);
}
return true;
}
isFullFibonacciNo(n)
{
if (n > 0 && this.isFibonacciNo(n) &&
this.isFibonacciDigit(n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
process.stdout.write("\n Given " +
n + " is full fibonacci number ");
}
else
{
process.stdout.write("\n Given " +
n + " is not fibonacci number ");
}
}
}
function main()
{
var task = new FibonacciNumber();
// Test
task.isFullFibonacciNo(51);
task.isFullFibonacciNo(233);
task.isFullFibonacciNo(21);
task.isFullFibonacciNo(14);
}
main();
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
import math
# Python 3 Program
# Determine that if given number is full Fibonacci Number
class FibonacciNumber :
def isFibonacciNo(self, n) :
# 5n²+4
a = 5 * n * n + 4
# 5n²-4
b = 5 * n * n - 4
aSqrt = int(math.sqrt(a))
bSqrt = int(math.sqrt(b))
if ((aSqrt * aSqrt) == a or(bSqrt * bSqrt) == b) :
# When aSqrt or bSqrt is perfect square
return True
return False
def isFibonacciDigit(self, num) :
n = num
while (n > 0) :
if (n % 10 == 4 and n % 10 == 6 and
n % 10 == 7 and n % 10 == 9) :
# When digit is not [1 2 3 5 8]
# Is not fibonacci digit
return False
# Remove last digit
n = int(n / 10)
return True
def isFullFibonacciNo(self, n) :
if (n > 0 and self.isFibonacciNo(n) and
self.isFibonacciDigit(n)) :
# ➀ When number Fibonacci and
# ➁ When all digits of number is Fibonacci
print("\n Given ", n ," is full fibonacci number ", end = "")
else :
print("\n Given ", n ," is not fibonacci number ", end = "")
def main() :
task = FibonacciNumber()
# Test
task.isFullFibonacciNo(51)
task.isFullFibonacciNo(233)
task.isFullFibonacciNo(21)
task.isFullFibonacciNo(14)
if __name__ == "__main__": main()
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
# Ruby Program
# Determine that if given number is full Fibonacci Number
class FibonacciNumber
def isFibonacciNo(n)
# 5n²+4
a = 5 * n * n + 4
# 5n²-4
b = 5 * n * n - 4
aSqrt = Math.sqrt(a).to_i
bSqrt = Math.sqrt(b).to_i
if ((aSqrt * aSqrt) == a ||
(bSqrt * bSqrt) == b)
# When aSqrt or bSqrt is perfect square
return true
end
return false
end
def isFibonacciDigit(num)
n = num
while (n > 0)
if (n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9)
# When digit is not [1 2 3 5 8]
# Is not fibonacci digit
return false
end
# Remove last digit
n = n / 10
end
return true
end
def isFullFibonacciNo(n)
if (n > 0 && self.isFibonacciNo(n) &&
self.isFibonacciDigit(n))
# ➀ When number Fibonacci and
# ➁ When all digits of number is Fibonacci
print("\n Given ", n ," is full fibonacci number ")
else
print("\n Given ", n ," is not fibonacci number ")
end
end
end
def main()
task = FibonacciNumber.new()
# Test
task.isFullFibonacciNo(51)
task.isFullFibonacciNo(233)
task.isFullFibonacciNo(21)
task.isFullFibonacciNo(14)
end
main()
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
// Scala Program
// Determine that if given number is full Fibonacci Number
class FibonacciNumber()
{
def isFibonacciNo(n: Int): Boolean = {
// 5n²+4
var a: Int = 5 * n * n + 4;
// 5n²-4
var b: Int = 5 * n * n - 4;
var aSqrt: Int = scala.math.sqrt(a).toInt;
var bSqrt: Int = scala.math.sqrt(b).toInt;
if ((aSqrt * aSqrt) == a ||
(bSqrt * bSqrt) == b)
{
// When aSqrt or bSqrt is perfect square
return true;
}
return false;
}
def isFibonacciDigit(num: Int): Boolean = {
var n: Int = num;
while (n > 0)
{
if (n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false;
}
// Remove last digit
n = n / 10;
}
return true;
}
def isFullFibonacciNo(n: Int): Unit = {
if (n > 0 && isFibonacciNo(n) && isFibonacciDigit(n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
print("\n Given " + n + " is full fibonacci number ");
}
else
{
print("\n Given " + n + " is not fibonacci number ");
}
}
}
object Main
{
def main(args: Array[String]): Unit = {
var task: FibonacciNumber = new FibonacciNumber();
// Test
task.isFullFibonacciNo(51);
task.isFullFibonacciNo(233);
task.isFullFibonacciNo(21);
task.isFullFibonacciNo(14);
}
}
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
import Foundation;
// Swift 4 Program
// Determine that if given number is full Fibonacci Number
class FibonacciNumber
{
func isFibonacciNo(_ n: Int) -> Bool
{
// 5n²+4
let a: Int = 5 * n * n + 4;
// 5n²-4
let b: Int = 5 * n * n - 4;
let aSqrt: Int = Int((Double(a)).squareRoot());
let bSqrt: Int = Int((Double(b)).squareRoot());
if ((aSqrt * aSqrt) == a ||
(bSqrt * bSqrt) == b)
{
// When aSqrt or bSqrt is perfect square
return true;
}
return false;
}
func isFibonacciDigit(_ num: Int) -> Bool
{
var n: Int = num;
while (n > 0)
{
if (n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false;
}
// Remove last digit
n = n / 10;
}
return true;
}
func isFullFibonacciNo(_ n: Int)
{
if (n > 0 && self.isFibonacciNo(n) &&
self.isFibonacciDigit(n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
print("\n Given ", n ,
" is full fibonacci number ", terminator: "");
}
else
{
print("\n Given ", n ,
" is not fibonacci number ", terminator: "");
}
}
}
func main()
{
let task: FibonacciNumber = FibonacciNumber();
// Test
task.isFullFibonacciNo(51);
task.isFullFibonacciNo(233);
task.isFullFibonacciNo(21);
task.isFullFibonacciNo(14);
}
main();
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
// Kotlin Program
// Determine that if given number is full Fibonacci Number
class FibonacciNumber
{
fun isFibonacciNo(n: Int): Boolean
{
// 5n²+4
val a: Int = 5 * n * n + 4;
// 5n²-4
val b: Int = 5 * n * n - 4;
val aSqrt: Int = Math.sqrt(a.toDouble()).toInt();
val bSqrt: Int = Math.sqrt(b.toDouble()).toInt();
if ((aSqrt * aSqrt) == a || (bSqrt * bSqrt) == b)
{
// When aSqrt or bSqrt is perfect square
return true;
}
return false;
}
fun isFibonacciDigit(num: Int): Boolean
{
var n: Int = num;
while (n > 0)
{
if (n % 10 == 4 && n % 10 == 6 &&
n % 10 == 7 && n % 10 == 9)
{
// When digit is not [1 2 3 5 8]
// Is not fibonacci digit
return false;
}
// Remove last digit
n = n / 10;
}
return true;
}
fun isFullFibonacciNo(n: Int): Unit
{
if (n > 0 && this.isFibonacciNo(n) &&
this.isFibonacciDigit(n))
{
// ➀ When number Fibonacci and
// ➁ When all digits of number is Fibonacci
print("\n Given " + n + " is full fibonacci number ");
}
else
{
print("\n Given " + n + " is not fibonacci number ");
}
}
}
fun main(args: Array < String > ): Unit
{
val task: FibonacciNumber = FibonacciNumber();
// Test
task.isFullFibonacciNo(51);
task.isFullFibonacciNo(233);
task.isFullFibonacciNo(21);
task.isFullFibonacciNo(14);
}
Output
Given 51 is not fibonacci number
Given 233 is full fibonacci number
Given 21 is full fibonacci number
Given 14 is not fibonacci number
Please share your knowledge to improve code and content standard. Also submit your doubts, and test case. We improve by your feedback. We will try to resolve your query as soon as possible.
New Comment