Share Pastebin
Guest
Public paste!

timmi

By: a guest | Mar 16th, 2010 | Syntax: C++ | Size: 0.87 KB | Hits: 27 | Expires: Never
Copy text to clipboard
  1. double arrSum(double* arr, size_t len)
  2. {
  3.     size_t i = 0;
  4.     double sum = 0;
  5.  
  6.     // идём до первого отрицательного элемента в массиве
  7.     while (i < len && arr[i] > 0)
  8.         i++;
  9.  
  10.     i++; // получаем индекс первого элемента после отрицательного
  11.  
  12.     // суммируем элементы, пока не встретим отрицательный или не достигнем конца массива
  13.     while (i < len)
  14.     {
  15.         if (arr[i] > 0)
  16.         {
  17.             sum += arr[i];
  18.             i++;
  19.         }
  20.         else
  21.             break; // дошли до второго отрицательного, выходим
  22.     }
  23.  
  24.     if (i < len) // был второй отрицательный элемент
  25.         return sum;
  26.     else
  27.         return 0;
  28. }