@Anton_repr

Как вернуть 2 значения из метода?

class Program
    {
        static void Main(string[] args)
        {
            Equalization equalization = new Equalization(2, 3, 4);
            Console.WriteLine($"Корни уравнения: {}");  // <b><i>не совсем понимаю, как вызвать result1 и result2</i></b>
            Console.ReadLine();
        }
    }

    class Equalization
    {
        public double first;
        public double second;
        public double third;
        public double D;
        public static double result1;
        public static double result2;
        public Equalization(int x, int y, int z)
        {
            first = x;
            second = y;
            third = z;
        }        
        public int Count()
        {
            D = second * second - 4 * first * third;
            result1 = (-second - Math.Sqrt(D)) / (2 * first);
            result2 = (-second + Math.Sqrt(D)) / (2 * first);
            return (result1, result2); // <b>так не получается</b>
        }


Я пробовал с двумя методами, но не получилось вызвать переменные ( вызываются те, что только объявлены, они равны 0 ). Вызывал так :
Console.WriteLine($"Корни уравнения: {equalization.result1},{equalization.result2}");


Могли бы вы, пожалуйста, мне помочь?
  • Вопрос задан
  • 4422 просмотра
Решения вопроса 1
GavriKos
@GavriKos
Варианты:
1) Обернуть в структуру/класс и возвращать ее инстанс
2) Использовать out/ref
3) Если ссылочный тип - подавать на вход и модифицировать

А вообще - такое разбирается в любом учебнике по основам.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
(int a, int b) Get() { return (1, 2);}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы