Удвоить вхождение в одномерный целочисленный массив всех элементов из заданного диапазона - C#
Формулировка задачи:
Напишите программу, которая удваивает вхождение в одномерный целочисленный массив всех элементов из заданного диапазона. Исходное число элементов прочитайте с клавиатуры, сам массив сгенерируйте случайным образом. Массив до и после удваивания вхождения элементов выведите на экран для сравнения. Проверьте, правильно ли написан код
namespace задача_3
{
class Program
{
static void Print(int[] arr)
{
for (int i = 0; i < arr.Length; i++)
{
Console.Write("{0} ", arr[i]);
}
}
static void Assignment (int [] arr)
{
Random rnd = new Random();
for (int i = 0; i < arr.Length; i++)
{
arr[i] = rnd.Next(-100, 100);
}
}
static void Main(string[] args)
{
Console.WriteLine("Введите длину массива:");
int n = int.Parse(Console.ReadLine());
Console.WriteLine("Введите нижнюю границу");
int a = int.Parse(Console.ReadLine());
Console.WriteLine("Введите верхнюю границу");
int b = int.Parse(Console.ReadLine());
if (a < b)
{
int[] arr = new int[n];
Assignment(arr);
Console.WriteLine("исходный массив: ");
Print(arr);
int count = 0;
for (int i = 0; i < arr.Length; i++)
{
if (arr[i] >= a && arr[i] <= b)
{
count++;
}
}
Console.WriteLine("кол-во элементов в массиве = {0}",count);
int[] arrnew = new int[arr.Length + count];
int countnew = 0;
for (int i = 0; i < arr.Length; i++)
{
arrnew[countnew] = arr[i];
countnew++;
if (arr[i] >= a && arr[i] <= b)
{
arrnew[countnew] = arr[i];
countnew++;
}
}
Console.WriteLine();
Console.WriteLine("Отсортированный массив: ");
Print(arrnew);
}
else { Console.WriteLine("Ошибка.Введенны неверные значения"); }
Console.ReadLine();
}
}
}Решение задачи: «Удвоить вхождение в одномерный целочисленный массив всех элементов из заданного диапазона»
textual
Листинг программы
using System;
using System.Collections.Generic;
class Program
{
public static void Main()
{
Random RND = new Random();
List<int> arr = new List<int>();
for (int i = 0; i < 20; i++)
{
int n = RND.Next(10);
arr.Add(n);
Console.Write(n);
Console.Write(' ');
}
Console.WriteLine();
for (int i = arr.Count - 1; i >= 0; i--)
{
if (arr[i] == 3 || arr[i] == 7) arr.Insert(i, arr[i]);
}
for (int i = 0; i < arr.Count; i++)
{
Console.Write(arr[i]);
Console.Write(' ');
}
Console.WriteLine();
}
}