
12 Mai
2016
12 Mai
'16
13:48
Oi Rodrigo, primeiro obrigada pela resposta. Acho que ainda não deu certo, porque eu tentei gravar os dados e olha como fica: > v<-c(1,2,5,4,8,9,10,4,2,7,6,8,2) > ts<-ts(v) > matrizz<-matrix(NA,13,2) > for(j in 1:10){ + + if(ts[j]>4){ + + vc<-10*ts[j] + matrizz[k,1]<-vc + for(k in (j+1):10){ + + if(ts[k]<4){ + + vc2<-7*ts[k] + matrizz[k,2]<-vc2 + } + } + + } + else print("Não houve abertura de processo") + j=j+k + + } [1] "Não houve abertura de processo" [1] "Não houve abertura de processo" [1] "Não houve abertura de processo" [1] "Não houve abertura de processo" [1] "Não houve abertura de processo" > vc2 [1] 14 > vc [1] 70 > matrizz [,1] [,2] [1,] NA NA [2,] NA NA [3,] NA NA [4,] NA NA [5,] NA NA [6,] NA NA [7,] NA NA [8,] NA NA [9,] NA 14 [10,] 70 NA [11,] NA NA [12,] NA NA [13,] NA NA Em 12 de maio de 2016 10:27, Rodrigo Coster <rcoster@gmail.com> escreveu: > Nos 2 comandos, tenta substituir: > > * for(k in j+1:10){* > > por > > > > *for(k in (j+1):10){* > Acredito que isso seja suficiente para funcionar > > 2016-05-12 10:20 GMT-03:00 Michelle Bau Graczyk <mbgraczyk@gmail.com>: > >> Caros, bom dia, >> >> 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. >> >> Alguém teria alguma idéia sobre o que eu ando pensando errado? >> >> Muito obrigada, >> >> Michelle >> >> Primeira opção: >> >> > v<-c(1,2,5,4,8,9,10,4,2,7,6,8,2) >> > ts<-ts(v) >> > >> > for(j in 1:10){ >> + if(ts[j]>4){ >> + #vende >> + #compra >> + #compra >> + vc<-10*ts[j] >> + while(ts[j+1]>4) j=j+1 >> + for(k in j+1:10){ >> + if(ts[k]<4){ >> + vc2<-7*ts[k] >> + >> + } >> + } >> + } >> + else print("Não houve abertura de processo") >> + j=j+k >> + vc2 >> + vc >> + } >> [1] "Não houve abertura de processo" >> [1] "Não houve abertura de processo" >> [1] "Não houve abertura de processo" >> Error in if (ts[k] < 4) { : valor ausente onde TRUE/FALSE necessário >> > vc2 >> [1] 14 >> > >> > vc >> [1] 80 >> >> Segunda opção: >> >> > v<-c(1,2,5,4,8,9,10,4,2,7,6,8,2) >> > ts<-ts(v) >> > >> > for(j in 1:10){ >> + if(ts[j]>4){ >> + #vende >> + #compra >> + #compra >> + vc<-10*ts[j] >> + for(k in j+1:10){ >> + if(ts[k]<4){ >> + vc2<-7*ts[k] >> + >> + } >> + } >> + } >> + else print("Não houve abertura de processo") >> + j=j+k >> + vc2 >> + vc >> + } >> [1] "Não houve abertura de processo" >> [1] "Não houve abertura de processo" >> [1] "Não houve abertura de processo" >> Error in if (ts[k] < 4) { : valor ausente onde TRUE/FALSE necessário >> > vc2 >> [1] 14 >> > >> > vc >> [1] 80 >> >> _______________________________________________ >> R-br mailing list >> R-br@listas.c3sl.ufpr.br >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >> código mínimo reproduzível. >> > > > _______________________________________________ > R-br mailing list > R-br@listas.c3sl.ufpr.br > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código mínimo reproduzível. >