Blog destinado ao curso Sistemas e Mídias Digitais - SMD

domingo, 10 de setembro de 2017

Atividade 04 - MAMI

A atividade proposta é para basicamente explicar a criação de uma aplicação, que inicialmente armazena, num vetor, as velocidades aleatórias de 20 carros (retângulos coloridos) e, empregando a função MRU, mostra na tela uma corrida disputada entre os mesmos e identifica o carro vencedor.

Primeiro eu criei 3 funções. A primeira foi a do movimento MRU, que foi exatamente igual a apresentada pelo professor na aula, no qual a gente passa os parâmetros de velocidade (v) e tempo (t), e ela retorna a distância (d) que os carros vão percorrer. Em seguida criei uma função chamada car, que cria o carro usando funções rect, e inicia a posição x dos carros com a distância, que é gerada a partir da função MRU. Nessa função também é atribuído o número de cada carro. E por último criei a função speedWay, que cria a pista de corrida e a linha de chagada.

Depois disso, eu criei no setup() um vetor de velocidades, com valores variando de 50 a 100, equivalentes nesse caso às velocidades de 50m/s a 100m/s, pois essa foi a unidade proposta, e usei um laço for para atribuir as 20 velocidades em cada posição do vetor. 

Depois eu criei um if no draw(), para saber se os carros chegaram ou não à linha de chegada. Para isso, foi criado um laço for com a variável endRace que é inicializada com true. Se a distancia dos carros for maior ou igual a distancia da linha de chegada, então ela se torna false, o contador winner recebe a posição do vetor (que nesse caso será o número do carro) referente ao carro que chegou primeiro, e então o laço acaba com um break. Se não, quando a variável endRace for false, é por que o carro já venceu. Então é mostrado um texto na tela com o número do carro vencedor.


Se você quiser ver como foi feito, basta clicar aqui para baixar o código do projeto.
Share:

0 comentários:

Postar um comentário

Trabalho Final MAMI - Pt 2

Nessa segunda e última parte do Trabalho Final da cadeira de MAMI, eu apenas coloquei uma interface gráfica com a ajuda da biblioteca Cont...