Problema com exercicio

9 respostas
T

Bem minha duvida e sobre o seguinte Exercicio:

1)Crie uma classe Atleta, que possui um nome e uma altura. Receba os parâmetros pelo construtor e crie os métodos get e set.

2)Em uma classe com o método main, crie 5 atletas, com nomes e alturas diferentes. Ao final, diga:
O nome do atleta mais alto. O nome do atleta mais baixo
A média de altura dos atletas
Quantos deles têm menos de 1,75m de altura

meu problema e quando começo meu if e meu while, no exercicio 2 se alguem puder ajudar eu ficaria muito grato, sei que ninguem gosta de ficar respondendo duvida de noob, e me perdoe pela minha duvida tosca :frowning:

Até if eu estou bem, mas continuo com dificuldades no while Obrigado pela ajuda!

public class Atleta{

private String nome;

private double altura;
public Atleta(String nome, double altura){
  this.nome = nome;
  this.altura = altura;
}

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

public String getNome(){
  return nome;
}

public void setAltura(double altura){
  this.altura = altura;
}

public double getAltura(){
  return altura;
}

}
Espero que minha pergunta esteja compreensivel

9 Respostas

D

o código que você precisa fazer com o while é este:

int numeroAtletas = 0;
		while (numeroAtletas < 5) {
			//aqui o código para 
                        numeroAtletas++;
		}

seria isso?

drsmachado

Ninguém perde tempo lendo tópicos com códigos sem formatação.
Quer ajuda, coloque um título adequado e, por favor, siga estas instruções http://guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

Não custa ler as regras do fórum

E

Antes de mais nada, escreva o pseudo-código ou o português estruturado. Mesmo depois de 30 e poucos anos mexendo com computadores ainda acho que não consigo sair escrevendo um programa sem fazer um esboço antes - quanto mais você que está começando. Depois de escrever o pseudo-código ou o português estruturado é que você deve tentar escrever seu programa Java.
Você pelo menos consegue fazer um “teste de mesa”?
Faça o teste com os seguintes dados, e diga como é que você conseguiu resolver “no braço”.

Joao 1.75
Maria 1.80
Pedro 1.90
Andrea 2.00
Julia 1.60

A resposta esperada você até sabe. Mas você precisa fazer um teste de mesa.

T

drsmachado:
Ninguém perde tempo lendo tópicos com códigos sem formatação.
Quer ajuda, coloque um título adequado e, por favor, siga estas instruções http://guj.com.br/java/50115-voce-e-novo-no-guj-vai-criar-um-topico-e-colar-seu-codigo-fonte-leia-aqui-antes-por-favor

Não custa ler as regras do fórum


obrigado vou arrumar o código, realmente não li as regras foi meio que na corrida, e que eu to no trampo coisa ta tensa mas vo ler sim vlws por lembra, tinha até esquecido

duducordeiro_:
o código que você precisa fazer com o while é este:

int numeroAtletas = 0;
		while (numeroAtletas < 5) {
			//aqui o código para 
                        numeroAtletas++;
		}

seria isso?

arrumando aqui agora vlw msm ae cara poxa , complicado e que meu professor ta sempre com caixa de e - mail lotada e não responde qualquer duvida

Guike

ao tentar resolver esse exercicio fiquei com uma dúvida também, tipo, deve se construir um array de 5 posições, porque se não, não consigo fazer as comparações não?? então como eu faria isso passando os argumentos do construtor da classe "Atleta"?? minha classe ficou igual ao do amigo ai em cima

public class Atleta{

	private String nome;
	private double altura;

	public Atleta(String nome, double altura){
		this.nome= nome;
		this.altura = altura;
		
		}

	public String getNome(){
		return this.nome;
		}

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

	public double getAltura(){
		return this.altura;
	}
	
	public void setAltura(double altura){
		this.altura = altura;
	}

	
}

no segundo eu até criei a outra classe com 5 atletas com nomes e alturas mas surgiu uma duvida, no construor Atletas não teria como ao invés de usar this.nome = nome, usar um metodo setNome a hora q eu tiver construindo a classe??? porque esses set estão atoa ai ao meu ver

Eu pensei em iniciar da seguinte maneira

public class TestaAtleta{
	public static void main(String[] args){
	
	Atleta atletas = new Atleta[4];
		
	}
}

porém não sei passar os argumentos nome e alturas, porque ai ficaria muito mais facil faria um while e na maior altura mostraria o nome

igor_ks

Guike, para vc criar os atletas vc terá que instanciar primeiro e setar os valores, acredito que isso o tojimba tenha conseguido fazer

Atleta a1 = new Atleta();
a1.setNome("Jose");
a1.setAltura(1.85);

Atleta a2 = new Atleta();
a1.setNome("Maria");
a1.setAltura(1.65);

para pegar o maior, usa um bubblesort, dentro de um laco, comparando, se for maior, guardar na variavel

Guike

igor_ks:
Guike, para vc criar os atletas vc terá que instanciar primeiro e setar os valores, acredito que isso o tojimba tenha conseguido fazer

Atleta a1 = new Atleta();
a1.setNome("Jose");
a1.setAltura(1.85);

Atleta a2 = new Atleta();
a1.setNome("Maria");
a1.setAltura(1.65);

para pegar o maior, usa um bubblesort, dentro de um laco, comparando, se for maior, guardar na variavel

então isso eu até fiz viw setar os valores, porém não tem jeito de resolver isso com array?

gustavo_mb

Guike:
igor_ks:
Guike, para vc criar os atletas vc terá que instanciar primeiro e setar os valores, acredito que isso o tojimba tenha conseguido fazer

Atleta a1 = new Atleta();
a1.setNome("Jose");
a1.setAltura(1.85);

Atleta a2 = new Atleta();
a1.setNome("Maria");
a1.setAltura(1.65);

para pegar o maior, usa um bubblesort, dentro de um laco, comparando, se for maior, guardar na variavel

então isso eu até fiz viw setar os valores, porém não tem jeito de resolver isso com array?

Tem sim. Primeiro pense na lógica… como você irá comparar as alturas? Depois escreve o código tentando implementar o que você fez no papel.

Guike

É que assim, me corrigem se eu estiver errado

tojimba:
1)Crie uma classe Atleta, que possui um nome e uma altura. Receba os parâmetros pelo construtor e crie os métodos get e set.
public class Atleta{

	private String nome;
	private double altura;

	public Atleta(String nome, double altura){
		this.nome= nome;
		this.altura = altura;
		
		}

	public String getNome(){
		return this.nome;
		}

	
	public double getAltura(){
		return this.altura;
	}
	
	
	
}

1º Pediu para passar meus argumentos por construtores

//construtor
public Atleta(String nome, double altura){
		this.nome= nome;
		this.altura = altura;
		
		}

2º Se estou populando por construtore então não preciso de um método set, apenas get para pegar os valores, correto?

tojimba:
2)Em uma classe com o método main, crie 5 atletas, com nomes e alturas diferentes. Ao final, diga: O nome do atleta mais alto. O nome do atleta mais baixo A média de altura dos atletas Quantos deles têm menos de 1,75m de altura

3º Minha classe que testa a classe Atleta

public class TestaAtleta{
	public static void main(String[] args){
	
        //populando os objetos por construtores conforme enunciado

	Atleta a1 = new Atleta("Pedro",1.20);
	Atleta a2 = new Atleta("Joao",1.70);
	Atleta a3 = new Atleta("Isaias",1.75);
	Atleta a4 = new Atleta("Silvio",1.80);
	Atleta a5 = new Atleta("Manoel",1.930);
	}
		
}

5º Duvida, como fazer agora uma comparação disso?? Tem que comparar um a um???

Criado 6 de outubro de 2011
Ultima resposta 6 de out. de 2011
Respostas 9
Participantes 7