Esta tarefa é uma variação da Tarefa de Laboratório 02, em que trabalharemos com os tipos
float e bool. Duas estações de trem A e B estão separadas por um
distância distAB medida ao longo da trajetória. Pela estação A passa um trem TremA
no sentido de A para B e simultaneamente passa por B um trem TremB no sentido de B para A. Os
trens TremA e TremB têm movimentos uniformes com velocidades vA e vB, medidas em km/h e com valores absolutos maiores do que zero. Para evitar o triste fim da tarefa anterior, o TremB tentará pegar um desvio posicionado no ponto D. Considerando que o comprimento do TremB é compB, você deverá determinar:
TremA chega em D, medido em minutos e
considerando como origem dos tempos o instante em que,
simultaneamente, TremA passa pela
estação A e TremB passa pela
estação B.
o desfecho do cenário em que o valor True indica que houve colisão e False indica que os trens ficaram intactos.
_-====-__-======-__-========-__
_( )_
OO( Este desvio é a nossa )
0 (_ única esperança!!! _)
o0 (_ )
o '=-___-===-___-========-__-=='
.o
______ . . ______ ______________
_________ ||__||_()_ _()_||__|| ________ | |
| | | ) ( | | | | |
"OO--OO"=""OO----OO-\ /-OO----OO""="OO--OO"="OO--------OO"
#######################################**#################################################
A // D B
//
//
####################################**
boolOperações básicas Antes de escrever seu
programa, vamos fazer alguns testes com Python shell. Abra um terminal
e o programa python3:
$ python3
Python 3.7.3
Type "help", "copyright", "credits" or "license" for more information.
>>>
Escreva expressões relacionais e lógicas e verifique os resultados. Veja os exemplos:
>>> print(37.45 < 10.00)
False
>>>> var_bool = True or False
>>>> print(var_bool)
True
A entrada do seu programa será composta por cinco linhas, cada uma contendo um float. As três primeiras serão iguais às
da tarefa anterior e as duas últimas são os dados extras necessários para a solução do problema proposto nesta tarefa.
distAB em quilômetros
vA: valor absoluto da velocidade do TremA em km/h
vB: valor absoluto da velocidade do TremB em km/h
D, em quilômetros, medido considerando o ponto A como a origem dos espaços
compB em metros
Veja um exemplo:
75.00
50.00
25.00
30.00
20.00
A saída deverá apresentar na sequência os seguintes valores em reais:
TremA atinge o ponto D em
minutos, escrito com duas casa decimais.
True em caso de colisão e False em caso contrário.
Para o exemplo acima, a saída será:
No SuSy, para cada tarefa, criamos um conjunto de testes com arquivos de entrada arq<i>.in e para cada um deles
temos uma saída esperada arq<i>.res. Para esta tarefa, os testes abertos serão os listados na tabela
abaixo. Haverá também um teste fechado.
| Entrada | Saída | ||
|---|---|---|---|
| arq1.in | 30.00 |
15.00 min |
arq1.res |
| arq2.in | 100.00 |
60.00 min |
arq2.res |
| arq3.in | 90.00 |
26.67 min |
arq3.res |
| arq4.in | 37.50 |
26.19 min |
arq4.res |
Leia instruções para fazer os testes em Testes com o SuSy.
Veja aqui a página de submissão da tarefa. O arquivo a ser
submetido deve se chamar lab03.py. No link Arquivos
auxiliares há um arquivo aux03.zip que contém todos os arquivos de testes abertos e seus respectivos resultados compactados.
Utilize o sistema SuSy com o mesmo login e senha que você utiliza para fazer acesso ao sistema da DAC. Se você não estiver inscrito corretamente, envie email para
.
O limite máximo será de 15 submissões. Serão considerados os resultados da última submissão.
O peso desta tarefa é 1.
O prazo final para submissão é 01/09/2019.