Advertisement
Guest User

array

a guest
Dec 7th, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.42 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. using namespace std;
  4.  
  5. void input_array(float a[], int n)
  6. {
  7.     for (int i = 0; i<n; i++)
  8.         cin >> a[i];
  9. }
  10. void output_array(float a[], int n)
  11. {
  12.     for (int i = 0; i<n; i++)
  13.         cout << a[i] << " ";
  14. }
  15. bool is_even(int i)
  16. {
  17.     if (i % 2 == 0)
  18.         return 1;
  19.     else return 0;
  20. }
  21. void add_random_elem_in_array(float a[], int n)
  22. {
  23.     for (int i = 0; i<n; i++)
  24.         a[i] = ((float)(-100 + rand() % 201)/10);
  25. }
  26. float sum_elem_of_array(float a[], int n)
  27. {
  28.     float c = 0;
  29.     for (int i = 0; i<n; i++)
  30.         c += a[i];
  31.     return c;
  32. }
  33. float multiplication_of_numbers(float a[], int n)
  34. {
  35.     float c = 1;
  36.     for (int i = 0; i<n; i++)
  37.         c *= a[i];
  38.     return c;
  39. }
  40. int Max_el_of_array(float a[], int n)
  41. {
  42.     int max = 0;
  43.     for (int i = 0; i<n; i++)
  44.         if (a[i]>a[max]) max = i;
  45.     return max;
  46. }
  47. int Min_el_of_array(float a[], int n)
  48. {
  49.     int min = 0;
  50.     for (int i = 0; i<n; i++)
  51.         if (a[i]<a[min]) min = i;
  52.     return min;
  53. }
  54.  
  55. void sort_section_array(float a[], int n)
  56. {
  57.     int j = 0;
  58.     float tmp = 0;
  59.     for (int i = 0; i<n; i++)
  60.     {
  61.         j = i;
  62.         for (int k = i; k<n; k++)
  63.         {
  64.             if (a[j]>a[k])
  65.             {
  66.                 j = k;
  67.             }
  68.         }
  69.         tmp = a[i];
  70.         a[i] = a[j];
  71.         a[j] = tmp;
  72.     }
  73.  
  74. }
  75. void sort_bubble_array(float a[], int n)
  76. {
  77.     float tmp = 0;
  78.     for (int i = 0; i<n; i++) {
  79.         for (int j = n - 1; j >= i + 1; j--) {
  80.             if (a[i]<a[j - 1]) {
  81.                 tmp = a[j];
  82.                 a[j] = a[j - 1];
  83.                 a[j - 1] = tmp;
  84.             }
  85.         }
  86.     }
  87. }
  88. void sort_insertion_array(float a[], int n)
  89. {
  90.     float key = 0;
  91.     int i = 0;
  92.     for (int j = 1; j<n; j++) {
  93.         key = a[j];
  94.         i = j - 1;
  95.         while (i >= 0 && a[i]>key) {
  96.             a[i + 1] = a[i];
  97.             i = i - 1;
  98.             a[i + 1] = key;
  99.         }
  100.     }
  101. }
  102. bool search(float v, float a[], int n)
  103. {
  104.     if (n <= 0)
  105.         return false;
  106.     int m = n / 2;
  107.     if (v == a[m - 1])
  108.         return true;
  109.     else if (v>a[m - 1])
  110.         search(v, a, m - 1);
  111.     else return false;
  112. }
  113.  
  114.  
  115.  
  116. void include_in_array(float a[], int n, float b, int idx)
  117. {
  118.     float arr[1000], *c;
  119.     int i, j;
  120.     for (i = 0; i<idx; i++) {
  121.         arr[i] = a[i];
  122.     }
  123.     arr[idx] = b;
  124.     for (i = idx, j = ++idx; i<n, j<(n + 1); i++, j++) {
  125.         arr[j] = a[i];
  126.     }
  127.     c = arr;
  128.  
  129. }
  130.  
  131. bool is_negative(float i)
  132. {
  133.     if (i < 0)
  134.         return 1;
  135.     else return 0;
  136. }
  137. int first_negativ_el(float a[], int n)
  138. {
  139.     int j = 0;
  140.  
  141.     for (int i = 0; i<n; i++)
  142.         if (is_negative(a[i]))
  143.         {
  144.             j = i;
  145.             break;
  146.         }
  147.     return j;
  148. }
  149. int second_negativ_el(float a[], int n)
  150. {
  151.     int j = 0;
  152.  
  153.     for (int i = n; i >= 0; i--)
  154.     {
  155.         if (is_negative(i))
  156.             j = i;
  157.         break;
  158.     }
  159.     return j + 1;
  160. }
  161. float sum_between_negative_el(float a[], int n, int first, int second)
  162. {
  163.     float c = 0;
  164.     for (int i = first; i<second; i++)
  165.         c += a[i];
  166.     return c;
  167. }
  168.  
  169. void sjat(float a[], int n)
  170. {
  171.     float arr[100];
  172.     int last = n-1;
  173.     int j = 0;
  174.     for (int i = 0; i<n; i++)
  175.         if (abs(a[i])>1)
  176.         {
  177.             arr[j] = a[i];
  178.             j++;
  179.         }
  180.         else
  181.         {
  182.             arr[last] = 0;
  183.             last--;
  184.         }
  185.     output_array(arr, n);
  186.    
  187.  
  188. }
  189. float sum_of_even_digit(float a[], int n)
  190. {
  191.     float c = 0;
  192.     for (int i = 1; i<n; i++)
  193.         if(!is_even(i))
  194.         c += a[i];
  195.     return c;
  196. }
  197.  
  198. int main()
  199. {
  200.     int n = 5;
  201.     float a[10];
  202.     cout << "\n array \n";
  203.     add_random_elem_in_array(a, n);
  204.     output_array(a, n);
  205.     cout << "\n summa nechetnih \n";
  206.     cout << sum_of_even_digit(a, n);
  207.     cout << "\n summa interval \n";
  208.     cout << sum_between_negative_el(a, n,
  209.                                     first_negativ_el(a, n),
  210.                                     second_negativ_el(a, n));
  211.    
  212.     cout << "\n sjat massiv \n";
  213.     sjat(a, n);
  214.    
  215.     return 0;
  216. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement