This is a simple programming-contest sort of exercise.
You "need" only two classes.
+ a Team
  - knows its name (a String of at most 30 characters)
    * This should be passed when the Team is created;
      the rest of the program should NOT call (Team new)
      and should NEVER see an un#initialize-d Team instance.
  - knows the number of matches it has won, drawn, and lost
    (non-negative Integers, initially zero).
  - can report what it knows
  - can report the total match count and point score
  - can be told that it has won, drawn, or lost another match.

+ a Tournament
  - has a collection of Teams that it knows by name
    (a Dictionary)
  - and an sequence, initially undefined.
  - can read a set of match triples from a stream,
    forwarding the information about wins, draws, and losses
    to Team instances, which are created when a new name is found,
  - can convert the values of the teams collection to a
    sorted collection that is sorted by a somewhat vague order,
    I chose
      - descending on point score, then
      - descending on wins, then
      - ascending  on losses, then
      - ascending  on name.
  - can write the sorted teams to a stream in tabular form.
  ! Has a class method that does
    (self new) read: <<source>>; sort; write: <<destination>>

Frankly, formatting the output was the hardest part.

On Mon, 25 Mar 2019 at 10:00, Roelof Wobben <r.wob...@home.nl> wrote:

> hello,
>
> I think I have to reconsider my classes and reponsibilities
>
> Right now Im thinking of this
>
> Team :  responsinble for team properties
> Ranking : reponsibilities  for checking if a team is in the ranking and
> updating the team statics
> Tournament :  parsing the ganes and call the right functions on Ranking
>
> Can this work or am In making to much classes
>
> Roelof
>
>
>
>
> Op 24-3-2019 om 19:02 schreef Roelof Wobben:
> > Hello,
> >
> > I tried another way to solve this but the code is a mess now.
> >
> > I can update a record but the record is not updated.
> > And I have to do a lot of the same steps for every team.
> >
> > Anyone who can help me to get out of this mess.
> >
> > Code so far:  https://github.com/RoelofWobben/tournament
> >
> > Roelof
> >
> >
> >
>
>
>

Reply via email to