//
//  main.cpp
//  Iterating over a Vector
//
//  Created by Himanshu on 11/12/22.
//

#include <iostream>
#include <vector>
using namespace std;
 
void printVectorUsingIndex (vector<int> v) {
    int n = (int) v.size();
    
    for (int i=0; i<n; i++) {
        cout<<v[i]<<" ";
    }
    
    cout<<endl;
}

void printVectorUsingIterator (vector<int> v) {
    vector<int>::iterator it;
    
    for (it = v.begin(); it != v.end(); it++) {
        cout<<(*it)<<" ";
    }
    
    cout<<endl;
}

void printVector (vector<int> v) {
    
    for (auto val : v) {
        cout<<val<<" ";
    }
    
    cout<<endl;
}
 
int main () {
    
    // Initialisation
    vector<int> vec({10, 15, 25, 40, 50});
    
    cout<<"Iterating over vector using index:"<<endl;
    printVectorUsingIndex(vec);
    
    cout<<"Iterating over vector using iterator:"<<endl;
    printVectorUsingIterator(vec);
    
    cout<<"Iterating over vector using auto:"<<endl;
    printVector(vec);
    
    return 0;
}