Составить программу для решения биквадратного уравнения

Составить программу для решения биквадратного уравнения

var a,b,c,d,x1,x2,x3,x4,t1,t2: real ;

writeln( ‘Программа для решения биквадратного уравнения вида ax^4+bx^2+c’ );

write( ‘ введите a= ‘ );

write( ‘ введите b= ‘ );

write( ‘ введите c= ‘ );

if d 0 then writeln( ‘Уравнение не имеет действительных корней’ )

if (t1 0 ) then writeln( ‘x1 и x2 не действительные корни’ )

if (t2 0 ) then writeln( ‘x3 и x4 не действительные корни’ )

Практическая работа по информатике «Программирование на PascalABC «Биквадратное уравнение» (9 класс)

Обращаем Ваше внимание, что в соответствии с Федеральным законом N 273-ФЗ «Об образовании в Российской Федерации» в организациях, осуществляющих образовательную деятельность, организовывается обучение и воспитание обучающихся с ОВЗ как совместно с другими обучающимися, так и в отдельных классах или группах.

«Актуальность создания школьных служб примирения/медиации в образовательных организациях»

Свидетельство и скидка на обучение каждому участнику

9 класс Ветвление Pascal ABC (Биквадратное уравнение)

Составить программу для нахождения корней биквадратного уравнения. Ввод с клавиатуры. Использовать модуль CRT . Программа должна учитывать все случаи решения биквадратного уравнения.

а) a =4, b =-5, c =1___________ x 1=1, x 2=-1, x 3=0.5, x 4=-0.5;

б) a =1, b =-2, c =1___________ x 1=1, x 2=-1, x 3=1, x 4=-1;

в) a =1, b =2, c =-8___________ x 1=1.41, x 2=-1.41, x 3 и x 4 не являются действительными корнями;

г) a =1, b =1, c =1000___________ уравнение не имеет действительных корней.

Программа для нахождения корней биквадратного уравнения, представляет собой алгоритмическую структуру ветвление.

var a,b,c,d,x1,x2,x3,x4,t1,t2: real ;

writeln( ‘Программа для решения биквадратного уравнения вида ax^4+bx^2+c’ );

write( ‘ введите a= ‘ );

write( ‘ введите b= ‘ );

write( ‘ введите c= ‘ );

if d 0 then writeln( ‘Уравнение не имеет действительных корней’ )

if (t1 0 ) then writeln( ‘x1 и x2 не действительные корни’ )

if (t2 0 ) then writeln( ‘x3 и x4 не действительные корни’ )

Краткое описание документа:

Практическая работа по информатике рассчитана на учащихся 9 класса. Работа заключается в составлении программы для нахождения корней биквадратного уравнения. Файл содержит формулировку задания, тест программы (включающий все случаи решения биквадратного уравнения в действительных числах) и вариант решения. Используемый язык программирования: Pascal ABC.

Курс повышения квалификации

Дистанционное обучение как современный формат преподавания

  • Сейчас обучается 949 человек из 80 регионов

Курс повышения квалификации

Педагогическая деятельность в контексте профессионального стандарта педагога и ФГОС

  • Курс добавлен 23.11.2021
  • Сейчас обучается 48 человек из 28 регионов

Курс повышения квалификации

Инструменты онлайн-обучения на примере программ Zoom, Skype, Microsoft Teams, Bandicam

  • Курс добавлен 31.01.2022
  • Сейчас обучается 33 человека из 19 регионов

Ищем педагогов в команду «Инфоурок»

Дистанционные курсы для педагогов

Самые массовые международные дистанционные

Школьные Инфоконкурсы 2022

33 конкурса для учеников 1–11 классов и дошкольников от проекта «Инфоурок»

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

5 565 533 материала в базе

Другие материалы

  • 31.12.2020
  • 338
  • 4

  • 31.12.2020
  • 294
  • 0
  • 31.12.2020
  • 509
  • 2

  • 31.12.2020
  • 935
  • 4
  • 30.12.2020
  • 2633
  • 83

  • 30.12.2020
  • 1532
  • 12

  • 30.12.2020
  • 1682
  • 25

  • 30.12.2020
  • 1698
  • 0

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

Добавить в избранное

  • 22.05.2020 514
  • DOCX 13.9 кбайт
  • 7 скачиваний
  • Оцените материал:

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

Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

Автор материала

  • На сайте: 1 год и 1 месяц
  • Подписчики: 0
  • Всего просмотров: 28798
  • Всего материалов: 255

Московский институт профессиональной
переподготовки и повышения
квалификации педагогов

Дистанционные курсы
для педагогов

663 курса от 690 рублей

Выбрать курс со скидкой

Выдаём документы
установленного образца!

Учителя о ЕГЭ: секреты успешной подготовки

Время чтения: 11 минут

Объявлен конкурс дизайн-проектов для школьных пространств

Время чтения: 2 минуты

В Рособрнадзоре рассказали, как будет меняться ЕГЭ

Время чтения: 2 минуты

В России могут объявить Десятилетие науки и технологий

Время чтения: 1 минута

Профессия педагога на третьем месте по популярности среди абитуриентов

Время чтения: 1 минута

Онлайн-конференция о создании школьных служб примирения

Время чтения: 3 минуты

Тринадцатилетняя школьница из Индии разработала приложение против буллинга

Время чтения: 1 минута

Подарочные сертификаты

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

Все материалы, размещенные на сайте, созданы авторами сайта либо размещены пользователями сайта и представлены на сайте исключительно для ознакомления. Авторские права на материалы принадлежат их законным авторам. Частичное или полное копирование материалов сайта без письменного разрешения администрации сайта запрещено! Мнение администрации может не совпадать с точкой зрения авторов.

Составить программу для решения биквадратного уравнения

Ответы и объяснения

Решение биквадратного уравнения на Паскале схоже с решением квадратного уравнения. Только следует ввести замену x^2 -> a. Как только найдем корни a, можно извлекать из них квадратные корни – это и будут решения уравнения x.

program sqrt1;
uses
crt;
var
x1, x2: real;
a, b, c, result: real;
D: real;
s:string;
label m1;
begin
clrscr;
m1: writeln(‘Программа решения биквадратного уравнения’);
write(‘Введите первый коэффициент: ‘);
readln(a);
write(‘Введите второй коэффициент: ‘);
readln(b);
write(‘Введите свободный член: ‘);
readln(c);
D:=b*b-4*a*c;

if D>0 then
begin
x1:=(-b+sqrt(D))/(2*a);
x2:=(-b-sqrt(D))/(2*a);
if x1>=0 then
begin
x1:=sqrt(x1);
writeln(‘Первый корень: ‘,x1:3:3);
end;
if x2>=0 then
begin
x2:=sqrt(x2);
writeln(‘Второй корень: ‘,x2:3:3);
end;
end;

if D=0 then
begin
x1:=-b/(2*a);
if x1>=0 then
begin
x1:=sqrt(x1);
writeln(‘Один корень: ‘,x1:3:3);
end;
end;

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

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

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

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

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

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

  • Если D > 0, то решение имеет 2 различных вещественных корня.
  • Если D = 0, то оба вещественных корня равны.
  • Если D

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

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

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

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

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

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

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

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

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

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

Программировать так сложно…

  1. Nicknixer Автор записи 15.10.2016

Не так сложно, как Вам кажется! Немного литературы, немного практики и смотреть на код решения такой задачи Вы будете по-другому.

Доброго времени суток! Помогите пожалуйста написать программу, которая считает сколько символов в ряде двумерного массива. То есть , например массив 5 на 5, сколько символов в 1 ряде, сколько во 2 и т.д.

Ответил вам по электронной почте

Критику принимаете? 🙂
Программа дырявая как сито.

Если число очень маленькое, но положительное, например 10^(-20) — у вас будет переполнение или типо того. Оператор > проверяет знак числа (это отдельный бит), а оператор == для дробных чисел не имеет смысла, т.к. в младших разрядах числа обычно находится какой-нибудь мусор, который при таком сравнении дает false.

x = ( -1*b + sqrt(b*b – 4*a*c) ) / (2 * a);
x = ( -1*b – sqrt(b*b – 4*a*c) ) / (2 * a);

Тут есть три вопроса:
1) зачем два раза вычислять одно и тоже (я про корень)
2) что делать если мне корни надо как-то использовать, а не просто вывести (тут есть проблема, ведь у меня то один корень — то два). Чтобы лучше понять в чем проблема — попробуйте вынести вычисление корней в отдельную функцию. У вас то вообще, если корень один — то их выведется все равно два, одинаковых.
3) в переменной «a» может быть ноль (или близкое к нулю число) — при этом мы получим деление на ноль (а точнее, переполнение).

Но это ведь еще не все. Что будет если и «a» и «b» равны нулю? — тебе надо рассмотреть два варианта — если c = 0 (условно, близко к нулю), то корней бесконечно много. А если c != 0, то корней нет.

Вообще, эта задача — прекрасный пример для юнит-тестирования и демонстрации принципов разработки через тестирование. Именно его я рассматривал в своей статье по теме тестирования: Юнит-тестирование. Пример. Boost Unit Test. Дело в том, что тут куча вариантов сделать ошибку, при этом их понимание приходит не сразу, т.е. школьник решая задачу напишет по формуле которой учили (ну и вот как у вас). А потом надо разбираться и смотреть как программа может сломаться, при этом разрабатывать тесты.

  1. Николай Сергейчук Автор записи 09.02.2017

Принимаем 🙂
Согласен с вами во всём! Программу можно реализовать намного лучше, используя различные проверки и валидацию входных данных.
Однако, статья рассчитана на аудиторию, которая только начинает познавать программирование или делает лабораторную. 🙂 Чтобы людям легче было понять, реализация данной программы упрощена до невозможности. И, возможно, несправедливо было с моей стороны не предупредить их о возможных ошибках в работе программы, которые могут вскрыться позже, если подать на вход определенные значения.
Кстати, у вас интересная статья по тестированию!

Помогите решить в Dev C++
Sqrt x^2+1+sqrt|x|,x0

Здравствуйте, можете помочь с решением биквадратного и триквадратного уравнения?

#include
using namespace std;
int main()
b;
cout <> c;
D = pow(b, 2) — 4 * a * c;
cout

ну и? если даже тупо скопировать код и вставить его в cpp.sh , ничего не работает. поебота какая то этот с++

Уважаемая, Лена! Я, надеюсь, вы знаете, что код программы, написанной на языке программирования C++ нельзя тупо вставить в блокнот и сохранить под названием «cpp.sh»? Если не знали, то я, видимо, открыл для вас Америку!

помогите решить. заданы 3 перемены a.b.c записать вы радение на С
b,
b и а не равно != с

iconcerts где забыл
#include

Я ради интереса написал программу нахождения корней квадратного уравнения на С++, с выводом корней как в десятичном виде, так и в виде простой дроби (причём уже сокращённой), потому что выводя корни в десятичном виде программа их одновременно сокращает и округляет и 1/3 превращается в 0.333333 хотя на самом деле 0.333333 (3), то есть для проверки правильно ли нашёл корни ваш ребёнок, вы с получите что-то типа: X1= 0.285714; X2=0.214286, а на самом деле это будет X1=2/7; X2=3/14, кроме того, если корень из дискриминанта не получается целым числом, вы уже получите двойную неточность: сначала при извлечении корня программа отсечёт значение до 4-6 цифр после запятой с округлением, а затем сделает то же самое при делении числителя на знаменатель. Я и здесь сделал вывод корней в двух значениях: в десятичном и в виде выражения X1= (-b + sqrt(D))/(2*a); X2= (-b — sqrt(D))/(2*a), то есть выводится примерно вот так X1=-5+sqrt(21)/2; X2=-5-sqrt(21)/2 с одновременным разложением дискриминанта под корнем на множители, вынесением этих множителей из-под корня, если они выносятся нацело, их перемножением и дальнейшим сокращением. Вот, например, имеем a=3, b=15, c=3, при решении получаем D=189 программа выдаёт десятичные корни X1= -0.208712 и X2= -4.79129, а в виде выражения имеем: X1= -5+sqrt(21)/2, то есть первоначально получаем: X1= -15+sqrt(189)/6, -> 189=21*9 -> -15+3sqrt(21)/6 далее идёт сокращение на 3 и итог -5+sqrt(21)/2

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.


источники:

http://infourok.ru/prakticheskaya-rabota-po-informatike-programmirovanie-na-pascalabc-bikvadratnoe-uravnenie-9-klass-4891224.html

http://4apple.org/sostavit-programmu-dlja-reshenija-bikvadratnogo/