나눗셈의 나머지를 계산하는 작업을 적용해야 하는 필요성은 숫자의 자릿수로 작업할 때 볼 수 있습니다.
다음 작업을 분석해 보겠습니다.
세 자리 숫자가 주어집니다. 이 숫자의 모든 자릿수를 표시하고 단위와 백을 치환하여 형성된 새 숫자를 얻습니다.
초보자에게 발생하는 가장 어려운 질문은 숫자에서 숫자를 가져오는 방법입니다.
사실, 수학을 기억한다면 모든 것이 아주 간단하게 해결됩니다. 그리고 수학은 모든 숫자가 숫자 항의 합으로 분해될 수 있음을 알려줍니다.
예: 365=3*100+6*10+5*1
. 우리는 각 숫자가 해당 숫자의 배수임을 알 수 있습니다.
열을 숫자 10으로 나누는 예를 사용하여 숫자의 각 자릿수를 별도의 변수로 가져오는 방법을 보여줍니다. 1, 10, 100 등)
수치를 분석해보면
<예비>
<코드>e := n 모드 10; // 연산 n mod 10 - 숫자 n의 마지막 자릿수(즉, 숫자 단위)를 계산합니다.
365 mod 10 = 5
d := n div 10 모드 10; // 연산 n div 10 - 숫자를 10배로 줄입니다. serif" >),
// 이제 익숙한 연산을 결과에 적용하여 십의 수를 계산할 수 있습니다. 숫자 10으로 나눈 나머지를 계산합니다.
36 mod 10 = 6
s := n div 100; // 백을 얻으려면 숫자 오른쪽에서 두 자리를 버리면 충분합니다. 즉, 10으로 두 번 나누면 됩니다(
n div 10 div10 또는
n div 100< /strong>) 365 div 100 = 3
코드>예>
저장된 숫자가 있으면 원하는 숫자에 해당 숫자를 곱하여 숫자를 만들 수 있습니다.
예를 들어, 아래 줄은 원래 숫자 n에서 백과 일이 재정렬된 새 숫자를 가져옵니다.
1) 이전 값(변수에 저장됨 e) 곱하기 100
2) 10의 이전 수(변수 d에 저장됨) 10
3) 우리는 단순히 이전의 백 수에 1을 곱하거나 단순히 변수 s
에 저장된 값을 취할 수 있습니다.
그런 다음 포인트 1, 2 및 3의 값을 추가하고 새 숫자를 얻으십시오.
n1 := e * 100 + d * 10 + s;
전체 프로그램은 다음과 같습니다.
<예비>
var n, e, d, s: 정수;
시작하다
읽기(엔);
e := n 모드 10;
d := n div 10 모드 10;
s := n div 100;
writeln(e, ' ', d, ' ', s, ' ', e * 100 + d * 10 + s);
끝.
코드>예>