Το πρόβλημα της ομάδας μπάσκετ

Ένας αθλητικός συντάκτης θα γράψει άρθρο για την ομάδα μπάσκετ του Πανκουρελιακού για την αγωνιστική περίοδο 2008-2009. Τα στοιχεία που έχει στα χέρια του είναι το σύνολο των αγώνων που έδωσε η ομάδα εκείνη τη χρονιά, καθώς και το σύνολο των πόντων που σκόραρε και δέχθηκε σε κάθε έναν από τους αγώνες που έδωσε.

Το ζητούμενο για αυτόν είναι να υπολογίσει το σύνολο των πόντων που σκόραρε και δέχθηκε η ομάδα σε όλους τους αγώνες της περιόδου αυτής καθώς και τους πόντους που δέχθηκε, στον αγώνα που σκόραρε τους περισσότερους πόντους.

Να κατασκευαστεί πρόγραμμα σε γλώσσα Pascal το οποίο:

  1. Να διαβάζει τον αριθμό των αγώνων που έδωσε η ομάδα.
  2. Να διαβάζει τους πόντους που σκόραρε και δέχθηκε σε κάθε έναν από τους αγώνες.
  3. Να υπολογίζει τους συνολικούς πόντους που σκόραρε και δέχθηκε η ομάδα.
  4. Να υπολογίζει τους πόντους που δέχθηκε στον αγώνα που σκόραρε τους περισσότερους πόντους.
  5. Να εμφανίζει τα μηνύματα:
    Η ομάδα σκόραρε συνολικά .... πόντους.
    Η ομάδα δέχθηκε συνολικά .... πόντους.
    Οι πόντοι που δέχθηκε, στον αγώνα που πέτυχε τους περισσότερους πόντους, είναι ....

program Basket;

var
  i, Games: Integer;  { Οι αγώνες που έδωσε η ομάδα}
  SPointsIn,          { Το σύνολο των πόντων που δέχθηκε }
  SPointsOut,         { Το σύνολο των πόντων που σκόραρε }
  PointsIn,           { Οι πόντοι που δεχόταν ανά αγώνα }
  PointsOut: Integer; { Οι πόντοι που σκόραρε ανά αγώνα }
  MaxPointsOut,       { Οι πόντοι που πέτυχε στον αγώνα
                        που σκόραρε τους περισσότερους πόντους  }
  PointsInAtMaxPointsOut: Integer; { Οι πόντοι που δέχθηκε στον
                                     αγώνα που σκόραρε τους περισσότερους
                                     πόντους  }

begin
{ Αρχικοποίηση συσσωρευτών }
  SPointsIn    := 0;
  SPointsOut   := 0;
{ Αρχική τιμή -1 ώστε ο πρώτος αγώνας να γίνει
  αυτός με τους περισσότερους πόντους }  
  MaxPointsOut := -1;
  PointsInAtMaxPointsOut := 0;

  Write('Δώστε τους αγώνες που έδωσε η ομάδα: '); Readln(Games);

  for i := 1 to Games do
  begin
    Write('Δώστε τους πόντους που δέχθηκε και σκόραρε στον ', i, 'ο αγώνα: ');
    Readln(PointsIn, PointsOut);
    SPointsIn := SPointsIn + PointsIn;
    SPointsOut := SPointsOut + PointsOut;
    if PointsOut > MaxPointsOut then
    begin
      MaxPointsOut := PointsOut;
      PointsInAtMaxPointsOut := PointsIn;
    end;
  end;

  Writeln('Η ομάδα σκόραρε συνολικά ', SPointsOut, ' πόντους.');
  Writeln('Η ομάδα δέχθηκε συνολικά ', SPointsIn, ' πόντους.');
  Writeln('Οι πόντοι που δέχθηκε, στον αγώνα που πέτυχε',
    ' τους περισσότερους πόντους, είναι ', PointsInAtMaxPointsOut);
end.
Advertisements

Posted on 16/02/2012, in Γλώσσα Pascal, Δομημένος Προγραμματισμός and tagged , , , . Bookmark the permalink. Σχολιάστε.

Σχολιάστε

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση / Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση / Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση / Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση / Αλλαγή )

Σύνδεση με %s

Αρέσει σε %d bloggers: