Επίπεδο 10.8 του βιβλίου προβλημάτων C++

Задание 1

Γράψτε ένα πρόγραμμα που θα ελέγχει αν μπορεί να ληφθεί μια συμβολοσειρά από μια άλλη μέσω αναδιάταξης των γραμμάτων της.

Задание 2

Υλοποιήστε τον αλγόριθμο Κόσκινο του Ερατοσθένη για την εύρεση πρώτων αριθμών σε ένα δεδομένο διάστημα.

Задание 3

Δίνεται ένας αυθαίρετος δισδιάστατος πίνακας:

cpp{
  {11, 12, 13, 14, 15},
  {21, 22, 23, 24, 25},
  {31, 32, 33, 34, 35},
  {41, 42, 43, 44, 45},
  {51, 52, 53, 54, 55},
}

Ανταλλάξτε δύο δεδομένες σειρές:

cpp{
  {51, 52, 53, 54, 55},
  {21, 22, 23, 24, 25},
  {31, 32, 33, 34, 35},
  {41, 42, 43, 44, 45},
  {11, 12, 13, 14, 15},
}
Задание 4

Δίνεται ένας αυθαίρετος δισδιάστατος πίνακας:

cpp{
  {1, 2, 3, 4, 5},
  {1, 2, 3, 4, 5},
  {1, 2, 3, 4, 5},
  {1, 2, 3, 4, 5},
  {1, 2, 3, 4, 5},
}

Λάβετε το άθροισμα των στηλών αυτού του πίνακα. Το αποτέλεσμα να παρουσιαστεί ως πίνακας αθροισμάτων:

cpp{
  5, 10, 15, 20, 25
}
Задание 5

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

Αυτό είναι σωστό:

cpp"()()"

Αυτό είναι σωστό:

cpp"(())"

Αυτό είναι λανθασμένο, καθώς ο αριθμός των ανοιγμένων παρενθέσεων δεν συμπίπτει με τον αριθμό των κλειστών:

cpp"())"

Αυτό είναι λανθασμένο, καθώς, αν και ο αριθμός των ανοιγμένων παρενθέσεων συμπίπτει με τον αριθμό των κλειστών, η σειρά τους είναι λανθασμένη:

cpp"))(("