Guest User

Untitled

a guest
Jul 19th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<math.h>
  3. int main()
  4. {
  5. int ar[50000000]={0},i,j,N=100000000,p=0,x,n,beg,mid,end,d;
  6. float a,b,c;
  7.  
  8. for(int i=1;(i+i+1)*(i+i+1)<N;i++)
  9. {
  10. if(!ar[i])
  11. {
  12.  
  13. j=(i+i+1)*(i+i+1)/2;
  14. for(;j<=N/2;j+=i+i+1)
  15. ar[j]=1;
  16. }
  17.  
  18. }
  19. ar[p++]=2;
  20. for(int k=1;k<N/2;k++)
  21. {
  22. if(!ar[k])
  23. ar[p++]=k+k+1;
  24. }
  25.  
  26. scanf("%d",&x);
  27. while(x)
  28. {
  29. beg=0;end=p;mid=0;
  30. while(beg<=end)
  31. {
  32.  
  33. mid=(beg+end)/2;
  34. /*printf("beg=%d mid=%d end=%d\n",beg,mid,end);*/
  35. if(ar[mid]==x)
  36. break;
  37. else if(ar[mid]>x)
  38. end=mid-1;
  39. else
  40. beg=mid+1;
  41. }
  42. if(ar[mid]<=x)
  43. a=float(mid+1);
  44. else
  45. a=float(mid);
  46.  
  47. b=a-x/log(x);
  48. if(b<0)
  49. b*=-1;
  50. c=(b)/a*100;
  51. printf("%0.1f\n",c);
  52. scanf("%d",&x);
  53.  
  54.  
  55. }
  56.  
  57.  
  58.  
  59. }
Add Comment
Please, Sign In to add comment