Algoritmo estrutura de repetição

7 respostas
D

Eu estou tentando fazer um algoritmo mais estou precisando de ajuda alguém pode me ajudar?ele é assim?

/*1) Em um campeonato de futebol existem x times e cada um possui y jogadores. Faça um programa
que receba: o valor de x e de y, a idade, o peso e a altura de cada um dos jogadores, calcule e
mostre:
- a quantidade de jogadores com idade inferior a 18 anos;
- a média das idades dos jogadores de cada time;
- a média das alturas de todos os jogadores do campeonato;
- a percentagem de jogadores com mais de 80 Kg entre todos os jogadores do campeonato;
- a média de idade dos jogadores com peso acima de 100 Kg. */

import java.util.*;
public class ehj {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
     Scanner dado = new Scanner(System.in);
     int x = 0,y = 0,i,j=0,idade,qtdeidade = 0,qtde = 0;
     double peso,altura,media = 0;
 	 System.out.println("Digite o valor de x ");
     x = dado.nextInt();
     for(i=1;i<=x;i++){ 
    	 System.out.println("Digite o valor de y");
         y = dado.nextInt();
     }
      for(j=1;j<=y;j++){
    	  System.out.println("Digite a idade do jogador "+j);
    	  idade = dado.nextInt();
    	  System.out.println("Digite o peso do jogador ");
    	  peso = dado.nextDouble();
    	  System.out.println("Digite a altura do jogador ");
    	  altura = dado.nextDouble();
    	  media = idade/y;
    	  if(idade < 18){
    		  qtde = qtde +1;
    	  }
    	  
   }
      System.out.println("a quantidade de jogador com idade menor que 18 é "+qtde);
      System.out.println("a média das idades do jogadores de cada time "+media);
     }

	}

7 Respostas

D

mudei o algoritmo

/*1) Em um campeonato de futebol existem x times e cada um possui y jogadores. Faça um programa
que receba: o valor de x e de y, a idade, o peso e a altura de cada um dos jogadores, calcule e
mostre:
- a quantidade de jogadores com idade inferior a 18 anos;
- a média das idades dos jogadores de cada time;
- a média das alturas de todos os jogadores do campeonato;
- a percentagem de jogadores com mais de 80 Kg entre todos os jogadores do campeonato;
- a média de idade dos jogadores com peso acima de 100 Kg. */


import java.util.*;
public class ehj {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
     Scanner dado = new Scanner(System.in);
     int x = 0,y = 0,i,j=0,idade,qtdeidade = 0,qtde = 0;
     double peso,altura,media = 0;
 	 System.out.println("Digite o valor de x ");
     x = dado.nextInt();
     for(i=1;i<=x;i++){ 
     System.out.println("Digite o valor de y");
     y = dado.nextInt();
      for(j=1;j<=y;j++){
    	  System.out.println("Digite a idade do jogador "+j);
    	  idade = dado.nextInt();
    	  System.out.println("Digite o peso do jogador ");
    	  peso = dado.nextDouble();
    	  System.out.println("Digite a altura do jogador ");
    	  altura = dado.nextDouble();
    	  qtdeidade += idade;
    	  media = qtdeidade/y;
    	  if(idade < 18){
    		  qtde = qtde +1;
    	  }
    	  
   }
     }
      System.out.println("a quantidade de jogador com idade menor que 18 é "+qtde);
      System.out.println("a média das idades do jogadores de cada time "+media);
     }

	}
xandevieira

O ideal seria vc criar uma classe Jogador com os atributos idade, peso e altura;
Depois nessa classe "ehj" criar um array e iniciar ele com o valor que vc pegar no

Jogador[] jogadores;

System.out.println("Digite o valor de x ");
x = dado.nextInt();
jogadores = new jogadores[x];

no

for(i=1;i&lt;=x;i++){ 
}

vc cria cada jogador

for(i=1;i&lt;=x;i++){ 
Jogador j = new Jogador();
System.out.println("Digite a idade do jogador "+j);
idade = dado.nextInt(); 
System.out.println("Digite o peso do jogador ");  
peso = dado.nextDouble(); 
System.out.println("Digite a altura do jogador ");
altura = dado.nextDouble();  

 j.setIdade(idade );
j.setPeso(peso);
j.setAltura(altura );
 jogadores[1]= j;
}

depois disso vc itera esse array

for(i=1;i&lt;= jogadores.lengt;i++){ 
Jogador j = jogadores[i];

e faz os calculos

D

nao precisa complica rsrs

eu to usando for mais por enquanto nao chegou no array

se tiver um jeito mais simples agradeço e se tiver certo tbm
o meu

ja ajudaa brigadaooo mesmo!!

tguerra

Oi, daniferreira.

Para que eu me organizasse melhor, criei variáveis para tudo, porém, creio que dê para dar uma limpada depois. Espero que ajude. Observação: fiquei com preguiça de fazer a %.
import java.util.*;
public class estrutura{

	public static void main(String[] args){
		Scanner in = new Scanner(System.in);
		
		double altura = 0, peso = 0, mediaAltura = 0, mediaIdade = 0, mediaIdadePeso = 0;
		double quantPeso = 0, somaPeso = 0, quantAltura = 0;
		int x = 0, y = 0, quantIdadeInferior = 0, quantIdade = 0, idade;
		
		
		System.out.println("1) Digite o valor para x times: ");
		x = in.nextInt();		
		System.out.println("2) Digite o valor para y jogadores: ");
		y = in.nextInt();
			
			for(int i=1; i<=x; i++){	//laço de times
			for (int j = 1; j<=y; j++){ //laço de jogadores
				System.out.println("3) Digite a idade do jogador " + "["+ j + "] do time " + "["+ i + "]");
				idade = in.nextInt();
				System.out.println("4) Digite o peso do jogador " + "["+ j + "] do time " + "["+ i + "]");
				peso = in.nextDouble();
				System.out.println("5) Digite a altura do jogador " + "["+ j + "] do time " + "["+ i + "]");
				altura = in.nextDouble();
					
		//verifica se a idade é inferior ou igual a 18 anos e acumula no contador
		if(idade <=18 ){
			quantIdadeInferior++;
		}
		
		//média das idades
		quantIdade = quantIdade + idade;
		mediaIdade = quantIdade/y;
		
		//média de alturas
		quantAltura = quantAltura + altura;
		mediaAltura = quantAltura/y;
		
		//verifica a média de idade de jogadores com peso > 100
		if(peso >= 100){
			quantPeso++; //numero de jogadores com peso maior que 100
			somaPeso = somaPeso + peso; //somatório dos jogadores de peso maior que 100
			mediaIdadePeso = somaPeso/quantPeso;
		}
		}
			System.out.println("\n>>> A média de jogadores com peso acima de 100: "+ mediaIdadePeso);		
			System.out.println("\n>>> A média de idades dos jogadores: "+ mediaIdade);
			System.out.println("\n>>> A média de alturas dos jogadores: "+ mediaAltura);		
			System.out.println("\n>>> A quantidade de jogadores de todos os times com idade inferior a 18 anos é: "+ quantIdadeInferior);
		}
	}
}
D

valeu ajudou mto vou fazer aqui brigadaooooo!!!

R

erro

D

?

Criado 1 de novembro de 2011
Ultima resposta 3 de nov. de 2011
Respostas 7
Participantes 4