fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4. //dai5kai
  5. struct zahyo{
  6. double x;
  7. double y;
  8. };
  9.  
  10. int main(void) {
  11. struct zahyo A,B,C;
  12. scanf("%lf %lf",&A.x,&A.y);
  13. scanf("%lf %lf",&B.x,&B.y);
  14. scanf("%lf %lf",&C.x,&C.y);
  15. if(A.x<B.x){
  16. double kyori=sqrt(abs(B.x-A.x)*abs(B.x-A.x)+abs(B.y-A.y)*abs(B.y-A.y));
  17. printf("Answer:%lf",kyori);
  18. }
  19. else if(A.x>=B.x && A.x<=C.x){
  20. double BC_x=C.x-B.x,BC_y=C.y-B.y;
  21. double BA_x=A.x-B.x,BA_y=A.y-B.y;
  22. double n=(BA_x*BC_x+BA_y*BC_y)/(BC_x*BC_x+BC_y*BC_y);
  23. struct zahyo P;
  24. P.x=B.x+n*BC_x;
  25. P.y=B.y+n*BC_y;
  26. double kyori=sqrt(abs(A.x-P.x)*abs(A.x-P.x)+abs(A.y-P.y)*abs(A.y-P.y));
  27. printf("Answer:%lf",kyori);
  28. }
  29. else if(A.x>C.x){
  30. double kyori=sqrt(abs(A.x-C.x)*abs(A.x-C.x)+abs(A.y-C.y)*abs(A.y-C.y));
  31. printf("Answer:%lf",kyori);
  32. }
  33. return 0;
  34. }
Success #stdin #stdout 0s 5284KB
stdin
Standard input is empty
stdout
Answer:0.000000