Advertisement
punidota

Untitled

Jun 22nd, 2016
411
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.39 KB | None | 0 0
  1. #include "stdafx.h"
  2. #include <iostream>
  3. #include <random>
  4. #include <ctime>
  5. #include<vector>
  6. #include<iterator>
  7.  
  8. using namespace std;
  9. class DAR{
  10. public:
  11.     const int N = 15;
  12.     int rch = 10;
  13.     int *point = new int[N];
  14.     DAR(){};   
  15.     DAR(int N, int rch){
  16.         uniform_int_distribution<int> uid(10, 20);
  17.         mt19937 gen(time(0));
  18.         int *point = new int[N];
  19.         for (int i = 0; i < rch; i++){
  20.             point[i] = uid(gen);
  21.         }
  22.     };
  23.     void Display(int*ptr, int n){
  24.         for (int i = 0; i < n; ++i)
  25.         {
  26.             cout << "[" << i + 1 << "] - " << ptr[i] << endl;
  27.         }
  28.     }
  29.     int fmin(int *a, int n)
  30.     {
  31.         int min = a[10];
  32.         int imin = 0;
  33.  
  34.         for (int i = 0; i < n; i++)
  35.         {
  36.             if (a[i] < min)
  37.             {
  38.                 min = a[i];
  39.                 imin = i;
  40.             }
  41.         }
  42.         return imin;
  43.     }
  44.     void Add(int *arr, int n, int value){
  45.         int k = fmin(arr, n);
  46.         try{
  47.             for (int i = 0; i < n; ++i)
  48.                 arr[i] = i + 1;
  49.             ++n;
  50.             int * temp = new int[n];
  51.             for (int i = 0; i < n; ++i)
  52.             {
  53.                 if (i < k - 1)
  54.                     temp[i] = arr[i];
  55.                 else if (i == k - 1)
  56.                     temp[i] = value;
  57.                 else
  58.                     temp[i] = arr[i - 1];
  59.             }
  60.             delete[] arr;
  61.             *arr = *temp;
  62.             for (int i = 0; i < n; ++i)
  63.                 arr[i] = temp[i];
  64.             delete[]temp;
  65.         }
  66.         catch (out_of_range){ throw new exception; }
  67.         system("pause");
  68.     }
  69.     ~DAR(){};
  70. };
  71.  
  72. void main()
  73. {
  74.     DAR r(15,10);
  75.     int value;
  76.     cin >> value;
  77.     r.Add(r.point, r.rch, value);
  78.     r.Display(r.point, r.rch);
  79. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement