Лабораторная работа № 1 Условный оператор
Оценка 4.8

Лабораторная работа № 1 Условный оператор

Оценка 4.8
docx
27.11.2021
Лабораторная работа № 1  Условный оператор
Л2-002944.docx

 

Лабораторная работа 1

 

Условный оператор

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

 

Теоретический материал

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

Для представления алгоритмов используются несколько способов:

·    словесный (описание на естественном человеческом языке);

·    с помощью одного из алгоритмических языков программирования;

·    графический (на языке блок-схем);

·    с использованием диаграмм;

·    с использованием таблиц решений; и др.

Рассмотрим способ составления алгоритма на языке блок-схем.

Блок-схема – это графическая интерпретация алгоритма, представляющая набор геометрических фигур, каждая из которых изображает какую-либо опе- рацию или действие.


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

1.     Блок-схема строится сверху вниз.

2.     В любой блок-схеме имеется только один элемент, соответствующий началу алгоритма, и один элемент, соответствующий концу алгоритма.

3.     Должен быть ходя бы один путь их начала блок-схемы любому элементу.

4.     Должен быть хотя бы один путь от каждого элемента блок-схемы в конец блок-схемы.

Основные элементы, которые будут использованы при построении блок- схемы решения задачи представлены в табл. 1.1.

Таблица 1.1

Основные элементы для построения блок-схем

Символ

Описание символа

 

Процесс–формирование новых значений, выполне- ние арифметических или логических операций или действий, результаты которых запоминаются в опе- ративной памяти ЭВМ

 

Ветвление проверка условия:

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

 

Модификация организация циклических конст- рукций (начало цикла)

 

Предопределенный процесс – вычисление по под- программе, использование ранее созданных и от- дельно описанных алгоритмов

 

Начало-конец программы или вход и выход в подпрограммах.

 

Ввод–вывод данных – связь алгоритма с внешним миром. Вывод может осуществляться на бумагу, эк- ран монитора, на магнитный диск.

 

Комментарий пояснения, содержание подпро- грамм

 

Условный оператор if

Иногда требуется, чтобы часть программы выполнялась не всегда, а лишь при выполнении некоторого условия (а при невыполнении этого условия вы- полнялась другая часть программы). В этом случае пользуются оператором ус- ловного выполнения, который записывается в следующем виде:

if <условие> then <оператор1> else <оператор2>;


Под оператором понимается либо одиночный оператор (например, при- сваивания, вызова процедуры), либо так называемый составной оператор, со- стоящий из нескольких простых операторов, помещенных между словами begin и end. Важно заметить, что перед else не ставится точка с запятой. Часть else может и отсутствовать.

Пример выполнения лабораторной работы

В качестве примера рассмотрим составную функцию вида


ì x - 2

y =í1ï + x 2

îï x × ln cos( x )


x > 2.5

0 £ x £ 2.5

x < 0


Как видно из задания, функция вычисляется на трех диапазонах аргумента x по трем различным формулам. Составим блок-схему алгоритма решения дан- ной задачи (рис.1.1).

 

 

 

Автор, номер варианта, назначение программы

 

 

 

 

 

 

 

 

 

 

 


 

Рис. 1.1. Блок-схема вычисления значения составной функции

 

Теперь по данному алгоритму составим программу не наоборот) на языке Pascal.

Любую программу рекомендуется (но не обязательно) начинать с заголовка.

Program Lab1_varX;


Далее следует раздел описания переменных. В нашем примере понадобят- ся две переменные для хранения аргумента x и значения функции y. Так как и аргумент, и сама функция могут принимать дробные значения, то их необходи- мо описывать вещественным типом данных.

Var x,y: real;

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

Begin

writeln;

writeln(’           Автор Иванов И.П., студент гр. ИСЭд-11’); writeln(’           Вариант 100’);

writeln(’Программа вводит значение аргумента X и вычисляет зна- чение функции Y’);

 

writeln(’

|2*x

x>2.5’);

writeln(’Y=

|x^3-x

0<=x<=2.5’);

writeln(’

|x*(sin(x))

x<0’);

writeln;

 

 

writeln(’введите x= ’); readln(x);

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

После того, как значение X введено оператором ввода readln(x), нужно определить, по какой формуле должна вычисляться функция. Для этого в алго- ритме предусмотрены проверки значения аргумента.

If x>2.5 then Y:=2*x

Else

If x>=0 then y:=x*x*x-x Else                 Y:=x* sin(x);

Как видно, в данном фрагменте программы признак конца оператора (точка с запятой) ставится только один раз в самом конце, т. к. условный оператор за- канчивается именно на последней строке, перед Else точку с запятой не ставят.

В конце программы нужно вывести результаты вычислений и завершить тело программы служебным словом end с точкой.

writeln(’Y= ’, y:7:3); readln

end.


Последний оператор вывода отличается от всех предыдущих. В данном случае стандартная процедура вывода writeln содержит два параметра, пере- численных через запятую. Первый параметр – это текстовая строка (’Y= ’), ко- торую надо вывести на экран. Второй параметр – переменная Y, значение кото- рой требуется вывести в определенном формате, о чем говорят два числа, напи- санные через двоеточие. Первое число количество позиций, отводимых под вывод всего числа (включая знак, целую часть числа, точку и дробную часть числа), а второе – число разрядов после запятой. В нашем случае под вы- вод всего числа запланировано 7 позиций, из них 3 позиции – под дробную часть, одна позиция – под точку, остается 3 позиции под целую часть и знак. Следует заметить, что если программист указал недостаточное количество по- зиций под вывод всего числа, то это число будет автоматически увеличено до требуемого для вывода значения.

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

Итак, программа написана, ниже приведен ее полный текст.

 

Program Lab1_variant100; Var x,y: real;

Begin

writeln;

writeln(’           Автор Иванов И.П., студент гр. ИСЭд-11’); writeln(’           Вариант 100’);

writeln(’Программа вводит значение аргумента X и вычисляет зна- чение функции Y’);

 

writeln(’

|2*x

x>2.5’);

writeln(’Y=

|x^3-x

0<=x<=2.5’);

writeln(’

|x*(sin(x)))

x<0’);

writeln;

 

 

writeln(’введите x= ’); readln(x);

If x>2.5 then Y:=2*x

Else

If x>=0 then y:=x*x*x-x

Else

Y:=x*sin(x); writeln(’Y= ’, y:7:3); readln

end.


Таблица 1.2

Варианты заданий

 

вар.

 

Функция

вар.

 

Функция

1.

ì x - 2

y = ï + x 2

í1

ï x ln cos( x )

î

x > 2.5

0 x 2.5

x < 0

2.

ì

ïsin (2.3 x - 1)

ï

y = í1 - 3 ln 1 - x

ï              x 2

ï

î 2 - x

 

x > 2.5

0 <= x <= 2.5

 

x < 0

3.

ì (tg (x 2 - 1))

ï

y = í- 2x

ï cos( x)

îe

x > 1

0 ≤ x 1

x < 0

4.

ìx2 - 3 + 2.5x2

ï

y = ï x + 5 + cos(0.001x)

íe

ïx2

î

x>12.5

0 £ x £12.5 x < 0

5.

ì1+             cos(x)

ï

y = íx +1

ï       2

ïî1- x

x >1

-0.5 x 1

x < -0.5

6.

ì2.5× x3 + 6 × x2 - 30

y = ï +1

íx

ïx

î

x > 1.5

0 £ x £ 1.5

x < 0

7.

ì1 + x

ï              - x

y = í e

ïcos (x )

î

x > 14.5

3 x ≤ 14 .5

x <3

8.

ìln | 1 + x |

y = ï - x

íe

ïcos(x)

î

x > 3.8

2.8 £ x £ 3.8 x < 2.8

9.

ì1 +                cos (x )

ï

y = í x + 1

ï1 - x 2

î

x > 4

0 x 4

x < 0

10.

ì

ï e - ( x + 8 )

y = ï

í1

ï x

ï

î 5

 

x > 3.61

0 £ x £ 3.61

x < 0

11.

ì x

y = ï2 x 2        cos( 2 x )

í

ï -cos( 3 x )

îe

x > 1.5

0 x 1.5

x < 0

12.

ì1 -               cos( 2 x )

ï

y = í x 2 - x

ï1 + x 2

î

x > 2.5

1 £ x £ 2.5

x < 1


Окончание                                                                                           таблицы 1.2

13.

ì2x

y = ï - ln1 - x 2

í1

ï - x

îe

x > 4.5

0 ≤ x ≤ 4.5

x < 0

14.

ì ln(x2 -1)

ï

y = í- 2x3

ïesin( x)

î

x > 2

0 £ x £ 2

x < 0

15.

ì - 2x3

ï1            1 - x 2

ï

y = í cos(2x - 1)

ï -cos(2 x)

ïe

ïî

x > 3.5

 

0 £ x £3.5 x < 0

16.

ìx +1

y = ï - x5

í1

ïx + ln sin( x)

î

x > 2.5

0 £ x £ 2.5

x < 0

17.

ìx - 2

y = ï + x 2

í1

ïx ln cos(x)

î

x > 2.5

0 £ x £ 2.5

x < 0

18.

ì1+ 3x

ï -2 x

y = íe

ïcos(2x)

î

x > 4.5

1 £ x £4.5 x < 1

19.

ì             tg ( x 2 - 1)

ï

y = ï- 2 x

í

ïe cos( x )

î

x > 4

0 £ x £ 4

x < 0

20.

ì

ï e ( x + 2 )

y = ï1 - 2 x

í

ï                2 x 3 - 3

ï -

î                      5

x > 1

-1£ x £ 1 x < -1

21.

ì1 - x 3

y = ï- 2 x

í

ï e cos( x )

î

x > 2

0 £ x £ 2

x < 0

22.

ì1 +               tg ( x) - 1

ï

y = í x

ï1 + x 2

î

x < -3.14

-3.14£x £3.14 x>3 14

23.

ì                  1

ï ln( x 3 )

ï

y = ï 2 x + 0 . 1

í

ï 3

ï

ïî

 

x > 4.5

0 £ x £ 4.5

x < 0

24.

ìx2 - 3 + 2.5x3

y = ï ( x) + 5 + cos(0.001x)

íe

ï

îln tg(2x) -1

x > 2

-1£ x £ 2 x < -1

25.

ì

ïcos( 2 .3 x - 1)

Y = ï - 3 ln( 1 + x )

í1

ï x 2

ï                    

î 2 - x

 

x > 5.5

0 £x £ 5.5

x < 0

 

 


 

Лабораторная работа № 1

Лабораторная работа № 1

Правила построения алгоритмов на языке блок-схем 1

Правила построения алгоритмов на языке блок-схем 1

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

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

Далее следует раздел описания переменных

Далее следует раздел описания переменных

Последний оператор вывода отличается от всех предыдущих

Последний оператор вывода отличается от всех предыдущих

Таблица 1.2 Варианты заданий № вар

Таблица 1.2 Варианты заданий № вар

Окончание таблицы 1

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