Задать вопрос
19 июня, 15:47

Помогите разработать программу в delphi для вычисления квадратных уравнений.

+5
Ответы (2)
  1. 19 июня, 16:01
    0
    Procedure SqRoot (a, b, c: real; var x1, x2: real; var nroots: integer) ;

    {Корни квадратного уравнения с коэффициентами a, b, c.

    nroots - количество найденных действительных корней

    n=0: корни мнимые, х1 - вещественная часть, х2 - мнимая;

    n=1: корни действительные и равные, х1=х2;

    n=2: корни действительные и разные, х1, х2}

    var

    d: real;

    begin

    d : = sqr (b) - 4 * a * c;

    if d < 0 then

    begin

    nroots : = 0;

    x1 : = - b / (2 * a) ;

    x2 : = sqrt (-d) / (2 * a) ;

    end

    else if d = 0 then

    begin

    nroots : = 1;

    x1 : = - b / (2 * a) ;

    x2 : = x1

    end

    else

    begin

    nroots : = 2;

    d : = sqrt (d) ;

    x1 : = (-b - d) / (2 * a) ;

    x2 : = (-b + d) / (2 * a)

    end

    end;

    {тестирование}

    var

    a2, a1, a0, x1, x2: real;

    n: integer;

    begin

    repeat

    write ('Введите коэффициенты уравнения: ') ;

    readln (a2, a1, a0) ;

    if abs (a2) + abs (a1) > 0 then

    begin

    SqRoot (a2, a1, a0, x1, x2, n) ;

    case n of

    0: writeln ('Корни мнимые: ', x1:0:6, '-I*', x2:0:6, ', ', x1:0:6, '+I*', x2:0:6) ;

    1: writeln ('Корни действительные и равные: ', x1:0:6) ;

    2: writeln ('Корни действительные и разные: ', x1:0:6, ', ', x2:0:6)

    end

    end

    until abs (a2) + abs (a1) = 0

    end.

    Тестовое решение:

    Введите коэффициенты уравнения: 3 - 2.5 1

    Корни мнимые: 0.416667-I*0.399653, 0.416667+I*0.399653

    Введите коэффициенты уравнения: - 3 5 2

    Корни действительные и разные: 2.000000, - 0.333333

    Введите коэффициенты уравнения: 4 - 6 2.25

    Корни действительные и равные: 0.750000

    Введите коэффициенты уравнения: 0 0 0
  2. 19 июня, 16:50
    0
    Как-то так

    procedure SqRoot (a, b, c: real; var x1, x2: real; var ok: boolean) ; { a, b, c - коэффициенты уравнения x1, x2 - корни уравнения ok = True - решение есть ok = False - решения нет } var d: real; / / дискриминант begin d: = Sqr (b) - 4*a*c; if d < 0 then ok: = False / / уравнение не имеет решения else begin ok: = True; x1: = (-b + Sqrt (d)) / (2*a) ; x2: = (b + Sqrt (d)) / (2*a) ; end; end;
Знаете ответ?
Сомневаетесь в ответе?
Найдите правильный ответ на вопрос ✅ «Помогите разработать программу в delphi для вычисления квадратных уравнений. ...» по предмету 📘 Информатика, а если вы сомневаетесь в правильности ответов или ответ отсутствует, то попробуйте воспользоваться умным поиском на сайте и найти ответы на похожие вопросы.
Смотреть другие ответы
Похожие вопросы по информатике
1. Напишите программу вычисления расстояния между двумя точками плоскости. 2. Напишите программу вычисления площади боковой поверхности куба. 3. Напишите программу вычисления площади и гипотенузы прямого треугольника, если известны его катеты. 4.
Ответы (1)
Используя язык программирования Паскаль выполнить задание: 1. Составить программу для вычисления y=38x+231. 2. Составить программу для вычисления M=7x+6y+276. 3. Составить программу для вычисления N=4a2+2xa+8y.
Ответы (1)
1) Составьте программу вычисления сумму чисел от 1 до 100. 2) Составьте программу вычисления произведения чётных чисел от 1 до 10. 3) Составьте программу вычисления количества двухзначных нечётных чисел.
Ответы (1)
2. Разработать программу, которая запрашивает ввод целого числа в переменную Z, определяет и выводит на экран сообщение, какое это число - положительное, отрицательное или равное 0.
Ответы (1)
Написать программу в Delphi 7, содержащую цикл для вычисления функции если n=10, A0=0.75, A1=1.6, A2=A3 = ... = A10=2.0; X изменяется с шагом h=0.2 от X1=0 дo X2=2.0.
Ответы (1)