Newsgroup: it.comp.java
Titolo: Principiante. Esercizio...

ciao a tutti, sto iniziando a programmare in JAVA...sto trovando
qualche difficoltà in qualche esercizio e non sapendo a chi chiedere
aiuto ho pensato di postare qua uno degli esercizi...se riuscite a
darmi una mano grazie mille!
il testo è questo:
Implementare una classe Student. Ai fini di questo esercizio, ciascuno
sudente ha un nome e un punteggio totale delle risposte. Fornite un
costruttore appropriato e i metodi seguenti: getName(), per reperire il
nome; addQuiz(int score), per sommare il punteggio di ciascuna
risposta; getTotalScore(), per reperire il punteggio totale;
getAverageScore(), per ottenere la media dei punteggi. Per calcolare la
media, dovete registrare anche il numero delle domande ricevute dallo
studente.
ciò che ho fatto è il seguente, però la media mi viene zero e non
riesco a risolvere il problema:
Student.java
/**
	Ciascuno studente ha un nome e un punteggio totale delle risposte
oltre al punteggio per ogni risposta e alla media dei punteggi
*/
public class Student
{
	/**
		Crea uno studente con un nome, un punteggio iniziale pari a zero e il
numero di domande
		@param aName il nome dello studente
		@param numQuest il numero delle domande ricevute dallo studente
	*/
	public Student(String aName, double numQuest)
	{
		name = aName;
		totalScore = 0;
		averageScore = totalScore / numQuest;
	}
	/**
		Reperire il nome dello studente
		@return il nome dello studente
	*/
	public String getName()
	{
		String message = "Name = " + name;
		return message;
	}
	/**
		Somma il punteggio di ogni risposta
		@param score il punteggio di ogni risposta
	*/
	public void addQuiz(int score)
	{
		int newScore = totalScore + score;
		totalScore = newScore;
	}
	/**
		Reperire il punteggio totale
		@return il punteggio totale
	*/
	public int getTotalScore()
	{
		return totalScore;
	}
	/**
		Ottenere la media dei punteggi
		@return media dei punteggi
	*/
	public double getAverageScore()
	{
		return averageScore;
	}
	private String name;
	private int totalScore;
	private double averageScore;
}
-----------------------------------------------------------------------------------------------------
Student Test.java
/**
	Una classe per collaudare la classe Student
*/
public class StudentTest
{
	/**
		Crea un nuovo studente e collauda i metodi
		@param args non utilizzato
	*/
	public static void main(String[] args)
	{
		Student john = new Student("John Smith", 5);
		System.out.println(john.getName());
		john.addQuiz(6);
		john.addQuiz(8);
		john.addQuiz(4);
		john.addQuiz(6);
		john.addQuiz(10);
		System.out.println(john.getTotalScore());
		System.out.println(john.getAverageScore());
	}
}

Lasciamo stare che non hai pubblicato anche gli attributi.
Ad ogni modo, il costruttore serve a "costruire" l'oggetto, non le
operazioni matematiche che con tali oggetti potresti eseguire. E' il
metodo che deve restituire la media che deve "fare" la media.

pio...@inwind.it
 ha scritto:

grazie! finalmente adesso funziona solo che ho dovuto aggiungere un
metodo: uno per fare la media e l'altro per stamparla.
forse mi sto un pò confondendo perchè mi è capitato qualche
esercizio che mi chiedeva tipo di impostare il tasso di interesse di un
conto bancario già nel costruttore e allora ho pensato che fosse la
stessa cosa però mi sbagliavo.
grazie per la chiarezza
ciao