25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
353 B

  1. #include "chen.h"
  2. #include <limits>
  3. bool chen(int a, int b, int *e)
  4. {
  5. if ((a>0 && b>0 && a >(INT_MAX / b)) || (a<0 && b<0 && a < (INT_MAX / b)))
  6. {
  7. return false;
  8. }
  9. else if ((a > 0 && b < 0 && b != -1 && (INT_MIN / a) > b || (a < 0 && b > 0 && a != -1 && (INT_MIN / a) < b)))
  10. {
  11. return false;
  12. }
  13. else
  14. {
  15. *e = a * b;
  16. return true;
  17. }
  18. }