#include <iostream> // cin, cout et cerr.
#include <vector>   // Vecteurs de la STL.
#include <map>      // Tableaux associatifs de la STL.

using namespace std ;

class NombreEtSomme {
	size_t nombre_ ; // Nombre de notes déjà enregistrées.
	double somme_ ;  // Somme des notes déjà enregistrées.
public :
	NombreEtSomme () : nombre_(0), somme_(0) {} // Constructeur par défaut.
	size_t nombre () const { return nombre_ ; } // Méthode qui retourne le nombre de notes.
	double somme () const { return somme_ ; }   // Méthode qui retourne la somme des notes.
	void nouvelle_note (const double & arg) {   // Méthode qui ajoute une nouvelle note.
		++ nombre_ ;
		somme_ += arg ; }
} ;

int
main()
{
	typedef map<string, NombreEtSomme> Dictionnaire ; // Pour simplifier la syntaxe
	Dictionnaire mon_dict ;
	string nom ; double note ;
	while ( cin >> nom >> note ) {
		mon_dict[nom].nouvelle_note(note) ; }
	// Affichage des résultats.
	cout << "Étudiant\tNombre\tSomme\tMoyenne" << endl ;
	for ( Dictionnaire::iterator i = mon_dict.begin() ; i != mon_dict.end() ; ++ i ) {
		cout << i->first << '\t' << i->second.nombre() << '\t' << i->second.somme() <<
			'\t' << i->second.somme()/i->second.nombre() << endl ; }
	return 0 ; // Retour au système d'exploitation avec le code `0'.
}
