unsigned long long a,b,c;
cin>>a>>b>>c;
cout<<(a*b*c);
Ввод заданного: 512 294967268 279632277 выхода: 5337484673731225600Умножение 3 длинных длинных чисел дает разные ответы на C++ и Python
Однако, когда я 512 * 294967268 * 279632277
в Python, выход я получаю:
42230972821150328832L
Почему у меня есть другой ответ?
Переполнение очевидно. Вместо этого используйте 'long double'. Проверьте «sizeof (long long)» и «long double», и вы увидите разницу. –