우리는 1보다 큰 숫자 쌍의 가능한 모든 조합을 씁니다. 합 그 중 100개 미만이 있습니다(2401개의 그러한 쌍이 있습니다).
두 개의 동일한 숫자를 생각할 수 있다면 쌍의 수가 훨씬 더 많아집니다. 우리는 다음을 확인합니다:
//+------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------+int start(){
int SchPar= 0 ;
for ( int i= 100 ;i>= 2 ;i--){
for ( int ii= 100 ;ii>= 2 ;ii--){
if (i+ii< 100 ){
SchPar++;
}
}
}
Alert ( "Общее число пар чисел, сумма которых менее 100 = " ,SchPar);
return ( 0 );
}
//+------------------------------------------------------------------+
이제 이 스크립트를 차트에 던지고 무엇을 볼 수 있습니까? 합이 100보다 작은 쌍의 수 = 4656입니다.
문구 B는 무엇을 의미합니까? 합계를 받은 그는 A가 숫자를 추측하지 않을 것임을 어떻게 미리 알 수 있습니까? 이것은 매우 방대한 답변입니다. 사실 여기에는 숫자에 대한 거의 모든 정보가 포함되어 있습니다!
최초의 현명한 사람이 두 소수의 곱을 들었다면 즉시 답을 찾았을 것입니다.
그것은 분명하다. 가장 중요한 것은 대화의 두 번째 주석을 해독하는 것입니다.
любое разложение суммы, сообщенной Б, на два слагаемых приводит к тому, что хотя бы одно из слагаемых содержит два множителя.
뭔가 바뀔 것 같나요?
과감하게. 바라보다.
우리는 1보다 큰 숫자 쌍의 가능한 모든 조합을 씁니다. 합
그 중 100개 미만이 있습니다(2401개의 그러한 쌍이 있습니다).
두 개의 동일한 숫자를 생각할 수 있다면 쌍의 수가 훨씬 더 많아집니다. 우리는 다음을 확인합니다:
이제 이 스크립트를 차트에 던지고 무엇을 볼 수 있습니까? 합이 100보다 작은 쌍의 수 = 4656입니다.
최초의 현명한 사람이 두 소수의 곱을 들었다면 즉시 답을 찾았을 것입니다.
네, 하지만 그렇게 빨리 자기에게 맞는 것을 찾았다고 해서 잠을 잤던 것은 사실이 아닙니다.
과감하게. 바라보다.
두 개의 동일한 숫자를 생각할 수 있다면 쌍의 수가 훨씬 더 많아집니다. 우리는 다음을 확인합니다:
이제 이 스크립트를 차트에 던지고 무엇을 볼 수 있습니까? 합이 100보다 작은 쌍의 수 = 4656입니다.
for(int ii=100;ii>=2;ii--) - 여기서 틀려야 합니다.
하지만 이렇게
for(int ii=i-1;ii>=2;ii--)
for(int ii=100;ii>=2;ii--) - 여기서 틀려야 합니다.
하지만 이렇게
for(int ii=i-1;ii>=2;ii--)
아니요 - 두 번째는 항상 1이 적기 때문에 두 개의 동일한 숫자의 조합을 정렬하지 않습니다.
우리는 무엇부터 시작합니다.
그리고 한 쌍의 숫자주기에서 중복해서는 안됩니다.
그럼 이것을 시도하십시오.
for(int ii=i;ii>=2;ii--)