Краткие сведения из теории.
⇐ ПредыдущаяСтр 2 из 2 Рассмотрим квадратное уравнение Ах2 + Вх + С = 0 Сначала следует задать значения коэффициентов А,В,С. В разделе описания нужно описать А,В и С как переменные: VAR А,В,С: REAL; На первый взгляд кажется естественным для определения переменных использовать операторы присвоения: А:=3.5; В:=7.84; С:=0.256. Однако, в этом случае, при решении квадратного уравнения с другими значениями коэффициентов А,В,С, потребуется менять правые части указанных трех операторов присвоения, т.е. менять сам текст исходной программы. Поэтому следует вводить значения А,В,С с помощью оператора ввода READLN (А,В,С); В этом случае оператор ввода обеспечивает выборку данных из стандартного входного файла INPUT, в результате которой имена переменных А,В,С получают соответствующие значения. Типы вводимых переменных должны соответствовать типам вводимых значений. Проанализируем алгоритм решения задачи. Известно, что корни квадратного уравнения вычисляются по формуле: Несмотря на кажущуюся простоту этой формулы, воспользоваться ею в программе без предварительного анализа нельзя, т.к. она при А = 0 теряет смысл, а при В2 - 4АС<0 корни будут комплексными, а ЭВМ может работать только с действительными числами. Для получения решения в общем случае нужно в алгоритме предусмотреть две ветви получения расписания: для случая действительных корней и для случая комплексных. В последнем случае нужно вычислить действительные и мнимые части корней. Анализ показывает, что рассматриваемая задача допускает 6 вариантов решения в зависимости от численного значения коэффициентов: 1. А = В = С = 0 - решений бесконечно много, х - любое число; 2. А = В = О, С ¹ 0 - решений не существует;
3. А = 0; В ¹ 0 - единственное решение х = - С/В; 4. А ¹ 0; В2 - 4АС = 0 - кратные корни х1 = х2 = - В/2А; 5. А ¹ 0; В2 - 4АС > 0 - два вещественных корня;
6. А ¹ 0; B2 - 4АС<0 - два комплексно-сопряженных корня. Задание. · Изменить приведенную программу, используя оператор варианта CASE. · На внешнем носителе создать файл исходного модуля программы: имя.PAS. · Создать загрузочный модуль: имя.SAV. · Решить квадратное уравнение с коэффициентами А,В,С, соответствующими одному из вариантов таблицы №1. Номер варианта студент получает у преподавателя. Рис.1. Блок-схема программы нахождения корней квадратного уравнения.
Программа CWADR, составленная по блок-схеме, представленной на рис. 1.
Program cwadr (input, output); label 20; var a, b, c, d, e, d1, x, x1, x2: real; begin writeln ('введите a, b, c'); readln ('a, b, c'); if a=0 then begin if b=0 then begin if c=0 then begin writeln ('x-любое число'); goto 20; end; writeln ('решений нет'); goto 20; end; writeln ('корень один x= ', x); goto 20; end; d:= b*b-4*a*c; e:= 2*a; if d=0 then begin writeln ('корни кратные х1 = х2 = ', -b/e); goto 20; end; d1:= sqrt (abs (d)); if d<0 then begin writeln ('корни комплексно-сопряженные'); writeln ('x1 = ', -b/e, ' -i* ', d1/e); writeln ('x2 = ', -b/e, ' +i* ', d1/e); goto 20; end; writeln ('корни действительные'); writeln ('x2 = ', (- b+d1)/e); writeln ('x1 = ', (- b+d1)/e); 20; end. Таблица № 1
Отчет. Отчет по лабораторной работе должен содержать: · Наименование и цель лабораторной работы. · Постановку задачи. · Блок-схема решения задачи. · Написанную программу с использованием оператора варианта. · Результаты выполнения программы на микро-ЭВМ.
4. Контрольные вопросы.
5.1 Какие бывают варианты решения квадратного уравнения в зависимости от значений коэффициентов А,В,С? 5.2 Что такое раздел описания меток и раздел описания переменных? 5.3 Как ввести значения коэффициентов А,В,С? 5.4 Как работают безусловные и условные операторы перехода? 5.5 Пояснить работу оператора варианта CASE. 5.6 Как действуют операторы ввода и вывода? 5.7 Что такое трансляция исходного модуля? Как ее осуществить на микро-ЭВМ? 5.8 Что такое загрузочный модуль? Как его получить на микро-ЭВМ? 5.9 Как ввести исходные данные для готовой программы на микро-ЭВМ? 5.10 Как подготовить и занести в память готовую программу на микро-ЭВМ?
___________________________ (должность, подпись, фамилия и инициалы разработчика) «___»__________200__г.
Читайте также: I уровень. Теоретические сведения Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|