내 코드는 매우 간단하다 :이 이상한 계산 방법을 파스칼로 수정하는 방법은 무엇입니까?
read(m,n);
Str(m*n,s);
writeln(s);
와 나는 둘 다 m을 위해 1000000000을 넣어 경우 n은 결과로 나는 또한, -1486618624를 얻을 수 m과 n의 Longint, 그래서 그들은 1로 한도를 초과하지 않습니다 000 000 000.
내 코드는 매우 간단하다 :이 이상한 계산 방법을 파스칼로 수정하는 방법은 무엇입니까?
read(m,n);
Str(m*n,s);
writeln(s);
와 나는 둘 다 m을 위해 1000000000을 넣어 경우 n은 결과로 나는 또한, -1486618624를 얻을 수 m과 n의 Longint, 그래서 그들은 1로 한도를 초과하지 않습니다 000 000 000.
m*n
은 1,000000000000000000이며 LongInt
에 적합하지 않습니다. 대신 Int64
또는 QWord
을 사용해보세요.
10^100 000 일 때 해결 방법을 알고 있습니까? 예를 들어 나는 10^100 000과 m보다 낮은 수 n을 가지고 있고, 처음 n mod m일까요? 또한 문자열을 사용하여 시도했지만 너무 복잡하여이 작업의 시간 제한은 0.1 초입니다. 누구든지 학교 나 속임수가 아니라고 말하기 전에 나는 스스로 파스칼을 배우고 있습니다. 학교에서 배울조차하지 않습니다. – Luka
"bigint"단위를 검색하면 몇 가지가 있습니다. 선택 사항은 성능 계산 (이진 선호) 대 디스플레이 (소수 선호) –
최소 longint 값 = -2147483648 최대 longint 값 = 2147483647 – piXelicidio