Advertisement
Farjana_akter

Untitled

Dec 1st, 2019
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. bool mark[100000]={false};
  5. int isprime[100000];
  6. int primefac[100000];
  7. void sieve()
  8. {
  9.  
  10. mark[0]=false;
  11. mark[1]=false;
  12. for(int i=2;i<=110;i++)
  13. mark[i]=true;
  14. for(int i=2;i*i<=110;i++)
  15. {
  16. if(mark[i]==true)
  17. {
  18. for(int j=i*i;j<=110;j+=i)
  19. mark[j]=false;
  20. }
  21. }
  22. int k=0;
  23. for(int i=2;i<=110;i++)
  24. {
  25. if(mark[i]==true)
  26. isprime[k++]=i;
  27. }
  28. }
  29.  
  30. int main()
  31. {
  32. int n,k,i,j,l,a,b,c,cnt=0;
  33. sieve();
  34. while(cin>>n && n)
  35. {
  36. l=1;
  37. for(i=0;isprime[i]<=n;i++)
  38. {
  39. cnt=0;
  40. a=isprime[i];
  41. for(j=1;j<=n;j++)
  42. {
  43. b=j;
  44. while(b%a==0)
  45. {
  46. cnt++;
  47. b/=a;
  48. }
  49. }
  50. primefac[l]=cnt;
  51. l++;
  52. }
  53. l=l-1;
  54. printf("%3d! =",n);
  55. if(l>15)
  56. {
  57. for(i=1;i<=15;i++)
  58. {
  59. printf("%3d",primefac[i]);
  60. }
  61. printf("\n");
  62. printf(" ");
  63. for(i=16;i<=l;i++)
  64. {
  65. printf("%3d",primefac[i]);
  66. }
  67. printf("\n");
  68. }
  69. else
  70. {
  71. for(i=1;i<=l;i++)
  72. {
  73. printf("%3d",primefac[i]);
  74. }
  75. printf("\n");
  76. }
  77. }
  78. return 0;
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement