Почему не считает сумму элементов, между первым и последним отрицательным элементом? - C#

Узнай цену своей работы

Формулировка задачи:

С# Почему не считает сумму элементов, между первым и последним отрицательным элементом
Листинг программы
  1. class Program
  2. {
  3. static void Main(string[] args)
  4. {
  5. // Создание массива
  6. int n = 21;
  7. int[] array = new int[n];
  8. Random rand = new Random();
  9. for (int i = 0; i < n; i++)
  10. {
  11. array[i] = rand.Next(-10, 10);
  12. Console.WriteLine("" + array[i]);
  13. }
  14. // Сумма элементов под нечетными номерами
  15. int s1 = 0;
  16. for (int i = 0; i < n; i++)
  17. {
  18. if (i % 2 != 0)
  19. s1 = s1 + array[i];
  20. }
  21. Console.WriteLine("Сумма={0}", s1);
  22. //сумма элементов массива, расположенных между
  23. //первым и последним отрицательными элементами
  24. int s2 = 0, otr1 = 0, otr2 = 0 ;
  25. for (int i = 0; i < n; i++)// первый отрицательный элемент
  26. { if (array[i] < 0)
  27. { otr1 = array[i];
  28. Console.WriteLine("Первый отрицательный элемент= {0}", otr1);
  29. for (i = n - 1; i > -1; --i)// последний отрицательный элемент
  30. { if (array[i] < 0)
  31. { otr2 = array[i];
  32. Console.WriteLine("Последний отрицательный элемент= {0}", otr2);
  33. for (i = otr1 + 1; i < otr2; i++)
  34. s2 = s2 + array[i];
  35. Console.WriteLine("Сумма={0}", s2);
  36. Console.ReadKey();
  37. }
  38. }
  39. }
  40. }
  41. }
  42. }
  43. }

Решение задачи: «Почему не считает сумму элементов, между первым и последним отрицательным элементом?»

textual
Листинг программы
  1. int end = array.Length - 1;
  2.                             for (int i = 0; i <= end; i++)
  3.                                 if ((Math.Abs(array[i]) < 1))
  4.                                 {
  5.                                     for (int j = i; j < end; j++)
  6.                                         array[j] = array[j + 1]; //сдвигаем массив влево
  7.                                     array[end] = 0; //записываем в конец 0
  8.                                     end--;
  9.                                     i--;
  10.                                 }
  11.                             foreach (int element in array)
  12.                                 Console.Write("{0} ", element);
  13.                             Console.WriteLine();}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.071 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы