Найти в Дзене

📌 Пользовательская функция Excel, которая решает квадратные уравнения

Оглавление

Приветствуем всех читателей и подписчиков канала! 👋

Сегодня в уроке рассмотрим как создать пользовательскую функцию, которая решает квадратные уравнения вида ax^2 + bx + c = 0 и возвращает решение в виде одного значения (если решение уравнения одно) или массива из двух значений (если решений уравнения два).

Пользовательская функция Excel, которая решает квадратные уравнения
Пользовательская функция Excel, которая решает квадратные уравнения

📢 Скачать исходник с примером вы можете в конце статьи 🔽

-3

🔔 Представляем код, который является пользовательской функцией в Excel для решения квадратных уравнений вида ax^2 + bx + c = 0.

⏩ Алгоритм решения уравнения

- Если дискриминант меньше нуля, то уравнение не имеет корней в действительных числах и функция возвращает строку "Корней нет". 
- Если дискриминант равен нулю, то уравнение имеет один корень, который функция возвращает. 
- Если дискриминант больше нуля, то уравнение имеет два корня, которые функция возвращает в виде массива.
- Если дискриминант меньше нуля, то уравнение не имеет корней в действительных числах и функция возвращает строку "Корней нет". - Если дискриминант равен нулю, то уравнение имеет один корень, который функция возвращает. - Если дискриминант больше нуля, то уравнение имеет два корня, которые функция возвращает в виде массива.

Описание кода

  1. Первая строка объявляет функцию с названием QuadraticSolver и тремя аргументами (a, b, с), которые должны быть типа Double (вещественные числа).
  2. Объявляются 3 переменные типа Double: discriminant, х1 и х2.
  3. Выражение discriminant = b * b - 4 * a * c  - вычисляет дискриминант квадратного уравнения  (далее - D).
  4. Блок условий:
  • Если D < 0, то решение не имеет действительных корней. В этом случае будет возвращена строка "Нет корней": QuadraticSolver = "Нет корней".
  • Если D = 0, то решение имеет 1 действительный корень.

Мы вычисляем этот корень по формуле: x1 = -b / (2 * a) и возвращаем его в качестве результата функции: QuadraticSolver = x1
В последнем блоке, если D> 0, то решение имеет 2 действительных корня, вычисляемые по формулам:

  • для 1-го: х1 = (-b + Sqr(discriminant)) / (2 * a)
  • для 2-го: х2 = (-b - Sqr(discriminant)) / (2 * a)

Затем функция возвращает массив, содержащий 2 (два) решения, используя функцию Array(х1, х2): QuadraticSolver = Array(x1, x2)

5. Код функции заканчивается словом "End Function" указывающим на ее завершение.

🔲 Подводя итог:

Рассмотренная функция принимает 3 аргумента (a, b и c), являющиеся коэффициентами квадратного уравнения, возвращая 1 или 2 корня в зависимости от значения дискриминанта.

-6

➡️ СКАЧАТЬ ПРИМЕР ФАЙЛА

Наша команда очень заинтересована в создании качественного и полезного контента. Поэтому, если Вам понравился этот урок, не забудьте поблагодарить автора лайком 👍. Если у Вас есть вопросы или своё решение, не стесняйтесь оставить комментарий 💬. Нужно решение для другой проблемы? Пожалуйста, напишите свой вопрос в комментариях 💬, и мы обязательно рассмотрим его в ближайшей теме обзора. Мы ценим Вашу обратную связь 💝, так как это помогает нам оценить, насколько данный материал был полезен для Вас.
Наша команда очень заинтересована в создании качественного и полезного контента. Поэтому, если Вам понравился этот урок, не забудьте поблагодарить автора лайком 👍. Если у Вас есть вопросы или своё решение, не стесняйтесь оставить комментарий 💬. Нужно решение для другой проблемы? Пожалуйста, напишите свой вопрос в комментариях 💬, и мы обязательно рассмотрим его в ближайшей теме обзора. Мы ценим Вашу обратную связь 💝, так как это помогает нам оценить, насколько данный материал был полезен для Вас.