punidota

Untitled

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