package com.formula1.garagem;

import com.formula1.corrida.Carro;
import com.formula1.corrida.Piloto;

public class Equipe {
	// Private para proteger e ser acessado somente por esta classe
	private String nome;
	private String dataFundacao;
	private String pais;
	private Piloto listaPiloto	[] = new Piloto[2];
	private Carro  listaCarro 	[] = new Carro[2];
	private int	   carroDoPiloto[] = new int[2];
	
	// Public para ser acessador de qualquer lugar do projeto
	// Cadastra piloto na equipe
	public Piloto cadastraPilotoEquipe(Piloto piloto, int indice){
		return this.listaPiloto[indice] = piloto;
	}
	
	// Cadastra carro na equipe
	public Carro cadastraCarroEquipe(Carro carro, int indice){
		return this.listaCarro[indice] = carro;
	}
	
	// Designa um Carro a um Piloto.
	public void pilotoRecebeCarro(int idPiloto, int idCarro){
		this.carroDoPiloto[idPiloto] = idCarro;
	}
	
	// Troca carros entre os pilotos
	public void trocaCarro(int piloto1, int piloto2){
		int p1 = this.carroDoPiloto[piloto1];
		int p2 = this.carroDoPiloto[piloto2];
		// faz a troca
		int auxiliar = p1;
		p1 = p2;
		p2 = auxiliar;
	}
	
	// Adiciona vitoria ao piloto
	public void adicionaVitoria(int idPiloto){
		int titulos = this.listaPiloto[idPiloto].getNumeroTitulos();
		titulos++;
		this.listaPiloto[idPiloto].setNumeroTitulos(titulos);
	}
	
	// Imprime piloto com mais vitórias e seu carro
	public void imprimeMaisVitorioso(){
		// Podeira ser um Integer.MIN_VALUE, mas optei pela primeira variável
		int maior = listaPiloto[0].getId();
		int idPiloto = 0;
		for(int i=0; i <= listaPiloto[i].getId();){
			if(maior < listaPiloto[i].getId()){
				maior = listaPiloto[i].getId();
				idPiloto = i;
			}
		}
		
		// Exibe Piloto com maior número de vitórias
		System.out.println("O piloto com mais vitórias é: " + idPiloto);
		// Exibe Carro deste piloto
		System.out.println("--- Atributos do carro ---");
		System.out.println("Marca do motor: "		+ listaCarro[idPiloto].getMarcaMotor());
		System.out.println("Chassi: "				+ listaCarro[idPiloto].getChassi());
		System.out.println("Marca do pneu: "		+ listaCarro[idPiloto].getMarcaPneu());
		System.out.println("Marca do combustivel: "	+ listaCarro[idPiloto].getMarcaCombustivel());
	}
	
	/* Get's e Set's */
	
	// Public para ser acessador de qualquer lugar do projeto
	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getDataFundacao() {
		return dataFundacao;
	}

	public void setDataFundacao(String dataFundacao) {
		this.dataFundacao = dataFundacao;
	}

	public String getPais() {
		return pais;
	}

	public void setPais(String pais) {
		this.pais = pais;
	}
 
}

@@ -36,32 +36,40 @@
 rt com.formula1.
+garagem.
 corrida.Carro;%0Ai
@@ -87,16 +87,24 @@
 ormula1.
+garagem.
 corrida.
@@ -475,16 +475,236 @@
 projeto%0A
+%09public Equipe cadastraEquipe(String nome, String dataFundacao, String pais)%7B%0A%09%09Equipe equipe = new Equipe();%0A%09%09equipe.setNome(nome);%0A%09%09equipe.setDataFundacao(dataFundacao);%0A%09%09equipe.setPais(pais);%0A%09%09return equipe;%0A%09%7D%0A%09%0A
 %09// Cada
@@ -1006,17 +1006,16 @@
 m Piloto
-.
 %0A%09public
@@ -1618,20 +1618,19 @@
 %09public 
-void
+int
  imprime
@@ -1746,26 +1746,37 @@
 iloto%5B0%5D.get
-Id
+NumeroTitulos
 ();%0A%09%09int id
@@ -1805,17 +1805,16 @@
 i=0; i %3C
-=
  listaPi
@@ -1817,28 +1817,28 @@
 taPiloto
-%5Bi%5D.getId();
+.length ;i++
 )%7B%0A%09%09%09if
@@ -1842,16 +1842,8 @@
 %09if(
-maior %3C 
 list
@@ -1856,20 +1856,39 @@
 o%5Bi%5D.get
-Id()
+NumeroTitulos() %3E maior
 )%7B%0A%09%09%09%09m
@@ -1916,10 +1916,21 @@
 .get
-Id
+NumeroTitulos
 ();%0A
@@ -2062,24 +2062,114 @@
  %C3%A9: %22 + 
-idPiloto
+listaPiloto%5BidPiloto%5D.getNome() + %22 com %22 + listaPiloto%5BidPiloto%5D.getNumeroTitulos() + %22 vit%C3%B3rias%22
 );%0A%09%09// 
@@ -2572,16 +2572,35 @@
 vel());%0A
+%09%09return idPiloto;%0A
 %09%7D%0A%09%0A%09/*

Update Equipe.java