jorgecunhar
(usa Outra)
Enviado em 21/11/2014 - 21:01h
Como fazer script do C-Scan: já fiz uma parte.Algoritmo C-Scan
#!/bin/bash
trilhaInicial=53
totalTrilha=200
vetorReq=(98 183 37 122 14 124 65 67 190 30 15 68 45 53)
contador=0
tamVetor=${#vetorReq[@]}
for (( i=$tamVetor-1; i >= 1; i-- ))
do
for (( j=0; j < i; j++ ))
do
if [ ${vetorReq[j]} -gt ${vetorReq[j+1]} ]
then
aux=${vetorReq[j+1]}
vetorReq[j+1]=${vetorReq[j]}
vetorReq[j]=$aux
fi
done
done
echo ${vetorReq[@]}
Daqui em diante tive duvidas
Posição da volta=i-1;(volta para a 2ª posição, 37)
PosVolta=Tamanho de vetorReq
...............................................................
(Buscando Informações)
i=0
posIda=0
TemVolta=verdade
enquanto i< tamanho do vetorReq faça
se (vetorReq[i]>=Trilha Inicial) entao
se (i>0) entao
posIda=1
Posição da volta=i-1
break
senao
TemVolta=false
fimse
fimse
fimenquanto
..............................................................
(Começo da Ação - IDA)
contador=0
se (PosVolta!=Tamanho de vetorReq) entao
enquanto PosIda < Tamanho de vetroReq faça
(contador=contador + | vetorReq[PosIda] - Trilha Inicial |
(echo)
Tilha Inicial=vetorReq[osIda]
PosIda=PosIda+1
fimenquanto
fimse
..............................................................
(continuação - volta)
se (TemVolta) entao
enquanto PosVolta >= 0 faça
contador=contador + | vetorReq [PosVolta] - Trilha Inicial |
TrilhaInicial = vetorReq[PosVolta]
PosVolta= PosVolta-1h
fimenquanto
fimse
...............................................................
Algoritmo Scan
Adicionar entre o fimenquanto e o fimse do Começo da Ação = IDA
contador = contador + |199 - trilhaInicial|
trilhaInicial = 199
..............................................................
Algoritmo C-Scan
Adicionar entre o fimenquanto e o fimse do Começo da Ação = IDA
contador = contador + |199 - trilhaInicial|
trilhaInicial = 199
Adicionar entre o fimenquanto e o fimse do Começo da Ação = VOLTA
contador = contador + |0 - trilhaInicial|
trilhaInicial = 0