private void button1_Click(object sender, EventArgs e)
{
// Исходный массив из 25 целых чисел
int[] arr = { 5, -3, 0, 12, -7, 0, 8, -1, 4, 0, -9, 15, -2, 0, 6, -4, 10, 0, -5, 3, -8, 0, 7, -6, 2 };
string result = "";
// 1. Вывод исходного массива
result += "Исходный массив:\n";
for (int i = 0; i < arr.Length; i++)
{
result += arr[i] + " ";
if ((i + 1) % 10 == 0) result += "\n"; // перенос после 10 чисел
}
// 2. Создаем три списка для разделения
List<int> positive = new List<int>(); // положительные
List<int> negative = new List<int>(); // отрицательные
List<int> zero = new List<int>(); // нулевые
// 3. Разносим элементы по спискам
for (int i = 0; i < arr.Length; i++)
{
if (arr[i] > 0)
positive.Add(arr[i]);
else if (arr[i] < 0)
negative.Add(arr[i]);
else
zero.Add(arr[i]);
}
// 4. Собираем результат: сначала положительные, потом отрицательные, потом нули
List<int> resultArr = new List<int>();
resultArr.AddRange(positive);
resultArr.AddRange(negative);
resultArr.AddRange(zero);
// 5. Вывод обработанного массива
result += "\n\nОбработанный массив:\n";
result += "(положительные, отрицательные, нулевые)\n";
for (int i = 0; i < resultArr.Count; i++)
{
result += resultArr[i] + " ";
if ((i + 1) % 10 == 0) result += "\n";
}
// 6. Дополнительная статистика (как в задании №1, но для массива)
result += "\n\nСтатистика:\n";
result += "Положительных: " + positive.Count + "\n";
result += "Отрицательных: " + negative.Count + "\n";
result += "Нулевых: " + zero.Count + "\n";
// Минимум, максимум (по желанию)
int min = arr.Min();
int max = arr.Max();
double avg = arr.Average();
result += $"Минимум: {min}\n";
result += $"Максимум: {max}\n";
result += $"Среднее: {avg:F2}\n";
// Вывод в TextBox (не забудьте установить Multiline = true и ScrollBars)
textBox1.Text = result;
}