Линейный алгоритм

Автор работы: Пользователь скрыл имя, 28 Сентября 2013 в 11:48, практическая работа

Краткое описание

В таких алгоритмах делается выбор: выполнять или не выполнять какую-нибудь группу команд в зависимости от условия, т.е. выбирается один из нескольких возможных путей (вариантов) вычислительного процесса. Каждый подобный путь называется ветвью алгоритма.
Признаком разветвляющегося алгоритма является наличие операций условного перехода, когда происходит проверка истинности некоторого логического выражения (проверяемое условие) и в зависимости от истинности или ложности проверяемого условия для выполнения выбирается та или иная ветвь алгоритма.
В логических выражениях используется операция сравнения: < (меньше), > (больше), <= (меньше или равно), >= (больше или равно), = (равно), <> (не равно). Часто встречаются задачи, в которых используются не отдельные условия, а совокупность связанных между собой условий (отношений). Для связи используются and - и или or – или.

Прикрепленные файлы: 1 файл

Лабораторная работа №2.doc

— 100.50 Кб (Скачать документ)

 

  1. Теоретическое введение.

Разветвляющиеся  алгоритмы.

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

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

В логических выражениях используется операция сравнения: < (меньше), > (больше), <= (меньше или равно), >= (больше или  равно), = (равно), <> (не равно). Часто  встречаются задачи, в которых используются не отдельные условия, а совокупность связанных между собой условий (отношений). Для связи используются and - и или or – или.

Алгоритм предполагает выполнение «Действия 1», если записанное условие истинно (выполняется), и выполнение «Действия 2», если условие ложно (не выполняется) – это полная развилка.

If условие then Действие 1 else Действие 2

Рисунок 1. – Полное ветвление

 

Если в алгоритме отсутствует Действие 2, т.е. если записанное условие истинно, то выполняется Действие 1, а если условие ложно, то никаких действий не выполняется – это не полная развилка.

If условие then Действие 1

Рисунок 2. – Неполное ветвление

 

2. Техническое задание.

 

Составить алгоритм и программу  для решения задачи: Если максимальное значение из трех введенных чисел больше 50, то найти произведение чисел, иначе – уменьшить каждое число в 2 раза.

 

 

 

3.Анализ технического  задания.

 

Программа должна запрашивать три  числа. Пользователь вводит значения с  клавиатуры. Идёт сравнение этих чисел с числом 50, если хотя бы одно из чисел больше то считаем произведение, если же все числа меньше 50 идет уменьшение каждого числа в 2 раза. На экран выводится один из результатов.

4.Блок схема.

 

5.Модульная структура

 

Программы состоят из одного модуля – самой программы.

 

 

 

 

 

 

 

6. Спецификация  на программные модули

 

а) Имя модуля: Lab_1

б) Имя вызывающего модуля: нет

в) Входные данные: a,b,c типа real, размер 6 байт

г) Выходные данные: a,b,c типа real, размер 6 байт

д) Выполняемая функция: расчёт по формулам произведение:(a*b*c), уменьшение числа в 2 раза (a/2),(b/2),(c/2)

е) Особенности и ограничения: нет

 

 

 

 

7.Текст программы.

Program lab_1;

Uses crt;

Var a,c,b:real;

  Begin

    Clrscr;

    Write (‘a=’);

    Readln(a);

    Write (‘b=’);

    Readln(b);

    Write (‘c=’);

    Readln(c);

    If (a>50) or (b>50) or (c>50) then

       Begin

  Writeln(‘proizvedenie=’,a*b*c:5:2);

End

           Else

Begin

  Write(‘a=’,a/2:5:2);

  Write(‘b=’,и/2:5:2);

  Write(‘с=’,с/2:5:2);

End;

    Readln;

  End.

 

 

   8.Результаты тестирования.

Режим тестирования

               

Результат

Корректные  значения

1

20

-2

-20

100

-1.5

2.25

 

Программа

работает 

Некорректные  значения

a

b

c

d

e

й

.

!

Ошибка ввода

Граничные

значения

0

50

           

Программа

работает 


 

ВЫВОД: программа работает некорректно  в случае ввода символа вместо числового значения. Во всех остальных  случаях результаты соответствуют  действительности.

 

 

 

 

 

 

 

9.Вывод

 

В результате выполнения лабораторной работы освоены основные операторы и принципы построения разветвляющихся алгоритмов на языке Pascal

 




Информация о работе Линейный алгоритм