1) В заданном массиве Х(N) замените нулями все отрицательные компоненты, непосредственно предшествующие его максимальной компоненте (первой по порядку, если их несколько). 2) В заданном массиве A(N) вычислите среднее геометрическое и среднее арифметическое значения для положительных элементов.
Нужны готовые коды на c#

vlad31106 vlad31106    2   06.03.2022 09:07    1

Ответы
bodrenkodaria bodrenkodaria  06.03.2022 09:10

Задача 1:

using System;

using System.Linq;

namespace ConsoleApp1

{

   internal class Program

   {

       private static void Main(string[] args)

       {

           Console.Write("Enter n: ");

           int n = int.Parse(Console.ReadLine());

           var x = new int[n];

           var rand = new Random();

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

           {

               x[i] = rand.Next(-100, 100);

               Console.WriteLine($"x[{i}] = {x[i]}");

           }

           int max = x.Max();

           int index = Array.IndexOf(x, max);

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

           {

               if (x[i] < 0)

                   x[i] = 0;

           }

           Console.WriteLine("\nResult:");

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

               Console.WriteLine($"x[{i}] = {x[i]}");

       }

   }

}

Задача 2:

using System;

using System.Linq;

namespace ConsoleApp2

{

   internal class Program

   {

       private static void Main(string[] args)

       {

           Console.Write("Enter n: ");

           int n = int.Parse(Console.ReadLine());

           var a = new int[n];

           var rand = new Random();

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

           {

               a[i] = rand.Next(-100, 100);

               Console.WriteLine($"x[{i}] = {a[i]}");

           }

           int[] positiveItems = a.Where(t => t > 0).ToArray();

           if (positiveItems.Length == 0)

           {

               Console.WriteLine("No positive numbers");

               return;

           }

           int sum = positiveItems.Sum();

           int product = positiveItems.Aggregate((x, y) => x * y);

           double arithmeticMean = sum / (double)positiveItems.Length;

           double geometricMean = Math.Pow(product, 1 / (double)positiveItems.Length);

           Console.WriteLine($"\nArithmetic mean: {arithmeticMean}");

           Console.WriteLine($"Geometric mean: {geometricMean}");

       }

   }

}


1) В заданном массиве Х(N) замените нулями все отрицательные компоненты, непосредственно предшествую
1) В заданном массиве Х(N) замените нулями все отрицательные компоненты, непосредственно предшествую
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика