Сформировать массив по правилу - C# (196533)

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

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

Помогите с этим ужасом.. Буду благодарна. Сформировать динамический массив А состоящий из N элементов (количество элементов вводится с клавиатуры). Элементы массива А с четными индексами определяются по зависимости: Ai=f(xi) где xi – случайное число из диапазона i … N . Элементы массива А с нечетными индексами – по зависимости: где xi – случайное число из диапазона i … 2N . Значение функции f(xi): f(xi)=|sinx/3,12+cosx2|–8,3sin3x Записать массив в файл (имя файла вводится с клавиатуры) в папку Mas в папке проекта.

Решение задачи: «Сформировать массив по правилу»

textual
Листинг программы
using System;
using System.IO;
using System.Linq;
 
namespace test
{
    internal class Program
    {
 
        public static void Main(string[] args)
        {
            Console.WriteLine("Введите N:");
            int n = Convert.ToInt32(Console.ReadLine());
            double[] generateArray = GenerateArray(10);
 
            Console.WriteLine("Введите имя файлы:");
            string name = Console.ReadLine();
 
            SaveToFile(name, generateArray);
        }
 
        private static double[] GenerateArray(int n)
        {
            double[] a = new double[n];
            Random rnd = new Random();
 
            for (int i = 0; i < n; i++)
            {
                a[i] = i % 2 == 0 ? 
                    (n - i) * rnd.NextDouble() + i : // Четный индекс
                    Math.Sqrt((n * 2 - i) * rnd.NextDouble() + i); // Нечетный индекс
            }
 
            return a;
        }
        
        private static double F(double x)
        {
            return Math.Abs(Math.Sin(x) / 3.12 + Math.Cos(x * x)) - 8.3 * Math.Sin(3 * x);
        }
 
        private static void SaveToFile(string fileName, double[] arr)
        {
            const string dirName = @"Mass";
            // Проверка существует ли директория
            if (!Directory.Exists(dirName)) Directory.CreateDirectory(dirName);
 
            // Добавляем txt расширение
            fileName = Path.ChangeExtension(fileName, "txt");
            // Добавляем путь папки
            fileName = Path.Combine(dirName, fileName);
            // Если файл существует удаляем
            File.WriteAllLines(fileName, arr.Select(Convert.ToString));
            
        }
    }
}

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


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

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

15   голосов , оценка 3.933 из 5
Похожие ответы