Студопедия — Программа. данные ® ЭВМ ® { отказ | сбой | ошибка }
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Программа. данные ® ЭВМ ® { отказ | сбой | ошибка }






¯

данные ® ЭВМ ® { отказ | сбой | ошибка }

 

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

Сбой - это потеря части данных либо получение непредусмот­ренных данных. Такого рода ошибки говорят о их частичной нера­ботоспособности программ либо об их недостаточной надежности.

Результат неправильный, если он не соответствует требованиям, предъявляемым к работе программ. Программы, содержащие такие ошибки, считаются работоспособными, но их применение может приводить к получению ошибочных результатов.

Оценка программ:

Задача

       
   


исходное требуемое

данные ® программа ® результаты

 

О правильности программ нельзя утверждать ничего если неиз­вестны предъявляемые к ним требования. Только при наличии стро­гих, четких спецификаций можно судить о правильности работы программ.

В качестве примера рассмотрим решение квадратного уравнения:

х2 + 3× х + 2 = 0.

Исходные данные - коэффициенты – а = 1, b = 3, с = 2. Требу­емые результаты - пара чисел х1 и x2, являющихся корнями уравне­ния. Посмотрим, будут ли корнями уравнения пары чисел:

а) х1 = 2, x2 = 3; б) x1 = -2, x2 = -3.

Решением уравнений являются числа, подстановка которых пре­вращает уравнение в тождество. В первом случае подстановка чисел х1 = 2, х2 = 3 в уравнение дает:

22 + 3× 2 + 2 = 12 ¹ 0 - неправильно,

32 +3× 3+2 = 20 ¹ 0 - неправильно.

Следовательно, числа х1 = 2, х2 = 3 не являются правильными результатами.

Подстановка в уравнение чисел х1 = -2, х2 = -3:

(-2)2 + 3× (-2) +2 = 0- правильно;

(-3)2 + 3× (-3) +2 = 0- правильно.

Следовательно, числа х1 = -2, х2 = -3 являются правильными результатами.

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

Постановка задачи

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

а× х2 + b× x + с = 0.

Дано: a, b, с - коэффициенты.

Треб.: х1, х2 - корни.

Где: а× х12 + b× х1 + с = 0.

а× х22 + b× х2 + с = 0.

При: а ¹ 0.

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

Способ правильный, если он дает правильные результаты. Способ неправильный, если он дает неправильные результаты или не дает результатов вообще.

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

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

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

Метод решения

x1 = (-b + )/(2× а),

x2 = (-b - )/(2× a),

где

{ D = b2 - 4× а× с.

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

Для первого корня х1 = (-b + )/(2× a) подстановка и тождест­венные преобразования формул дадут:

а× х12 + b× х1 + с = а× [(-b + )/(2× а)]2 + b× (-b + )/(2× a) + с =

= (-b + )2/(4× а) + b× (-b + )/(2× a) + с = (b + ) × (-b + )/(4× а) + с =

= (-b2 + D)/(4× a) + с = (-b2 + b2 - 4× а× с)/(4× а) + с = -4× а× с/(4× а) + с = 0.

Аналогичные результаты получаются и при подстановке формулы второго корня

х2 = (-b - )/(2× a). После выполнения анало­гичных преобразований будет получено такое же тождество. И на основании этих проверок можно сделать заключение, что рассмот­ренный метод дает правильные результаты для любык допустимых данных.

Однако саму постановку задачи необходимо дополнить условием: b2 - 4× а× с ³ 0. При нарушении этого условия не только уравнение не имеет решений, но и метод решения также не дает результатов из-за необходимости вычисления корней от отрицательного дискриминан­та: D < 0.

В силу выбранного метода решения и принятой постановки алго­ритм решения квадратных уравнений приобретает следующий вид:

 

алг «квадратное уравнение» Результаты вычислений

Нач

если а ¹ О то при а ¹ 0

D: = b*b - 4*а*с D = b2 - 4× а× с

если D > = 0 то при D > = 0

х1: = (-b + )/(2*a) х1 = (-b + )/(2× a)

х2: = (-b - )/(2*a) х2 = (-b - )/(2× a)

Все

инеc а = 0 то при а = 0

если b ¹ 0 при b ¹ 0

х 1: = -c/b xl = -c/b

Все

Кон

 

Результаты выполнения алгоритма приведены справа. Можно заметить, что результаты выполнения совпадают с описанием вы­бранного метода решения с помощью дискриминанта. Это позволяет утверждать, что алгоритм - правильный.

Алгоритм содержит ошибки, если можно указать допустимые ис­ходные данные, при которых либо будут получены неправильные результаты, либо результаты не будут получены вовсе. Использование алгоритмов, содержащих ошибки, приводит к созданию программ, также содержащих ошибки.

Алгоритм считается правильным, если он дает правильные резуль­таты для любых допустимых исходных данных. Правильность алго­ритмов решения прикладных задач и наличие в них ошибок можно проверять двумя основными способами.

Первый способ - проверка основных этапов построения алго­ритма:

задача ® постановка ® метод ® алгоритм

Второй способ - анализ результатов выполнения алгоритмов и их сравнение с выбранными методами решения и постановкой задачи:







Дата добавления: 2014-11-12; просмотров: 468. Нарушение авторских прав; Мы поможем в написании вашей работы!



Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Понятие о синдроме нарушения бронхиальной проходимости и его клинические проявления Синдром нарушения бронхиальной проходимости (бронхообструктивный синдром) – это патологическое состояние...

Опухоли яичников в детском и подростковом возрасте Опухоли яичников занимают первое место в структуре опухолей половой системы у девочек и встречаются в возрасте 10 – 16 лет и в период полового созревания...

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

Упражнение Джеффа. Это список вопросов или утверждений, отвечая на которые участник может раскрыть свой внутренний мир перед другими участниками и узнать о других участниках больше...

Влияние первой русской революции 1905-1907 гг. на Казахстан. Революция в России (1905-1907 гг.), дала первый толчок политическому пробуждению трудящихся Казахстана, развитию национально-освободительного рабочего движения против гнета. В Казахстане, находившемся далеко от политических центров Российской империи...

Виды сухожильных швов После выделения культи сухожилия и эвакуации гематомы приступают к восстановлению целостности сухожилия...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия