The Fibonacci sequence is the series of numbers 0, 1, 1, 2, 3, 5, 8, .... Formally, it can be expressed as:
f ib0 = 0
f ib1 = 1
f ibn = f ibn−1 + f ibn−2
Write a C program using the fork() system call that that generates the Fibonacci sequence in the child process. The number of the sequence will be provided in the command line. For example, if 5 is provided, the first five numbers in the Fibonacci sequence will be output by the child process. Because the parent and child processes have their own copies of the data, it will be necessary for the child to output the sequence. Have the parent invoke the wait() call to wait for the child process to complete before exiting the program. Perform necessary error checking to ensure that a non-negative number is passed on the command line.

Recommended Answers

Need an answer

The answer is to use google.

Jump to Post

All 5 Replies

Re: Need an answer 80 80

>>Need an answer

The answer is to use google.

Re: Need an answer 80 80

>Need an answer
And we need YOU to read the forum rules and make an effort.
http://www.daniweb.com/forums/announcement118-2.html

You didn't even ask a question. You just dumped your assignment!

Re: Need an answer 80 80

The Fibonacci sequence is the series of numbers 0, 1, 1, 2, 3, 5, 8, .... Formally, it can be expressed as:
f ib0 = 0
f ib1 = 1
f ibn = f ibn−1 + f ibn−2
Write a C program using the fork() system call that that generates the Fibonacci sequence in the child process. The number of the sequence will be provided in the command line. For example, if 5 is provided, the first five numbers in the Fibonacci sequence will be output by the child process. Because the parent and child processes have their own copies of the data, it will be necessary for the child to output the sequence. Have the parent invoke the wait() call to wait for the child process to complete before exiting the program. Perform necessary error checking to ensure that a non-negative number is passed on the command line.

#include <stdio.h>

#include <stdlib.h>



int main(int argc,char *argv[])

{

    int k, pid,i=0,j=0;

    int sum=1;

    int num=atoi(argv[1]);

    if (argc == 0)

    {

        printf ("Please enter a number to fibonacci sequence");

    }

    pid = fork();

    if (pid == 0)

    {
      

        for(k=1;k<num;k++)
        {
                i = j;

                j= sum;

                sum = i + j;

                printf("Fibonacci seqence is: %d\n",sum);

        }
   }  

    else
   {

    wait();
    printf ("parent is waiting for child\n");

   }
   return 0;
Re: Need an answer 80 80

Nice, and you managed to use code tags as well.

But do you have a question about that code, or have you finished the assignment now?

Re: Need an answer 80 80

Hi Salem i completed the above code and other two codes also. There's more 1 question to attempt.

Will complete my assignment today.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of 1.19 million developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.