Решение квадратного уравнения программа

Уравнение вида a⋅x 2 + b⋅x + c = 0 — квадратное уравнение.

a, b, c — действительные числа, a ≠ 0.

Для того чтобы вычислить корни квадратного уравнения, нужно сначала найти дискриминант.

  • если D 0, то уравнение имеет два действительных корня:
  • x1 = (-b + √D) / (2⋅a);
  • x2 = (-b + √D) / (2⋅a).

Программа для решения квадратного уравнения на языке программирования Паскаль

Функция sqr языка Pascal используется для возведения числа в квадрат.
Функция sqrt используется для получения квадратного корня числа.
В программе используется форматированный вывод вещественных чисел. variable:8:3 — означает, что для вывода переменной предусмотрено 8 символов, 5 из них под целую часть и 3 под дробную.

Программирование на Паскале. Тема: «Решение квадратного уравнения с использованием конструкции IF–THEN–ELSE»

До сих пор мы с вами говорили о каких-то отвлечённых задачах из области математики. Сегодня мы поговорим о конкретной задаче, которая встречается у вас почти на каждом уроке. Это решение квадратного уравнения. Я хочу, чтобы вы на примере этой задачи поняли, что программирование — это не просто прихоть учителя, это действительно раздел информатики, который может нам помочь, например, в решении конкретных математических задач. Нужно только уметь разбираться в этом.

Лекция 9: Программа для решения квадратного уравнения

2. Математическое решение

Давайте вспомним, что понимают под квадратным уравнением?

Что из себя представляют числа a,b,c и как их называют?

С чего начинают решение квадратного уравнения?

Найдите вокруг себя формулу дискриминанта. (D=b 2 -4ac) (Приложение 3)

Как мы решаем далее квадратное уравнение? (сравнение D с нулём)

Какие выводы мы из этого делаем?

(если D 0, то два корня)

Как найти корни квадратного уравнения? Найдите формулы корней среди тех, что развешены повсюду.

Если я случай наличия корней квадратного уравнения сведу к условию D0, то что я получу в случае D=0?

Читайте также:
Определите что будет написано в результате работы следующей программы s 1

(Два одинаковых корня)

Давайте ещё раз подробно разберём нашу задачу:

Итак, у нас есть квадратное уравнение ax 2 +bx+c=0.

Найти корни квадратного уравнения

Таким образом, программа для нахождения корней квадратного уравнения должна иметь три ветви условного оператора.

Функция float преобразует переданный ей аргумент в вещественное число.

import math print(«Введите коэффициенты для уравнения») print(«ax^2 + bx + c = 0:») a = float(input(«a = «)) b = float(input(«b = «)) c = float(input(«c = «)) discr = b ** 2 — 4 * a * c print(«Дискриминант D = %.2f» % discr) if discr > 0: x1 = (-b + math.sqrt(discr)) / (2 * a) x2 = (-b — math.sqrt(discr)) / (2 * a) print(«x1 = %.2f nx2 = %.2f» % (x1, x2)) elif discr == 0: x = -b / (2 * a) print(«x = %.2f» % x) else: print(«Корней нет»)

Примеры выполнения кода:

Введите коэффициенты для уравнения ax^2 + bx + c = 0: a = 2 b = 4 c = 2 Дискриминант D = 0.00 x = -1.00
Введите коэффициенты для уравнения ax^2 + bx + c = 0: a = 3.2 b = -7.8 c = 1 Дискриминант D = 48.04 x1 = 2.30 x2 = 0.14
Введите коэффициенты для уравнения ax^2 + bx + c = 0: a = 8 b = 4 c = 2 Дискриминант D = -48.00 Корней нет

Обратите внимание, что для данной программы коэффициент a не должен быть равен нулю. Иначе в теле условного оператора будет происходить попытка деления на 0, что приведет к аварийному завершению программы.

Программа, определяющая корни квадратного уравнения. Язык программирования Python.

Если a = 0, то квадратное уравнение превращается в линейное, которое решается иным способом. Оно всегда имеет один корень.

X Скрыть Наверх

Решение задач на Python

Источник: younglinux.info

Программа для решения квадратных уравнений на C++

Follow us on Twitter Follow us on rss

math

Довольно часто в пособиях по программированию встречаются задания по нахождению решений каких-нибудь математических уравнений. Задача нахождения корней квадратного уравнения — это довольно тривиальная задача, как и многие другие задачи. Решается она очень просто при помощи листа бумаги и ручки, но решение можно автоматизировать посредством написания прикладной программы и её использования. В этой статье мы напишем такую программу.

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

Многие знают, что уравнение вида ax 2 + bx + c = 0 , где a не равно 0, называют квадратным уравнением.

Существуют различные способы решения квадратных уравнений, но мы рассмотрим решение через дискриминант.

Обозначается дискриминант буквой D . Из школьного курса знаем, что D = b 2 — 4ac .

Существует несколько условий:

  • Если D > 0, то решение имеет 2 различных вещественных корня.
  • Если D = 0, то оба вещественных корня равны.
  • Если D < 0, то оба корня являются комплексными числами.
Читайте также:
Где и когда был запущен первый искусственный спутник земли кто был руководителем этой программы

Алгоритм решения довольно прост. Вычисляется дискриминант, если он больше или равен 0, то вычисляются корни по следующей формуле

Формула нахождения корней квадратного уравнения

Формула нахождения корней квадратного уравнения

Также можно объединить две предыдущие формулы в одну

Объединенная формула нахождения корней квадратного уравнения

Объединенная формула нахождения корней квадратного уравнения

Алгоритм решения квадратного уравнения на C++

Для написания программы, решающей квадратное уравнение, мы прибегнем к тому же алгоритму, но реализуем его на языке программирования C++.

Определимся с переменными. Нам понадобиться всего 4 переменных a, b, x, c. Корни и коэффициенты всегда вещественного типа, поэтому переменные a, b, x, c будут иметь тип double.

Определимся интерфейсом. Пользователь будет вводить в консоль значения для для переменных a, b, c, а после получать на вывод корни уравнения, либо сообщение «Дискриминант меньше 0, корни невещественные.»

Итак, определим в программе в функции main() наши переменные

double a; double b; double c; double x;

Вывод и ввод будет осуществляться с консоли, поэтому подключаем заголовок #include для вводавывода в консоли, #include для работы с математическими функциями и область using namespace std;

#include #include using namespace std;

Просим пользователя ввести значения переменных и сохраняем каждое значение

cout > a; cout > b; cout > c;

Проверяем условие, если дискриминант больше или равен 0, то находим корни и выводим

if((b*b — 4*a*c) >= 0) //Если дискриминант больше или равен 0 < x = ( -1*b + sqrt(b*b — 4*a*c) ) / (2 * a); cout << «Первый корень равен » << x << endl; x = ( -1*b — sqrt(b*b — 4*a*c) ) / (2 * a); cout

в противном случае выводим сообщение

else

На этом всё, осталось скомпилировать, запустить и проверить. Запускаем и вводим данные, чтобы D был меньше 0

Введите значение a: 2 Введите значение b: 3 Введите значение c: 3 Дискриминант меньше 0, корни невещественные. Для закрытия данного окна нажмите .

В этом случае D = 3*3 — 4*2*3 = -15, а это меньше 0, значит ответ программа дала верный.

Введите значение a: 2 Введите значение b: 6 Введите значение c: 4 Первый корень равен -1 Второй корень равен -2 Для закрытия данного окна нажмите .

Читайте также:
Как установить программу я иду домой

Ответы тоже верны. Программа работает правильно.

Ниже представлен весь листинг программы для нахождения корней квадратного уравнения на C++

#include #include using namespace std; int main() < double a; double b; double c; double x; cout > a; cout > b; cout > c; if((b*b — 4*a*c) >= 0) //Если дискриминант больше или равен 0 < x = ( -1*b + sqrt(b*b — 4*a*c) ) / (2 * a); cout else < cout return 0; >

Для вас это может быть интересно:

Раздел: Алгоритмы Программирование Метки: C++, алгоритм, консоль, программирование, решение

Программа для решения квадратных уравнений на C++ : 24 комментария

  1. Rolf 15.10.2016 Программировать так сложно…
  1. Nicknixer Автор записи 15.10.2016 Не так сложно, как Вам кажется! Немного литературы, немного практики и смотреть на код решения такой задачи Вы будете по-другому.
  1. Strength 05.12.2016 Доброго времени суток! Помогите пожалуйста написать программу, которая считает сколько символов в ряде двумерного массива. То есть , например массив 5 на 5, сколько символов в 1 ряде, сколько во 2 и т.д.
  1. Николай Сергейчук Автор записи 09.02.2017 Принимаем
    Согласен с вами во всём! Программу можно реализовать намного лучше, используя различные проверки и валидацию входных данных.
    Однако, статья рассчитана на аудиторию, которая только начинает познавать программирование или делает лабораторную. Чтобы людям легче было понять, реализация данной программы упрощена до невозможности. И, возможно, несправедливо было с моей стороны не предупредить их о возможных ошибках в работе программы, которые могут вскрыться позже, если подать на вход определенные значения.
    Кстати, у вас интересная статья по тестированию!
  1. Александр 10.12.2019 Николай, доброго времени суток! Можете помочь с написанием програмки в с++? 1-1/2!+1/3!-1/4!+1/5! и так до 1/100! ? Чтобы при заднии в строке номера члена последовательности выдавал сумму до него по такой вот формуле? Буду очень благодарен!
  1. Иван 07.02.2019 Уважаемая, Лена! Я, надеюсь, вы знаете, что код программы, написанной на языке программирования C++ нельзя тупо вставить в блокнот и сохранить под названием «cpp.sh»? Если не знали, то я, видимо, открыл для вас Америку!

Источник: nicknixer.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru