Ir para conteúdo
Fórum Script Brasil
  • 0

PASSAR DE C++ PARA JAVA


LEANDROVEIGA31

Pergunta

#include <iostream> 
#include <math.h> 
#include <vector>  
#include <string>

using namespace std;  

class Coordenada{     
	int x_, y_; 
	 
	public:     
		Coordenada(){}     
		Coordenada(int x, int y)
		{         
			x_ = x;         
			y_ = y;     
		}     
		int getX()
		{ 
			return x_; 
		}     
		int getY()
		{ 
			return y_; 
		}     
		float distancia(Coordenada b)
		{         
			return sqrt(pow(getX() - b.getX(),2) + pow(getY() - b.getY(),2));     
		}
 }; 
 
  
class Municipio{     
	int id, populacao;     
	string nome;     
	Coordenada local;  
	
	public:     
		Municipio(int i, string n, int pop, Coordenada c)
		{         
			id = i; nome = n; populacao = pop; local = c;     
		} 
		    
		int getPopulacao()
		{ 
			return populacao; 
		}     
		
		string getNome()
		{ 
			return nome; 
		}     
		
		Coordenada getCoordenada()
		{ 
			return local; 
		}     
		
		int getId()
		{ 
			return id; 
		} 
};  

class Mapa{  
	vector<Municipio> municipios;  
	
public:     
	void addMunicipio(Municipio m)
	{ 
		municipios.push_back(m); 
	}
	Municipio getMunicipio(int id){
		for(int d=0 ; d<municipios.size();d++){
			if(municipios[d].getId()==id){
				return municipios[d];
			}
		}	
	}
    Municipio getMaior()
    {         
		int maiorPopulacao = 0;         
		int maior;         
		for(int i = 0; i < municipios.size(); i++)
		{             
		 	if(municipios[i].getPopulacao() > maiorPopulacao)
		 	{                
				maior = i;                 
				maiorPopulacao = municipios[i].getPopulacao();             
			}         
		}   	      
		return municipios[maior];     
	} 
	
	void drawMapa()
	{
		cout<<endl;
		for(int i = 1; i<=5 ; i++)
		{
			for(int j = 1; j<=10; j++)
			{
				
				int num = 0;
				for(int s = 0; s<municipios.size();s++)
				{
					if(municipios[s].getCoordenada().getX()==i && municipios[s].getCoordenada().getY()==j)
					{
						cout<<municipios[s].getId();
						num=1;
					}
				}
				if(num==0){
					cout<<"0";
				}
					
			}
			cout<<endl;
		}
	}
}; 


int main() 
{
     Coordenada c1(2,3);
     Coordenada c2(4,4);     
	 Coordenada c3(3,4); 
	 
    Municipio lavras(1, "Lavras", 100000, c1);     
	Municipio nepomuceno(2, "Nepomuceno", 30000, c2);     
	Municipio bh(3, "BH", 1000000, c3);
	  
    Mapa minas;     
	minas.addMunicipio(lavras);     
	minas.addMunicipio(nepomuceno);     
	minas.addMunicipio(bh);  
	
    cout<<"Maior populacao: "<<minas.getMaior().getPopulacao()<<endl;     
	cout<<"Municipio: "<<minas.getMaior().getNome()<<endl;     
	cout<<"Distancia: "<<lavras.getCoordenada().distancia(nepomuceno.getCoordenada());  
	
    minas.drawMapa();  
    
	int id;     
	cout<<"Pesquise um municipio pelo id: "<<endl;     
	cin>>id; 
	 
    cout<<"Municipio: "<<minas.getMunicipio(id).getNome()<<endl;   
    
    return 0; 
	
	}

569506006_PASSARDECPARAJAVA.png.9f044f4fa2b9692d2014f2f60a9cdf15.png

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...