Advertisement
Daniel_leinaD

4.1 Дмитрий Засов

Jan 25th, 2023
906
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.78 KB | None | 0 0
  1. #include <iostream>
  2. #include <clocale>
  3. #include <math.h>
  4. #include <iomanip>
  5. using namespace std;
  6.  
  7. // лаба 4.1
  8. // поехали
  9. // Создать функцию для поиска положения последнего отрицательного элемента произвольного массива целых чисел.
  10. // Вернуть указатель на отрицательный элемент.
  11. // Тестовая программа :
  12. // Создать и инициализировать 2 массива A[N1], B[N2]
  13. // Найти положение отрицательного элемента массива.
  14. // Полученный указатель разделяет массив на 2 части.
  15. // Определить максимальный элемент в второй  части массив
  16. // Пункты 2 и 3 выполнить для массивов A и B
  17.  
  18.  
  19. const int n = 15;
  20. int i, j;
  21. int f(int x[n]) {
  22.     int pol = 0, count = 0;
  23.     for (j = 0; j < n; j++) {    
  24.         if (x[j] > 0) {
  25.       pol = x[j];
  26.       count = j;
  27.       }
  28.     }
  29.   cout << "Последнее положительное число = " << pol << '\n' << "Его индекс равен = " << count << '\n';
  30.     if (pol > 0) {              
  31.         int* prt_pol = &count;
  32.         return *prt_pol;
  33.     }
  34.     else {
  35.         cout << "положительных элементов нет" << '\n';
  36.     return 0;
  37.     }
  38. }
  39. int main() {
  40.     int a[n], amount = 0;
  41.     for (i = 0; i < n; i++){       // заполнение массива
  42.         a[i] = rand() % 100 - 50;
  43.         cout << setw(4) << a[i];
  44.     }
  45.     cout << '\n';                  
  46.     for (j = f(a); j < n; j++) {
  47.         if (a[j] < 0) {
  48.             amount += 1;
  49.         }
  50.     }
  51.     cout << "Кол-во отрицательных чисел = "<< amount;                
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement