В упорядоченную последовательность включить заданное число так, чтобы упорядоченность не нарушилась - C#

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

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

Добавить условие заполнение массива Задание : В упорядоченную по возрастанию последовательность из целых чисел включить заданное число так, чтобы упорядоченность не нарушилась после ввода проверяю ввожу массив 23456 записываем число в массив 1 получается массив 213456, а должно 123456. Какое условие добавить или как переписать? Вот сам код программы:
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace Udin
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)//мейн
  10. {
  11. int N, Ch, poz;//N - размер массива Ch- число, poz - его поизция
  12. Console.WriteLine("Введите размер массива");//просим ввести размер массива
  13. N = Convert.ToInt32(Console.ReadLine());//вводим размер массива
  14. int[] arr = new int[N + 1];//создаем массив
  15. for (int i = 0; i < N; i++)//идем в цикле
  16. {
  17. Console.WriteLine("Введите элемент массива[{0}]:", i + 1);//просим ввести элемент массива
  18. arr[i] = Convert.ToInt32(Console.ReadLine());//вводим элемент массива
  19. }
  20. Console.WriteLine("Введите число для вставки: ");//просим ввести число
  21. Ch = Convert.ToInt32(Console.ReadLine());//вводим число, которое вставляем
  22. Console.WriteLine("Ваш массив:");//
  23. for (int i = 0; i < N; i++)//идем в цикле
  24. {
  25. Console.Write(arr[i] + " ");//выводим массив на экран
  26. }
  27. poz = 0;//обнуляем позицию
  28. for (int i = 0; i < N; i++)//идем в цикле
  29. {
  30. if (arr[i] < Ch)//если текущий элемент меньше нашего числа
  31. poz = i;//запоминаем его поизцию
  32. }
  33. for (int i = N; i > poz + 1; i--)//идем в цикле и двигаем массив вправо на 1 элемент, освобождая место для вставки
  34. {
  35. arr[i] = arr[i - 1];//
  36. }
  37. arr[poz + 1] = Ch;//вставляем наш элемент на его позицию
  38. Console.WriteLine("\nВаш массив:");//идем в цикле
  39. for (int i = 0; i < N + 1; i++)//
  40. {
  41. Console.Write(arr[i] + " ");//выводим массив на экран
  42. }
  43. Console.ReadKey();//чтобы не закрывалась консоль
  44. }
  45. }
  46. }

Решение задачи: «В упорядоченную последовательность включить заданное число так, чтобы упорядоченность не нарушилась»

textual
Листинг программы
  1. poz = 0;//обнуляем позицию
  2.             for(int i = 0; i < N; i++)//идем в цикле
  3.             {
  4.                 if(arr[i] < Ch)                     //если текущий элемент меньше нашего числа
  5.                     poz = i + 1;                        //Изменил
  6.             }
  7.  
  8.             for(int i = N; i > poz; i--)//Изменил
  9.             {
  10.                 arr[i] = arr[i - 1];//
  11.             }
  12.             arr[poz] = Ch;//Изменил

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


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

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

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

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

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

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