thien

bÀI 10

Mar 2nd, 2015
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. Bài 10. Viết chương trình phân tích một số nguyên thành các thừa số nguyên tố
  2.  
  3.  
  4. CODE 1:
  5. #include<iostream>
  6. #include<vector>
  7. using namespace std;
  8. int n;
  9. vector<int>factor,power;
  10. void f(int n, vector<int>&factor,vector<int>&power)
  11. {
  12. for (int i=2;i*i<=n;i++)
  13. {
  14. if (n%i==0)
  15. {
  16. factor.push_back(i);
  17. int p;
  18. for (p=0;n%i==0;p++)
  19. n/=i;
  20. power.push_back(p);
  21. }
  22. }
  23. if (n>1)
  24. {
  25. factor.push_back(n);
  26. power.push_back(1);
  27. }
  28. }
  29. int main()
  30. {
  31. cin>>n;
  32. f(n,factor,power);
  33. cout<<"n = ";
  34. for (int i=0;i<factor.size();i++)
  35. {
  36. cout<<factor[i]<<"^"<<power[i];
  37. if (i+1<factor.size())cout<<" * ";
  38. }
  39. cout<<endl;
  40. system("pause");
  41. return 0;
  42. }
  43.  
  44.  
  45.  
  46.  
  47. CODE 2:
  48.  
  49.  
  50. #include<stdio.h>
  51. #include<conio.h>
  52.  
  53. int main()
  54. {
  55. int n, i;
  56.  
  57. printf("Nhap n = ");
  58. scanf("%d", &n);
  59.  
  60. if(n < 0){
  61. printf("%d = - ", n);
  62. n = -n;
  63. }
  64. else
  65. printf("%d = ", n);
  66.  
  67. for(i = 2; i < n;)
  68. if(!(n % i)) { //neu n chia het cho i
  69. printf("%d * ", i); //in gia tri i
  70. n /= i;
  71. }
  72. else
  73. ++i;
  74. printf("%d", n);
  75.  
  76. getch();
  77. return 0;
  78. }
Advertisement
Add Comment
Please, Sign In to add comment