title: Check Line Passes Origin
signature: function check_line_passes_origin(x1, y1, x2, y2)
test_code: using Printf
  
  # SOLUTION CODE
  # ============================================
  PLACEHOLDER_CODE_BODY
  
  # TESTING CODE 
  # ============================================
  function validate_solution(actual, expected)
      return actual == expected
  end
  
  function driver(x1, y1, x2, y2, expected)
      try
  
          if validate_solution(PLACEHOLDER_FN_NAME(x1, y1, x2, y2), expected)
              return "PASSED";
          end
          return "FAILED";
      catch exception_obj
          return string(Base.typename(typeof(exception_obj)).wrapper);
      end
  end
  
  function main()
      
      result = driver(1, 28, 2, 56, true);
      @printf("TEST-0...%s\n",result);
      
      result = driver(10, 0, 20, 0, true);
      @printf("TEST-1...%s\n",result);
      
      result = driver(0, 1, 0, 17, true);
      @printf("TEST-2...%s\n",result);
      
      result = driver(1, 1, 10, 10, true);
      @printf("TEST-3...%s\n",result);
      
      result = driver(82, 86, 19, 4, false);
      @printf("TEST-4...%s\n",result);
      
      result = driver(78, 86, 11, 6, false);
      @printf("TEST-5...%s\n",result);
      
      result = driver(13, 46, 33, 33, false);
      @printf("TEST-6...%s\n",result);
      
      result = driver(18, 29, 95, 12, false);
      @printf("TEST-7...%s\n",result);
      
      result = driver(42, 35, 25, 36, false);
      @printf("TEST-8...%s\n",result);
      
      result = driver(29, 17, 45, 35, false);
      @printf("TEST-9...%s\n",result);
      
  end
  
  main()
source_py: def check_line_passes_origin(x1, y1, x2, y2):
      return ((x1 * (y2 - y1)) == (y1 * (x2 - x1)))
source_cpp: bool check_line_passes_origin(int x1, int y1, int x2, int y2) {
    return ( x1 * ( y2 - y1 ) == y1 * ( x2 - x1 ) );
  }