Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
31
Task/Box-the-compass/OCaml/box-the-compass.ocaml
Normal file
31
Task/Box-the-compass/OCaml/box-the-compass.ocaml
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
let test_cases = [0.0; 16.87; 16.88; 33.75; 50.62; 50.63; 67.5;
|
||||
84.37; 84.38; 101.25; 118.12; 118.13; 135.0;
|
||||
151.87; 151.88; 168.75; 185.62; 185.63; 202.5;
|
||||
219.37; 219.38; 236.25; 253.12; 253.13; 270.0;
|
||||
286.87; 286.88; 303.75; 320.62; 320.63; 337.5;
|
||||
354.37; 354.38];;
|
||||
|
||||
let directions = ["North"; "North by East"; "North-Northeast";
|
||||
"Northeast by North"; "Northeast";
|
||||
"Northeast by East"; "East-Northeast"; "East by North";
|
||||
"East"; "East by South"; "East-Southeast";
|
||||
"Southeast by East"; "Southeast"; "Southeast by South";
|
||||
"South-Southeast"; "South by East"; "South";
|
||||
"South by West"; "South-Southwest"; "Southwest by South";
|
||||
"Southwest"; "Southwest by West"; "West-Southwest";
|
||||
"West by South"; "West"; "West by North";
|
||||
"West-Northwest"; "Northwest by West"; "Northwest";
|
||||
"Northwest by North"; "North-Northwest"; "North by West";];;
|
||||
|
||||
let get_direction_index input =
|
||||
let shifted = (input +. 5.6201) in
|
||||
let shifted = if shifted > 360. then shifted -. 360. else shifted in
|
||||
int_of_float (shifted /. 11.25);;
|
||||
|
||||
let print_direction input =
|
||||
let index = get_direction_index input in
|
||||
let direction = List.nth directions index in
|
||||
let test = Printf.printf "%3d %-20s %.2f\n" (index + 1) direction in
|
||||
test input;;
|
||||
|
||||
List.iter (print_direction) test_cases;;
|
||||
Loading…
Add table
Add a link
Reference in a new issue