LAB12_T2

 avatar
unknown
c_cpp
2 years ago
1.3 kB
4
Indexable
#include <iostream>
#include <cmath>
#include <vector>
#include <stdio.h>

using namespace std;

template <class Type>

void InitArray(vector<Type> (&A))
{
    srand(time(0));
    for (int i = 0; i < A.size(); i++)
    {
        A[i] = (rand()%100) / 10.0;
    }
}
template <class Type>
ostream &operator<<(ostream &stream, vector<Type> (&A))
{
    for (int i = 0; i < A.size(); i++) 
    {
        stream << A[i] << " ";
    }
    stream<<std::endl;
    return stream;
}
template <class Type>
istream &operator>>(istream &stream, vector<Type> (&A))
{
    cout << "Enter elements of the vector: " << endl;
    for (int i = 0; i < A.size(); i++) 
    {
        cout << " " << i << ": ";
        stream >> A[i];
    }
    return stream;
}
template <class Type>
vector<Type>& operator +(vector<Type> (&A), int n)
{
    for (int i = 0; i < n; i++) 
    {
        A.push_back(0);
    }
    return A;
}

template <class Type>
int ElementsCount(vector<Type> (&v))
{
    int counter = 0;
    for (int i = 1; i < v.size(); i++) 
    {
        if(v[i] % i == 0)
            counter++;
    }
    return counter;
}

int main()
{
    int dimension;
    cout << "Enter dimensions: ";
    cin >> dimension;
    
    vector<int> v(dimension);
    
    cin >> v;
    cout << v;
    
    cout << "Elements: " << ElementsCount(v);
    return 0;
}
Editor is loading...