File: Stare vježbe/vjezbe03/20__kombinirani_uvjeti.c

  1. /*
  2.   20__kombinirani_uvjeti.c
  3.   Kobinirano koristenje if-else naredbi i uvjetnog operatora ? :
  4.   -----
  5.   Program ucitava koordinate dviju tocaka u 2D koordinatnom sustavu, te
  6.   ispisuje jednadzbu pravca kroz te dvije tocke.
  7.   Nakon toga ucitavaju se koordinate trece tocke, te provjerava da li
  8.   dana tocka lezi na pravcu.
  9. */
  10.  
  11. #include <stdio.h>
  12.  
  13. int main() {
  14.  
  15. float x1, x2, y1, y2, x3, y3, a, b;
  16. short int foo;
  17.  
  18. printf ("Unesi koordinate dvije tocke u 2D koordinatnom sustavu:\n");
  19. scanf("%f %f %f %f", &x1, &y1, &x2, &y2);
  20.  
  21. foo=0;
  22.  
  23. if (x1==x2) {
  24. printf ("Jednadzba pravca je x = %f\n", x1);
  25. foo++;
  26. }
  27. else {
  28. a=(y2-y1)/(x2-x1);
  29. b=a*(-x1)+y1;
  30. printf("Jednadzba pravca je y = %f*x + %f\n", a, b);
  31. }
  32.  
  33. printf("\nUnesi koordinate trece tocke:\n");
  34. scanf("%f %f", &x3, &y3);
  35.  
  36. if (foo)
  37. x2==x3 ? printf("Tocka lezi na pravcu\n") :
  38. printf ("Tocka ne lezi na pravcu\n");
  39. else
  40. y3==a*x3+b ? printf("Tocka lezi na pravcu\n") :
  41. printf ("Tocka ne lezi na pravcu\n");
  42.  
  43. return 0;
  44. }
  45.