#include "aliases.h" #include "generator/gen_argparser.h" #include "generator/generator.h" #include "haversine.h" #include "point_types.h" #include #include i32 main(i32 argc, char *argv[]) { GeneratorArgs args = parse_args(argc, argv); srand(args.seed); PairArray arr = {args.count, NULL}; arr.pairs = (PointPair *)malloc(arr.count * sizeof(PointPair)); fill_pairs_array(&arr, args.clustered); write_pairs_to_json(arr, "pairs.json"); FILE *fp = fopen("count_and_distances", "w"); if (fp) { fwrite(&(arr.count), sizeof(arr.count), 1, fp); f64 sum = 0.0; for (u64 i = 0; i < arr.count; ++i) { f64 distance = haversine_of_degrees(arr.pairs[i], EARTH_RADIUS_KM); fwrite(&distance, sizeof(f64), 1, fp); sum += distance; } printf("\nAVERAGE DISTANCE: %f\n", sum / arr.count); fclose(fp); } free(arr.pairs); return 0; }