Вывод комплексного числа в форматном виде - C#
Формулировка задачи:
Нужно вывести комплексные числа в форматированном виде,вот в таком например 1,0004+2,345i
Вот метод,который считает\получает комплексные числа
А теперь главная проблема в main
Учитывая, что метод выше возвращает new Complex,я решил присвоить его таким образом Но теперь нужно чтобы метод работал в цикле и следовательно чтобы выдавало разные значения,от -30 до 30 и правильном формате.
Увы не отображает,только одно число и 60 раз.
Если занесу объявление Complex [] values = {} внутрь цикла for,то сразу выскочит ошибка внедрённый оператор не может быть объявлением.
static Complex GetSpectralDensity(double amplitude, double frequency, double time) { NumericalIntegration integration = new NumericalIntegration(); double real = amplitude * integration.Calculate(x => Math.Cos(-frequency * x), 0, time); double imaginary = amplitude * integration.Calculate(x => Math.Sin(-frequency * x), 0, time); return new Complex(real,imaginary); }
Complex [] values ={GetSpectralDensity(double amplitude, double frequency, double time)}
for (int frequency = -30, counter = 0; frequency <= 30; frequency++, counter++)
static void Main(string[] args) { double amplitude = 25; double time = 50; int frequency=0; int counter; Complex [] values = { GetSpectralDensity(amplitude, frequency, time) }; foreach (var value in values) for (int frequency = -30, counter = 0; frequency <= 30; frequency++, counter++) Console.WriteLine("{0}+ {1}i",value.Real,value.Imaginary ); Console.ReadKey(); }
Решение задачи: «Вывод комплексного числа в форматном виде»
textual
Листинг программы
using System; using System.Numerics; using System.Collections.Generic; namespace ConsoleApplication28 { class Program { static void Main(string[] args) { double amplitude = 25; double time = 50; List<Complex> values = new List<Complex>(); for (int frequency = -30, counter = 0; frequency <= 30; frequency++, counter++) { values.Add(GetSpectralDensityDummy(amplitude, frequency, time)); } values.ForEach(x => Console.WriteLine("{0}+ {1}i", x.Real, x.Imaginary)); Console.ReadKey(); } private static Complex GetSpectralDensityDummy(double amplitude, int frequency, double time) { return new Complex(amplitude, frequency); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д