<div dir="ltr">Caros, bom dia,<div><br></div><div>Estou com um problema de lógica de programação. O que eu esperava era o seguinte: se ts[j]>4, eu abro uma operação e ela só para quando ts[j]<4. Enquanto uma operação está aberta, não se pode abrir mais nenhuma. Para isso eu tentei fazer de duas formas, usando e não usando o while, mas eu não consegui.</div><div><br></div><div>Alguém teria alguma idéia sobre o que eu ando pensando errado?</div><div><br></div><div>Muito obrigada,</div><div><br></div><div>Michelle</div><div><br></div><div>Primeira opção:</div><div><br></div><div><div>> v<-c(1,2,5,4,8,9,10,4,2,7,6,8,2)</div><div>> ts<-ts(v)</div><div>> </div><div>> for(j in 1:10){</div><div>+   if(ts[j]>4){</div><div>+     #vende</div><div>+     #compra</div><div>+     #compra</div><div>+     vc<-10*ts[j]  </div><div>+     while(ts[j+1]>4) j=j+1</div><div>+     for(k in j+1:10){</div><div>+       if(ts[k]<4){</div><div>+        vc2<-7*ts[k]</div><div>+      </div><div>+       }</div><div>+     }</div><div>+   }  </div><div>+   else print("Não houve abertura de processo")</div><div>+   j=j+k</div><div>+   vc2</div><div>+   vc</div><div>+ }</div><div>[1] "Não houve abertura de processo"</div><div>[1] "Não houve abertura de processo"</div><div>[1] "Não houve abertura de processo"</div><div>Error in if (ts[k] < 4) { : valor ausente onde TRUE/FALSE necessário</div><div>> vc2 </div><div>[1] 14</div><div>> </div><div>> vc</div><div>[1] 80</div></div><div><br></div><div>Segunda opção:</div><div><br></div><div><div>> v<-c(1,2,5,4,8,9,10,4,2,7,6,8,2)</div><div>> ts<-ts(v)</div><div>> </div><div>> for(j in 1:10){</div><div>+   if(ts[j]>4){</div><div>+     #vende</div><div>+     #compra</div><div>+     #compra</div><div>+     vc<-10*ts[j]  </div><div>+     for(k in j+1:10){</div><div>+       if(ts[k]<4){</div><div>+        vc2<-7*ts[k]</div><div>+      </div><div>+       }</div><div>+     }</div><div>+   }  </div><div>+   else print("Não houve abertura de processo")</div><div>+   j=j+k</div><div>+   vc2</div><div>+   vc</div><div>+ }</div><div>[1] "Não houve abertura de processo"</div><div>[1] "Não houve abertura de processo"</div><div>[1] "Não houve abertura de processo"</div><div>Error in if (ts[k] < 4) { : valor ausente onde TRUE/FALSE necessário</div><div>> vc2 </div><div>[1] 14</div><div>> </div><div>> vc</div><div>[1] 80</div></div></div>