Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Collatz*/
- #include <stdio.h>
- int main() {
- int number, pid;
- printf("Insert number!");
- scanf("%d", &number);
- if (number > 0) {
- pid = fork();
- }
- else {
- printf("Number should be larger than 0!");
- }
- if (pid < 0) {
- printf("Could not create a child process!");
- }
- else if (pid == 0) {
- // Child process
- printf("%d ", number);
- while (number != 1) {
- if (number %2 == 0) {
- // Even number
- number /= 2;
- }
- else {
- // Odd number
- number = (3 * number) + 1;
- }
- printf("%d ", number);
- }
- }
- else {
- // Parent process
- printf("Process complete!");
- wait(NULL);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement