Advertisement
pieniakoskar

SO07

Apr 24th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.69 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <unistd.h>
  4. #include <stdbool.h>
  5. #include <fcntl.h>
  6. #include <sys/types.h>
  7. #include <sys/stat.h>
  8.  
  9. bool lpierwsza(int liczba){
  10. for(int i=2;i*i<=liczba;i++){
  11. if(liczba%i==0)
  12. return false;
  13. }
  14. return true;
  15. }
  16.  
  17.  
  18. int main(){
  19. int a[2];
  20. pipe(a);
  21. if(fork()==0){
  22. for(int i=100;i<=200;i++){
  23. if(lpierwsza(i))
  24. write(a[1],&i,sizeof(i));
  25. }
  26. int j=0;
  27. write(a[1],&j,sizeof(j));
  28. close(a[0]);close(a[1]);
  29. }else{
  30. int b=0;
  31. for(int i=1;i<=99;i++){
  32. if(lpierwsza(i))
  33. printf("%d ,",i);
  34. }
  35. wait(NULL);
  36. while(true){
  37. read(a[0],&b,sizeof(b));
  38. if(b==0)
  39. break;
  40. printf("%d, ",b);
  41. }
  42. }
  43. return 0;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement