Write a C program that uses the fork() system call and creates a sequence in the child process based off of the Collatz conjecture (n= n/2 if even, 3 x n + 1 if odd). The first number in the sequence will be provided via a command line. An example would be if 8 were entered then the sequence would be 8, 4, 2, and 1. The parent process must use wait() so that the child process can output the sequence before exiting the program.
Some added conditions of the program are that it must fork two processes and print their respective Collatz conjecture. The first child sequence will be based on the command line input and the second child will be based on the first child’s command line input plus 3. The first input must be between 1-35 only. n will hold the command line input and it must be incremented by 3 in the parent process, not the child process. Also, do not create a new variable to hold the new value like m=n+3. The parent process must print out the value passed to each child. Each child should print out their name (1 or 2) with each number output. Each process must also print its own process ID (getpid() should be used twice at the start and right before execution). The program must run the forked processes concurrently. The wait call must be used twice.
Program must be written using the most basic methods, nothing advanced.