Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/12/2010, 12:48
Avatar de venom_mau
venom_mau
 
Fecha de Ingreso: julio-2009
Mensajes: 152
Antigüedad: 15 años, 5 meses
Puntos: 2
accesar a elementos de arreglo de objetos

Buen día.

Recién comienzo con este lenguaje de programación, pero como que no se me da.

Necesito accesar a los elementos de un arreglo de objetos para poder realizar operaciones con ellos.

Tengo un arreglo de objetos llamado grupo el cual contiene tres calificaciones: Matematicas (mat), Español (esp) y Formacion (fce), las cuales obtengo desde teclado.

Primero debo hacer promedio por alumno (eso ya me sale), esto es (mat+esp+fce)/3, epro el problema es cuando tengo que hacer el promedio por materia.

va el código de lo que llevo:

Código:
class grupo{

	//instancias
	int mat;
	int esp;
	int fce;
	double prom;

	//constructor
	public grupo(int m, int e, int f){

		mat=m;
		esp=e;
		fce=f;
	
	}

	public void asignar(int m, int e, int f){

		mat=m;
		esp=e;
		fce=f;
		
	}

	//metodo
	public void mostrar(){

	
		System.out.println(" ");
		System.out.println("Matematicas: "+mat);
		System.out.println("Espa&ol: "+esp);
		System.out.println("Formacion: "+fce);
		System.out.println(" ");
		
		double prom=(mat+esp+fce)/3;
		System.out.println(" ");
		System.out.println("Promedio: "+prom);
		System.out.println(" ");
	


	}

}
Y mi otra clase o subclase:
Código:
class dgrupo{


		public static void main (String args[]){

		grupo x[] = new grupo[3];

		int m;
		int e;
		int f;
		
			
			for(int j=0; j< 3; j++) {
				 x[j]= new grupo(0,0,0);
				System.out.println("Matematicas");
				m=Leer.datoInt();
				System.out.println("Espa&ol");
				e=Leer.datoInt();
				System.out.println("Formacion");
				f=Leer.datoInt();
				 x[j].asignar(m,e,f);
				x[j].mostrar();
				
			}
	

		}	
		
}
Espero me haya explicado en lo que necesito, he tratado de sumar sólo las variables, por ejemplo, obtener solo las calificaciones de matematicas a la hora de capturar pero, sólo obtengo el primer valor que haya ingresado para esta calificacion.

Gracias por su tiempo y respuestas. :)