| 5 | #include <time.h> |
| 6 | |
| 7 | uint64_t random64(uint32_t * seed) { |
| 8 | uint64_t result; |
| 9 | uint8_t * result8 = (uint8_t *)&result; // <1> |
| 10 | for (size_t i = 0; i < sizeof(result); i++) { |
| 11 | result8[i] = rand_r(seed); |
| 12 | } |
| 13 | return result; |
| 14 | } |
| 15 | |
| 16 | uint64_t sum_digits_squared(uint64_t num) { |
| 17 | uint64_t total = 0; |