Created
November 13, 2014 11:54
-
-
Save sugitach/4ce871ee1cd743c3de09 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#use "metro.ml" | |
(* 目的:ふたつの駅の漢字の駅名とリストを受け取って2駅間の距離を返す *) | |
(* get_ekikan_kyori : string -> string -> ekikan_t list -> float *) | |
let rec get_ekikan_kyori s1 s2 lst = | |
if s1 = s2 | |
then 0. | |
else match lst with | |
[] -> infinity | |
| first::rest -> if (first.kiten = s1 && first.shuten = s2) || | |
(first.kiten = s2 && first.shuten = s1) | |
then first.kyori | |
else get_ekikan_kyori s1 s2 rest | |
(* テスト *) | |
let test1 = get_ekikan_kyori "茗荷谷" "茗荷谷" global_ekikan_list = 0. | |
let test1 = get_ekikan_kyori "茗荷谷" "新大塚" global_ekikan_list = 1.2 | |
let test2 = get_ekikan_kyori "新大塚" "茗荷谷" global_ekikan_list = 1.2 | |
let test3 = get_ekikan_kyori "北千住" "茗荷谷" global_ekikan_list = infinity |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment