Простая задачка на Си++
2020-08-02 04:29Сложить два целых числа, вернуть целое. Породить исключение в случае арифметического переполнения.
Удивительно, сколько народу обламывается на этой задачке.int add(int a, int b);

no subject
Date: 2020-08-02 18:38 (UTC)int add(int a, int b) { if (~(a ^ b) & (a ^ ((a & ~INT_MIN) + (b & ~INT_MIN))) & INT_MIN) throw overflow_error("arithmetic overflow"); return a + b; }no subject
Date: 2020-08-02 21:05 (UTC)