title: Area Of A Hexagon
signature: area_of_a_hexagon <- function(s) {
test_code: 
  
  
  # SOLUTION CODE
  # ============================================
  PLACEHOLDER_CODE_BODY
  
  # TESTING CODE 
  # ============================================
  validate_solution <- function(actual, expected) {
      abs(actual - expected) < 1e-09
  }
  
  driver <- function(s, expected){
      if (validate_solution(PLACEHOLDER_FN_NAME(s), expected)){
          "PASSED"
      } else{
          "FAILED"
      }
  }
  
  main <- function() {
      cat(sprintf("TEST-0...%s\n",driver(
          1772.6589509256596, 
          8163986.207300422
      )))
  
      cat(sprintf("TEST-1...%s\n",driver(
          -599.737107809315, 
          934487.9989101035
      )))
  
      cat(sprintf("TEST-2...%s\n",driver(
          1074.1765931782, 
          2997804.1448343466
      )))
  
      cat(sprintf("TEST-3...%s\n",driver(
          -1182.4087746714795, 
          3632345.696441302
      )))
  
      cat(sprintf("TEST-4...%s\n",driver(
          8083.035797247716, 
          169746524.38794258
      )))
  
      cat(sprintf("TEST-5...%s\n",driver(
          -6126.414356565494, 
          97513471.98905805
      )))
  
      cat(sprintf("TEST-6...%s\n",driver(
          5370.057504189614, 
          74922068.46663411
      )))
  
      cat(sprintf("TEST-7...%s\n",driver(
          -6947.020794285176, 
          125386010.4299519
      )))
  
      cat(sprintf("TEST-8...%s\n",driver(
          2110.5107873533325, 
          11572495.990484647
      )))
  
      cat(sprintf("TEST-9...%s\n",driver(
          -6458.751326919488, 
          108379966.88267714
      )))
  
  }
  
  main()
source_py: def area_of_a_hexagon(s):
      return (((3 * math.sqrt(3)) * (s * s)) / 2)
source_cpp: double area_of_a_hexagon(double s) {
    return ( ( 3 * sqrt ( 3 ) * ( s * s ) ) / 2 );
  }