The calculated distance (air line) between Cockenzie and Rosyth is approximately 19 miles respectively 30 kilometers.
By car or train, the actual journey to Rosyth is certainly longer, as only the direct route (as the crow flies) between Cockenzie and Rosyth has been calculated here.