1. Empresa VoltDEI faz entregas de produtos.
1.1. Frota variável de veículos.
1.1.1. Formato: V0, V1, ... (sequencial V + numero)
1.2. Todos os veículos tem autonomia de 100km inicial
1.2.1. Quando percorre 100km, realiza o carregamento total da bateria, sendo a carga proporcional à distância percorrida.
1.2.1.1. 1km - 1%
2. kms a percorrer % 100 = qtd recargas
3. Km Iniciais < Km Seguintes
4. Km Iniciais == Km Seguintes
5. O 2º input corresponde ao numero de carros e numero de dias. 3 6 corresponde a 3 carros ao longo de 6 dias. Matriz obrigatória
6. Assumo que o 1 carro é o de prevençao. IDCarro = 0 e KmCarro = valor da matriz
7. Lista de objetivos
7.1. a) construção da matriz: ler as linhas e construção da matriz
7.2. b) array com o total de km a percorrer por cada veículo
7.3. c) matriz com a quantidade de recargas necessárias em cada dia para cada veículo e visualizar essa matriz.
7.3.1. listar tudo numa matriz com dimensões iguais à original
7.3.1.1. copiar a matriz original para uma outra matriz, e alterar os valores em cada entrada
7.4. d) Obter uma matriz com a quantidade o nível de carga da bateria de cada veículo ao final de cada dia e vizualizar a matriz
7.4.1. Percentagem de bateria por dia = 100 + nºrecargas*100 - km a percorrer.
7.4.1.1. Para o dia seguinte:
7.4.1.1.1. Verifico a quantidade do dia anterior. Quantidade que sobra = 100 - dia anterior
7.4.1.1.2. Percentagem de bateria por dia = 100 + nºrecargas *100 - km a percorrer + qtd dia anterior (inicio a qtd ao módulo acima)
7.4.1.1.3. Iterar com a qtd a 0
7.5. e) Obter um array com a média dos kms percorridos pela frota, em cada dia e visualizar essa informaçao
7.5.1. No array inicial, percorro as colunas, somo os valores e divido pelo numero de carros da frota.
7.6. f) Listar todos os veículos que percorrem distancias acima da média.
7.6.1. <n> . n corresponde à quantidade de veículos que estão acima da média,
7.6.2. Listar os veículos.
7.6.3. O output para 2 ou mais veículos será: <2> veículos : [V0] [V2]
7.6.4. Comparar o array das médias com a matriz original (por linha). Se km > media
7.7. g) Veículo com mais dias consecutivos a necessitar de recarga
7.7.1. Na matriz de recargas, verifico a qtd de recargas sucessivas > 0
7.7.2. Tenho que saber a qtd de dias sucessivos
7.7.3. No caso de 2 carros com mesmo numero de dias consecutivos imprimo os 2
7.7.4. EX: <3> dias consecutivos, veículos : [V0] [V1] 3 dias consecutivos V0 e V1
7.8. h) obter e visualizar o dia mais tardio em que todos os veículos necessitarão de recarregar nesse dia ou (-1)
7.8.1. Percorro a matriz das recargas e verifico os dias em que todos os carros realizam 1 recarga ou mais.
7.8.2. No caso de ter mais do que um dia com recargas, imprimo o dia mais tardio
7.8.3. No exemplo temos: dia 2, porque é o unico dia com os 3 carros a realizar um carregamento. Se no dia 5 tivessemos os 3 carros a carregar, o dia mais tardio seria 5
7.9. i) calcular o valor das recargas da frota.
7.10. j) no programa, eu escolho um dia para o qual eu verifico uma serie de condições (esse dia é configurável -> para efeitos de teste fica 4).
7.10.1. Tenho que verificar na matriz dos km o veículo com menor uso no dia dado
7.10.1.1. Matriz com carga das baterias
7.10.1.1.1. Se 2 com mesma carga, seleciono o ID mais baixo
7.10.2. Tiver menos uso nesse dia
7.10.3. Bateria mais carregada nesse dia
7.10.4. o ID mais baixo.
8. Logica j)
8.1. Km Inicial > Km Seguinte
8.1.1. Km inicial = km seguintes ID carro = ID carro seguinte
8.1.1.1. Proxima iteraçao
8.2. Km Inicial < Km seguinte
8.2.1. Km inicial mantem ID carro mantem
8.2.1.1. Proxima iteraçao
8.3. Km Inicial == Km Seguinte
8.3.1. % bateria carro inicial > % bateria carro seguinte
8.3.1.1. km carro mantem ID carro mantem
8.3.1.1.1. Proxima iteraçao
8.3.2. % bateria carro inicial < % bateria carro seguinte
8.3.2.1. km carro inicial = km carro seguinte ID carro = ID carro seguinte
8.3.2.1.1. Proxima iteraçao
8.3.3. % bateria carro inicial == % bateria carro seguinte
8.3.3.1. Km carro inicial mantem ID carro inicial mantem
8.3.3.1.1. Proxima iteraçao