当前位置:   article > 正文

6.1 函数(1) (素数、牛顿迭代法求平方根)_迭代法求素数

迭代法求素数

  1. #include<iostream>
  2. using namespace std;
  3. int Max(int x, int y)
  4. {
  5. if(x > y)
  6. return x;
  7. else
  8. return y;
  9. }
  10. int main()
  11. {
  12. int n = Max(4,6);//6
  13. cout << n << "," << Max(20,n) << endl;//6,20
  14. return 0;
  15. }

  1. #include<iostream>
  2. #include<cmath>
  3. using namespace std;
  4. bool Isprime(unsigned int n)//无符号整数,一定为正数
  5. {
  6. if(n <=1 )
  7. return false;
  8. for(int i = 2; i <= sqrt(n); ++i)
  9. {
  10. if(n % i == 0)
  11. return false;
  12. }
  13. return true;
  14. }
  15. int main()
  16. {
  17. cout << Isprime(2) << "," << Isprime(4) << "," << Isprime(5);//1,0,1
  18. return 0;
  19. }

  1. #include<iostream>
  2. #define EPS 0.001//精度
  3. using namespace std;
  4. double Sqrt(double a)
  5. {
  6. double x = a/2, lastx = x + 1 + EPS;
  7. while(x - lastx > EPS || lastx - x < EPS)//|x-lastx|>EPS大于精度范围,就要继续迭代
  8. {
  9. lastx = x;
  10. x = (x + a/x)/2;
  11. }
  12. return x;
  13. }
  14. double Distance(double x1, double y1, double x2, double y2)
  15. {
  16. return Sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));
  17. }
  18. int main()
  19. {
  20. double x1, y1, x2, y2, x3, y3;
  21. cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
  22. cout << Distance(x1,y1,x2,y2) << endl;
  23. cout << Distance(x1,y1,x3,y3) << endl;
  24. cout << Distance(x2,y2,x3,y3) << endl;
  25. return 0;
  26. }



声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号