1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- using System;
- using System.Linq;
- using System.Windows.Forms;
- namespace WindowsFormsApp38
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void btnInsertMax_Click(object sender, EventArgs e)
- {
- // Создаем исходный массив
- int[] array = { 1, 0, 3, 0, 5, 0, 7 };
- // Находим максимальный элемент в массиве
- int maxElement = array.Max();
- // Создаем новый массив с добавленным максимальным элементом
- int[] newArray = new int[array.Length + CountNonZeroElements(array)];
- int index = 0;
- for (int i = 0; i < array.Length; i++)
- {
- newArray[index] = array[i];
- index++;
- if (array[i] != 0)
- {
- newArray[index] = maxElement;
- index++;
- }
- }
- // Очищаем ListBox перед выводом результата
- listBox1.Items.Clear();
- // Выводим результат в ListBox вертикально
- foreach (int element in newArray)
- {
- listBox1.Items.Add(element);
- }
- }
- // Метод для подсчета количества ненулевых элементов в массиве
- private int CountNonZeroElements(int[] array)
- {
- int count = 0;
- foreach (int element in array)
- {
- if (element != 0)
- {
- count++;
- }
- }
- return count;
- }
- }
- }
|