Вывод комплексного числа в форматном виде - 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);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д