Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РГЗ варианты 11 - 19.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
51.34 Кб
Скачать

Вариант 11

Random rnd = new Random();

int n = rnd.Next(5, 12);

double[] a = new double[n];

// Создать и вывести на экран исходный массива

Console.ForegroundColor = ConsoleColor.Green;

Console.WriteLine("Исходный массив:");

// Вывести на экран номера элементов цветом Red

Console.ForegroundColor = ConsoleColor.Red;

for (int i = 0; i < n; i++)

{

Console.Write("{0,6}", i);

}

Console.ForegroundColor = ConsoleColor.White;

Console.WriteLine();

for (int i = 0; i < n; i++)

{

a[i] = -10 + 20 * rnd.NextDouble();

Console.Write("{0,6:f2}", a[i]);

} // for

Console.WriteLine();

// Найти номер минимального по модулю элемента массива

int imin = 0;

for (int i = 0; i < n; i++)

{

if (Math.Abs(a[i]) < Math.Abs(a[imin]))

imin = i;

}

Console.WriteLine();

Console.WriteLine("Номер наименьшего по модулю значения: {0}", imin);

Console.WriteLine();

int j = 0;

do

{

j++;

}

while (a[j] >= 0);

double s = 0;//сумма модулей элементов после первого отрицательного элемента

if (j >= n)

Console.WriteLine("В массиве нет отрицательных элементов");

else for (int i = j + 1; i < n; i++)

{

s += Math.Abs(a[i]);

}

Console.WriteLine("Сумма модулей элементов, стоящих после первого отрицательного элемента: {0:f2}", s);

Console.WriteLine();

Console.ForegroundColor = ConsoleColor.Green;

Console.Write("Введите A: ");

int a1 = Convert.ToInt32(Console.ReadLine());

Console.Write("Введите B: ");

int b1 = Convert.ToInt32(Console.ReadLine());

Console.WriteLine();

Console.WriteLine("Сжатый массив:");

Console.ForegroundColor = ConsoleColor.Red;

for (int i = 0; i < n; i++)

{

if ((a[i] >= a1) && (a[i] <= b1))

{

a[i] = 0;

}

Console.Write("{0,6}", i);

}

Console.WriteLine();

Console.ForegroundColor = ConsoleColor.White;

for (int i = 0; i < n; i++)

Console.Write("{0,6:f2}", a[i]);

Console.WriteLine();

Вариант 12

Random rnd = new Random();

int n = rnd.Next(4, 11);

double[] a = new double[n];

double[] arrayModify = new double[n];

//Вывод исходного массива на экран

Console.ForegroundColor = ConsoleColor.Green;

Console.WriteLine("Исходный массив:");

Console.ForegroundColor = ConsoleColor.Red;

for (int i = 0; i < n; i++)

{

Console.Write("{0,6}", i);

}

Console.WriteLine();

Console.ForegroundColor = ConsoleColor.White;

for (int i = 0; i < n; i++)

{

a[i] = -5 + 10 * rnd.NextDouble();

Console.Write("{0,6:f2}", a[i]);

}

Console.WriteLine();

Console.WriteLine();

//Найти номер максимального по модулю элемента массива

int max = 0;

for (int i = 0; i < n; i++)

{

if (Math.Abs(a[max]) < Math.Abs(a[i]))

max = i;

}

Console.WriteLine("Номер максимального по модулю элемента массива: {0}", max);

//Найти первый положительный элемент массива

int first = 0;

for (int i = first; i < n; first++)

if (a[first] > 0)

break;

Console.WriteLine("Первый положительный элемент массива: {0:f2}", a[first]);

//Найти сумму всех элементов, расположенных после первого положительного элемента массива

double s = 0;

for (int i = first + 1; i < n; i++)

s = s + a[i];

Console.WriteLine("Сумма элементов, рас-ных после 1-ого положительного элемента: {0:f2}", s);

Console.WriteLine();

//Преобразование массива

Console.ForegroundColor = ConsoleColor.Green;

int b = -1;

int c = 1;

Console.WriteLine("Преобразованный массив (a = -1, b = 1):");

int l = -1;

for (int i = 0; i < n; i++)

{

if ((a[i] >= (b - 1)) && (a[i] < (c +1)))

{

l++;

arrayModify[l] = a[i];

}

}

for (int i = 0; i < n; i++)

{

if ((a[i] < (b - 1)) || (a[i] >= (c + 1)))

{

l++;

arrayModify[l] = a[i];

}

}

Console.ForegroundColor = ConsoleColor.Red;

for (int i = 0; i < n; i++)

{

Console.Write("{0,6}", i);

}

Console.WriteLine();

Console.ForegroundColor = ConsoleColor.White;

for (int i = 0; i < n; i++)

{

Console.Write("{0,6:f2}", arrayModify[i]);

}

Console.WriteLine();