Αντιστροφή των στοιχείων ενός πίνακα σε C++

Η πλήρης προβολή του βίντεο απαιτεί σύνδεση

Το βίντεο έχει διάρκεια 13:04, πιθανά να χρειάζεται λίγος χρόνος για την προβολή του.

cpp βρόγχος while πίνακας αντιστροφή

Ένα πρόγραμμα που λαμβάνει από το STDIN στοιχεία, τα αποθηκεύει σε πίνακα, και τα εμφανίζει στο STDOUT με αντίστροφη σειρά (ανάποδη από αυτή που τα έλαβε).

#include <iostream>

#define NMAX 5000

using namespace std;

int main()
{
    double x[NMAX];
    int N, i = 0;

    cout << "Enter some data, until CTRL-D : " << endl;
    while (cin >> x[i])
    {
        i++;
    } 
    N = i;

    cout << "Reverse ... " << endl;
    for (i=N-1; i >= 0; i--)
    {
        cout << x[i] << endl;
    }
        
    return 0;
}

Μεταγλώττιση και δοκιμαστική εκτέλεση:

astavrak@zeus:~$ g++ program.cpp
astavrak@zeus:~$ ./a.out 
Enter some data, until CTRL-D : 
1.3
4.1
6.7
Reverse ... 
6.7
4.1
1.3

Και μία παραλλαγή

Δείτε επίσης πως γίνεται να αποθηκευτούν οι τιμές με ανίστροφη σειρά, σε άλλο πίνακα. Η αποστολή στο STDOUT γίνεται προφανώς για λόγους επίδειξης. Προσέξτε πως γίνεται η ανάθεση τιμών από τον πίνακα x στον πίνακα y.

 
#include <iostream>
#include <stdio.h>

#define NMAX 5000

using namespace std;

int main()
{
    double x[NMAX], y[NMAX];
    int N, i = 0;

    cout << "Enter some data, until CTRL-D : " << endl;
    while (cin >> x[i])
    {
        i++;
    } 
    N = i;

    cout << "Reverse ... " << endl;
    for (i=0; i < N; i++)
    {
        y[i] = x[N-1-i];
        cout << y[i] << endl;
    }
        
    return 0;
}

Μεταγλώττιση και δοκιμαστική εκτέλεση:

astavrak@zeus:~$ g++ program.cpp
astavrak@zeus:~$ ./a.out 
Enter some data, until CTRL-D : 
1.3
4.1
6.7
Reverse ... 
6.7
4.1
1.3

Συνδεθείτε για περισσότερες δυνατότητες αλληλεπίδρασης,
σχολιασμοί, εξωτερικοί σύνδεσμοι, βοήθεια, ψηφοφορίες, αρχεία, κτλ.

Creative Commons License
Εκπαιδευτικό υλικό από τον Αθανάσιο Σταυρακούδη σας παρέχετε κάτω από την άδεια Creative Commons Attribution-NonCommercial-ShareAlike 4.0 License.
Σας παρακαλώ να ενημερωθείτε για κάποιους επιπλέον περιορισμούς
http://stavrakoudis.econ.uoi.gr/stavrakoudis/?iid=401.