Уравнение вида a⋅x 2 + b⋅x + c = 0 — квадратное уравнение.
a, b, c — действительные числа, a ≠ 0.
Для того чтобы вычислить корни квадратного уравнения, нужно сначала найти дискриминант.
- если D < 0, то квадратное уравнение не имеет корней;
- если D = 0, то уравнение имеет один действительный корень(иногда говорят, что корней два, но они одинаковые):
- x1 = x2 = -b / (2⋅a);
- x1 = (-b + √D) / (2⋅a);
- x2 = (-b + √D) / (2⋅a).
program QuadraticEquation; var a, b, c, x1, x2, discriminant : real; begin write(‘a = ‘); readln(a); write(‘b = ‘); readln(b); write(‘c = ‘); readln(c); discriminant := sqr(b) — 4 * a * c; if discriminant < 0 then writeln(‘Квадратное уравнение не имеет корней’) else begin if discriminant = 0 then begin x1 := -b / (2 * a); x2 := x1; end else begin x1 := (-b + sqrt(discriminant)) / (2 * a); x2 := (-b — sqrt(discriminant)) / (2 * a); end; writeln(‘x1 = ‘, x1:8:3); writeln(‘x2 = ‘, x2:8:3); end; writeln(‘Press Enter to Exit. ‘); readln; end.
< Пример 1.5. Решить квадратное уравнение ax^2 + bx + c = 0. Система тестов ╔═════╦═══════════════╦══════════════╦══════════════════════════════╗ ║Номер║ Проверяемый ║ Коэффициенты ║ ║ ║теста║ случай ╟───┬────┬─────╢ Результаты ║ ║ ║ ║ a │ b │ c ║ ║ ╠═════╬═══════════════╬═══╪════╪═════╬══════════════════════════════╣ ║ 1 ║ d>0 ║ 1 │ 1 │ -2 ║ x1 = 1, x2 = -2 ║ ╟─────╫───────────────╫───┼────┼─────╫──────────────────────────────╢ ║ 2 ║ d=0 ║ 1 │ 2 │ 1 ║ Корни равны: x1= -1, x2= -1 ║ ╟─────╫───────────────╫───┼────┼─────╫──────────────────────────────╢ ║ 3 ║ d0 ║ 0 │ 0 │ 2 ║ Неправильное уравнение ║ ╟─────╫───────────────╫───┼────┼─────╫──────────────────────────────╢ ║ 6 ║ a=0, b<>0 ║ 0 │ 2 │ 1 ║ Линейное уравнение. Один ║ ║ ║ ║ │ │ ║ корень: х= -0,5 ║ ╟─────╫───────────────╫───┼────┼─────╫──────────────────────────────╢ ║ 7 ║a<>0, b<>0, c=0║ 2 │ 1 │ 0 ║ x1 = 0, x2 = — 0,5 ║ ╚═════╩═══════════════╩═══╧════╧═════╩══════════════════════════════╝ > Program QuadraticEquation; Uses Crt; < подключение библиотеки Crt >Var a, b, c : Real; < a, b, c — коэффициенты уравнения>Discr : Real; < Discr — дискриминант >x1, x2 : Real; < x1, x2 — корни >Test, NTest : Integer; < Ntest — количество тестов >BEGIN ClrScr; Write(‘Введите количество тестов : ‘); ReadLn(NTest); For Test := 1 to NTest do < цикл по всем тестам задачи >begin Write(‘Тест ‘, Test, ‘. Введите коэффициенты a, b, c : ‘); ReadLn(a, b, c); If (a=0) and (b=0) and (c=0) then begin Write(‘Все коэффициенты равны нулю.’); WriteLn(‘x — любое число ‘) end else If (a=0) and (b<>0) then WriteLn(‘Линейное уравнение. Oдин корень: x =’, (-c/b):6:2) else If (a=0) and (b=0) and (c<>0) then WriteLn(‘Неправильное уравнение.’) else begin Discr := b*b — 4*a*c; If Discr > 0 then begin x1:=(-b + Sqrt(Discr)) / (2*a); x2:=(-b — Sqrt(Discr)) / (2*a); WriteLn(‘x1=’ , x1:6:2 , ‘; x2=’ , x2:6:2) end else If Discr = 0 then begin x1 := -b/(2*a); WriteLn(‘Корни равны: x1=’, x1:6:2, ‘ x2=’, x1:6:2) end else WriteLn(‘Действительных корней нет.’); end; WriteLn end; ReadLn END.
Похожие записи/страницы:
- Дано: a, b, c. Если а≠0, выяснить, имеет ли уравнение ax2+bx+c=0 корни. Если да – найти их и напечатать с…
- Даны шесть квадратных уравнений.Подсчитайте сумму всех действительных корней этих уравнений , если таковые…
- Составьте программу, которая умеет решать линейные уравнения (уравнения вида Ах+В=0). Рассматриваются различные случаи:…
- Рассмотрев дискриминант D = B^2 — 4*A*C, проверить истинность высказывания: «Квадратное уравнение Ax^2+ Bx + C = 0 имеет…
- Найти корни квадратного уравнения A·x2 + B·x + C = 0, заданного своими коэффициентами A, B, C (коэффициент A не равен…
- Даны действительные числа a, b, c ( a=0). Выяснить, имеет ли уравнение ax2 + bx +c = 0 действительные корни. Если…
- Для данной прямой составить уравнение перпендикулярной ей прямой, проходящей через указанную точку. Для прямой y=ax+b…
- Вычислить корень уравнения используя метод деления отрезка пополам. уравнение следующее 1-x+sinx-ln(1+x)=0 на [0;1,5],…
Источник: retrolib.ru
Программа решения квадратного уравнения. Паскаль 5.
Pascal.Программа квадратное уравнение.
Программа на pascal решение квадратного уравнения
Программирование на Паскале. Тема: «Решение квадратного уравнения с использованием конструкции IF–THEN–ELSE»
До сих пор мы с вами говорили о каких-то отвлечённых задачах из области математики. Сегодня мы поговорим о конкретной задаче, которая встречается у вас почти на каждом уроке. Это решение квадратного уравнения. Я хочу, чтобы вы на примере этой задачи поняли, что программирование — это не просто прихоть учителя, это действительно раздел информатики, который может нам помочь, например, в решении конкретных математических задач. Нужно только уметь разбираться в этом.
2. Математическое решение
Давайте вспомним, что понимают под квадратным уравнением?
Что из себя представляют числа a,b,c и как их называют?
С чего начинают решение квадратного уравнения?
Найдите вокруг себя формулу дискриминанта. (D=b 2 -4ac) (Приложение 3)
Как мы решаем далее квадратное уравнение? (сравнение D с нулём)
Какие выводы мы из этого делаем?
(если D 0, то два корня)
Как найти корни квадратного уравнения? Найдите формулы корней среди тех, что развешены повсюду.
Если я случай наличия корней квадратного уравнения сведу к условию D0, то что я получу в случае D=0?
(Два одинаковых корня)
Давайте ещё раз подробно разберём нашу задачу:
Итак, у нас есть квадратное уравнение ax 2 +bx+c=0.
Квадратные уравнения на Pascal. Находим дискриминант.
Добрый день, товарищи! И вот я возвращаюсь с новым гайдом, который, думаю, окажется многим полезным. Сегодня мы напишем программу для нахождения корней и дискриминанта квадратного уравнения.
Согласитесь, всегда удобно иметь под рукой небольшой калькулятор, который быстро покажет тебе и дискриминант, и ответ на сложное уравнение.
В конце статьи я дам вам ссылку на Яндекс.Диск для скачивания файла с этим кодом!
1. Объявим и введем переменные
В этом отрезке кода мы объявляем наши переменные. a , b , c — будет вводить пользователь, это основные части уравнения.
d — наш дискриминант.
x1 , x2 — корни уравнения.
Тип данных выберем целый, но при желании все же можно поставить real .
Для наглядности после ввода переменных продублируем их в уравнение, чтобы пользователь видел уравнение.
2. Находим дискриминант квадратного уравнения
Тут все просто, тут все по математике. Вместо не очень красивого b * b можно использовать функцию возведения в квадрат — sqr(b) , в данном примере так сделано для наглядности.
3. Если дискриминант меньше нуля
Как мы помним из курса математики, если Д меньше нуля — это уравнение не будет иметь смысла. Чтож, поэтому необходимо добавить это исключение.
4. Если дискриминант равен нулю
Если Д равен нулю — у него лишь один корень, и находится он иначе, чем при Д больше нуля. Поэтому поспешим добавить и это исключение в нашу программу.
5. Находим корни х1 и х2 квадратного уравнения
Просто найдем х1 и х2. Напомню, что sqrt(d) это корень дискриминанта. После этого просто делим это на 2а. Формулы, думаю, сами знаете.
Чтож, вот и все программа, ссылка, напомню, будет в конце статьи, а сейчас давайте ее протестируем!
6. Тесты
Тесты помещу в галерею. Смотрите остальные (->)
Источник: dzen.ru