포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 724

 
borilunad :
문제를 올바르게 이해했다면.
 int n,Nn;
switch (n)
  { case 1 :Nn= 1 ; break ; case 2 :Nn= 3 ; break ; case 3 :Nn= 6 ; break ; case 4 :Nn= 10 ; break ; case 5 :Nn= 15 ; break ; default :Nn= 0 ;}
n을 어디에서 가져와야 하는지 명확하지 않습니다...
 
valeryk :
내가 작업을 올바르게 이해했다면 n을 어디에서 가져와야하는지 명확하지 않습니다 ...
당신의 응답을 주셔서 감사합니다! 미결 주문의 수는 n 입니다. 개시 신호가 반복되면 이미 열려 있는 포지션 에서 이익에 대한 요구 사항이 높아집니다. 따라서 나는 부당한 손실을 피합니다. 싸이클에서는 간단하게 해결되지만, 개폐조건 뿐만 아니라 개폐 조건에 삽입하는 것도 불편하다 . 말하자면 "팩토리얼"이 필요하지만 곱하기가 아니라 합산이 필요합니다! 공식! MathMax'om과 함께 위의 공식을 사용하는 동안.
 
borilunad :
당신의 응답을 주셔서 감사합니다! 미결 주문의 수는 n 입니다. 오픈 신호가 반복되면 이미 오픈된 포지션에 대한 수익 요구가 높아집니다. 따라서 나는 부당한 손실을 피합니다. 솔루션은 루프에서 간단하지만 개방 조건에 삽입하는 것이 불편합니다. 말하자면 "팩토리얼"이 필요하지만 곱하기가 아니라 합산이 필요합니다!
알았습니다. 글쎄, 나는 주문 수가 5개로 제한된다면 이 방법으로 결정할 것이다. 이 경우 스위치가 가장 빠른 방법이다.
 
valeryk :
알았습니다. 글쎄, 나는 주문 수가 5개로 제한된다면 이 방법으로 결정할 것이다. 이 경우 스위치가 가장 빠른 방법이다.

아 맞다 ;) ?

 const int iN[] = { 1 , 3 , 6 , 10 , 15 };

Nn = iN[n];
 
valeryk :
알았습니다. 글쎄, 나는 주문 수가 5개로 제한된다면 이 방법으로 결정할 것이다. 이 경우 스위치가 가장 빠른 방법이다.
제한하고 싶지 않아 일종의 공식을 찾고 있습니다. 시간이 지나면 동이 트겠지만 스위치와 사이클이 없을 수도 있습니다!
 
VladislavVG :

아 맞다 ;) ?

동의한다. 그러나 예를 들어 7 인덱스 값이 필요한 경우? 확인을 하셔야 합니다. 그리고 어떤 경우에도 오류가 없습니다.
 
borilunad :
제한하고 싶지 않아 일종의 공식을 찾고 있습니다. 시간이 지나면 동이 트겠지만 스위치와 사이클이 없을 수도 있습니다!
그런 다음 위의 예에서 init의 루프에서 배열을 채웁니다 . 그리고 최대 크기에서 크기를 조정합니다. 명령.
 
VladislavVG :

아 맞다 ;) ?

영형! 매우 감사합니다! 더 가깝고 쉽게! 내가 이해하는 한 배열로 실험해 보겠습니다. 그러나 수량으로 무한정 할 수는 없습니다. 또는 n== 2이면 두 번째 구성원이 선택되고 n==6 이상이면 배열에 더 많은 구성원을 넣을 수 있습니다. 내가 올바르게 이해했기를 바랍니다!

 
borilunad :

예, 배열은 예를 들어 차원이 100 이상인 경우 분명히 더 크게 만들 수 있습니다. 이러한 주문의 수 는 수신 가능성이 거의 없지만 여전히 제한적입니다.

제한 없이 필요한 경우 주기만 가능합니다. 별도의 함수로 만들면 일반적으로 어디에서나 호출됩니다. 속도가 저하됩니다. 불행히도 MCL에는 인라인 함수가 없습니다.

 
borilunad :
훅에))
 input int MaxOrders = 5 ;   // внешняя

int Nn[];   // глобальная

int OnInit ()
  {
   string txt= "" ;
   int i= 0 ,temp= 0 ;
   ArrayResize (Nn,MaxOrders+ 1 );
   for (i= 1 ;i<=MaxOrders;i++) 
     {
      temp+= int ( MathMax (i- 1 , 0 ));
      Nn[i]=temp;
      txt= StringConcatenate (txt, "\n" ,temp);
     }
   Comment (txt);
   return ( INIT_SUCCEEDED );
  }