The calculated distance (air line) between Haddington and Lochgelly is approximately 24 miles respectively 38 kilometers.
By car or train, the actual journey to Lochgelly is certainly longer, as only the direct route (as the crow flies) between Haddington and Lochgelly has been calculated here.
Air line (approximately)
38 kilometers
20 nautical miles