Pregunta de práctica de codificación TCS | Serie de Fibonacci

Dado un número ‘n’, la tarea es imprimir la serie de Fibonacci usando argumentos de línea de comando . Los números de Fibonacci son los números en la siguiente secuencia de enteros.
 

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ……..

En términos matemáticos, la secuencia Fn de los números de Fibonacci está definida por la relación de recurrencia 
 

    Fn = Fn-1 + Fn-2

con valores semilla 
 

   F0 = 0 and F1 = 1.

Ejemplos: 
 

Input: n = 3
Output: 0, 1, 1

Input: 7
Output: 0, 1, 1, 2, 3, 5, 8

Acercarse: 
 

  • Dado que el número se ingresa como Argumento de línea de comando , no hay necesidad de una línea de entrada dedicada
  • Extraiga el número de entrada del argumento de la línea de comando
  • Este número extraído será de tipo String.
  • Convierta este número en un tipo entero y guárdelo en una variable, digamos num
  • Ahora funcionará la función fib que tiene un valor numérico.
  • En esta función, ahora tome tres variables a, b y c y ahora almacene el valor de dos de ellas como a=0, b=1;
  • Ahora, si el número == 1, entonces no habrá un número de fibonacci que devuelva a.
  • Si num> 1, intercambiaremos todos los valores de las variables como
    • c=a+b
    • un = segundo
    • b = c
  • Ahora imprimiremos todos los valores a, b y c.

Programa:
 

C

// C program to print the Fibonacci Series
// using command line arguments
 
#include <stdio.h>
#include <stdlib.h> /* atoi */
 
// Function to print the Fibonacci Series
void fib(int n)
{
 
    int a = 0, b = 1, c, i;
 
    if (n <= 1)
        printf("%d ", a);
    else {
 
        printf("%d %d ", a, b);
 
        for (i = 3; i <= n; i++) {
            c = a + b;
            a = b;
            b = c;
 
            printf("%d ", c);
        }
 
        printf("\n");
    }
}
 
// Driver code
int main(int argc, char* argv[])
{
 
    int num, res = 0;
 
    // Check if the length of args array is 1
    if (argc == 1)
        printf("No command line arguments found.\n");
 
    else {
 
        // Get the command line argument and
        // Convert it from string type to integer type
        // using function "atoi( argument)"
        num = atoi(argv[1]);
 
        // Print the Fibonacci series
        fib(num);
    }
    return 0;
}

Java

// Java program to print the Fibonacci Series
// using command line arguments
 
class GFG {
 
    // Function to print the Fibonacci Series
    static void fib(int n)
    {
 
        int a = 0, b = 1, c, i;
 
        if (n <= 1)
            System.out.print(a + " ");
        else {
 
            System.out.print(a + " " + b + " ");
 
            for (i = 3; i <= n; i++) {
                c = a + b;
                a = b;
                b = c;
 
                System.out.print(c + " ");
            }
 
            System.out.println();
        }
    }
 
    // Driver code
    public static void main(String[] args)
    {
 
        // Check if length of args array is
        // greater than 0
        if (args.length > 0) {
 
            // Get the command line argument and
            // Convert it from string type to integer type
            int num = Integer.parseInt(args[0]);
 
            // Print the Fibonacci series
            fib(num);
        }
        else
            System.out.println("No command line "
                               + "arguments found.");
    }
}

Producción: 
 

  • Cía:
     

  •  
  • En Java:
     

  •  

Publicación traducida automáticamente

Artículo escrito por RishabhPrabhu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *