Реально ли создать метод с вариативным параметром, который можно не указывать?
static double Discriminant(double a, double b, double c, double d)
{
d = (b * b) - 4 * a * c;
return d;
}
Это метод подсчета дискриминанта
double QE = Discriminant(a: 23, b: 15, c: 12);
Это переменная, которой присваивается значение, которое считает вышеуказанный метод. Но задав d мы распечатываем, не то что мы посчитали, а то что мы задали. В этом и проблема
Есть три варианта:
double Discriminant(double a, double b, double? c = null, double? d = null)?public static void Program(params object[] args) (схожий вопрос тут)PS Зачем вам вообще d? Можно написать проще:
static double Discriminant(double a, double b, double c)
{
return (b * b) - 4 * a * c;
}
double QE = Discriminant(a: 23, b: 15, c: 12);
Насчёт:
точно ведь, можно просто объявить ее в методе не передавая.
Эта переменная используется менее двух раз (не нужна для дальнейших расчётов), её можно не объявлять. Удобство разве что для отладки.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости