Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие 989

.pdf
Скачиваний:
3
Добавлен:
30.04.2022
Размер:
699.98 Кб
Скачать

program prin;

var x, x1, y1, y : real; begin

writeln (‘ введите x: ‘); readln (x);

y:= exp((-x + 1) * ln(3)) * sin (x); writeln (‘ при х=’,x:8:3, ‘ y=’, y:8:4);

writeln (‘ y11=’, trunc (y) : 4, ‘ y22=’, round (y) : 4); writeln (‘ введите координаты: x1, y1’);

readln (x1, y1);

writeln ((x1 >=0) and (y1 >=0) and (sqr(x) + sqr(y) <=1)); writeln (‘ ‘:10, ‘ программу составил Петров И.Н.’)

end.

Протокол работы программы:

введите х: - 1.5

при х = -1.500 y = -15.5494 y11 = -15 y22 = -16

введите координаты: x1, y1 0.5 1.2

false

программу составил Петров И.Н.

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

1. а) y = 2 x x 4| x| при х = 4.145

б) координаты исследуемой точки: (0.6; 0.8). Область изображена на рис. 2.

y

1

x

0

2

 

Рис. 2 2. а) y = 3ex sin x при х = 3.247

19

б) координаты исследуемой точки: (1.6; 0.6) Область изображена на рис. 3.

y

-2

x 0

-1

Рис. 3

3. а) y = 3| x2 1| sin x при х = 8.43109

б) координаты исследуемой точки: (0.4; 0.8) Область изображена на рис. 4.

 

 

 

y

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

-1

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-1

 

 

 

 

 

 

 

 

 

 

 

Рис. 4

4. а) y = xcosx sin3x

при х = 16.241

б) координаты исследуемой точки: (0.75; -0.5) Область изображена на рис. 5.

1 y

x

-1

1

-1

Рис. 5

5. а) y =tg2x | x | при х = -6.2312

б) координаты исследуемой точки: (0.3, 0.48) Область изображена на рис. 6.

20

y

1

1

0 x

-1

Рис. 6

11

6.а) y = sinx+ x x2 при х = -0.781

б) координаты исследуемой точки: (-0.4, -2.5). Область изображена на рис. 7.

y

-1 x

-1

Рис. 7

7. а) y = ch|x+1|+sin2 х при х = 5.324

б) координаты исследуемой точки: (0.6, -0.8). Область изображена на рис. 8.

y

1

1

-1

х

Рис. 8

8. а) y = arcsinx 31 x при х = 0.112

б) координаты исследуемой точки: (1.0, 0.713). Область изображена на рис. 9.

21

1 y

-1

1

x

-1

Рис. 9

9. а) y = sin (arctgx)+1 х2 при х = -0.7129;

б) координаты исследуемой точки: (-0.5, 0.9) Область изображена на рис. 10.

y

1

 

 

х

-1

0

1

 

Рис. 10

 

10. а) y = 5arctg(x2 1)при x = -2.1941

б) координаты исследуемой точки: (1.5, 0.021). Область изображена на рис. 11.

 

 

y

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

х

0

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

11. а) y = 3

 

cos2 x

Рис. 11

 

 

 

 

 

при х = -4.1231

sin x

б) координаты исследуемой точки: (-0.4, -0.91). Область изображена на рис. 12.

22

y

1

-1

0

 

 

 

 

-1

 

 

 

 

 

 

 

. 12

 

 

x 7

 

 

Рис

12. а) y = 4arctgx

 

 

 

при х = -0.4178

 

 

 

1 x2

 

 

 

 

 

б) координаты исследуемой точки: (-0.9, -0.6). Область изображена на рис. 13.

y

1

х

-1

1

 

-1

13. а) y = x3 2x

Рис. 13

 

|1 tgx |

при х = -0.61

б) координаты исследуемой точки: (-0.4, -0.51). Область изображена на рис. 14.

-1

y

1

 

x

-1

Рис. 14

14. а) y = esinx |cos6x | при х = 0.212

б) координаты исследуемой точки: (0.65, -0.7812).

23

Область изображена на рис. 15.

1 y

х

-1

1

-1

Рис. 15

3.СТРУКТУРНЫЕ ОПЕРАТОРЫ

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

3.1. Составной оператор

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

Формат оператора: begin

<оператор 1>;

. . . . . . . . . .

< оператор n> end;

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

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

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

24

Оператор IF может принимать одну из следующих форм: 1)IF <условие > THEN <оператор 1>

ELSE <оператор 2>; (альтернатива) ;

2) IF <условие > THEN <оператор>; (безальтернативная форма). Условие – это выражение логического типа, оно может быть простым или сложным; оператор 1, оператор 2 – любые операторы языка Паскаль, в том числе составные. При записи простых условий могут использоваться все возможные операции отношения. Сложные условия образуются с помощью логических операций AND, OR,

NOT.

Для условного оператора первого вида, если условие принимает значение TRUE, выполняется оператор 1, а оператор 2 игнорируется. Если же условие имеет значение FALSE, то оператор 1 игнорируется и выполняется оператор 2.

Для оператора второго вида при истинности условия выполняется оператор, стоящий после THEN, а в противном случае выполняется следующий оператор программы.

Поскольку любой из операторов 1 или 2 также может быть условным, а в то же время не каждый из условных операторов может иметь ветвь ELSE, то возникает неоднозначность трактовки условий. Поэтому по соглашению, принятому в ТП, часть ELSE всегда соответствует ближайшему к ней сверху оператору IF , не имеющему вет-

ви ELSE.

Конструкций со степенью вложенности более трёх из-за сложности их анализа и отладки следует избегать.

Контрольные вопросы и упражнения

1.Какие из приведенных ниже операторов являются неправильными и почему?

а) if a<b then a:=a * a else b:=b * b

б) if x and y then s:=s + 1; else s:=s – 1; в) if k <> m then k:=m;

г) if 5 then s:=s + 5;

д) 12: if (a < b) or c then c:= false; е) if (a – b) and p then p:=p + 10.5;

2.Если а = 0.5, b = -1.7, то какие значения будут иметь переменные a и b в результате выполнения условного оператора:

If a < b then a:=b else b:=a;

25

3.Какая задача решается при выполнении оператора: if x < y then max:= y else max:=x;

4.Задать с помощью условного оператора следующие действия: а) меньшее из двух значений переменных вещественного типа x

иy заменить нулем, а в случае их равенства – заменить нулями оба значения;

б) наибольшее из трех различных значений переменных целого типа x, y, z уменьшить на 2.

5.Поменять местами значения целых переменных a, b, c, чтобы оказалось a ≥ b ≥ c.

6.Булевской переменной b присвоить значение true, если значения переменных х и y равны, и значение false в противном случае.

7.Составить блок–схему и написать программу для вычисления функции:

 

 

 

 

 

 

 

 

 

3 x ln | x 1|

x 2

 

 

2

 

2

 

 

а) y =

 

tg

x

2 x 4

3x

 

 

 

 

 

 

 

 

x 4

 

asin(x 1) c

 

 

 

 

 

 

 

 

1 x2arctgx,

x 3

 

 

 

 

 

 

 

б) y =

1 xtg2

(x 1)

3 x 2

 

 

 

 

 

 

 

 

 

 

 

 

2 x 4

 

2cos(ln(x 2))

 

 

 

 

 

 

 

 

 

2cos

2

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

2

в) y =

a(1

tg

 

 

 

)

 

 

2

 

 

 

x

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

sin

 

 

 

(1 cx)

 

2

 

 

 

 

 

 

 

 

 

 

 

 

x π 4

π x π

42

xπ

 

 

 

 

x

1

| e2x

2

 

 

 

 

 

ln |

 

 

 

 

 

 

 

 

4 x 8

 

 

ax b

 

 

 

 

 

 

 

ax 7

 

 

 

 

 

 

 

 

 

г) y = 4arctgx

 

 

 

 

 

 

x 8

 

 

 

 

 

 

 

 

 

| b x |

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2ax 3 tg2x

x 0

 

x3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

lnx

2

 

 

 

 

 

 

x 0

 

3x

 

 

 

 

 

 

 

 

 

д) y =

 

 

 

 

 

 

 

 

 

 

 

 

 

0 x 3

tg(ax b) b | x |

 

 

3 arctg(2x 0.5)

x 3

 

cx

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

26

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2x

 

4x 1

 

 

 

 

 

 

 

 

 

 

 

 

a2bx cx4

 

 

 

 

е) y =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cd 3 x2

 

sin(

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.2 tg2(

x

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

x 1

 

 

 

 

ж) y =

2x4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ln(1 x2) a2cos2x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2x3

cos3x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

з) y =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x 1

ln(1 x2)

 

 

 

 

 

2

tg(ax b)

 

3a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cosx e p

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sin2x

 

 

 

 

 

 

 

 

 

 

 

 

и) y =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

(x 1) p

 

ln

 

 

e x2

3

 

 

 

 

x

1

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

к) y =

cos

 

 

(

 

 

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ln

3

(x 1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ln(1 0.2x 2 )

arctgx

л) y = 1 x2

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

arctg

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

x

k tg

 

 

(

 

)

 

 

 

 

2

 

 

 

 

 

x

 

1 ln(| cos(

)|)

 

м) y =

 

 

 

2

 

c sin2(x2 1)

x 0

3 x 0

x3

2 x 4

x4

x2

o x 1

1 x 3

x 3

o x 3

3 x 5

x 5

x 3

3 x 9

x 9

2 x 1

1 x 1.5

x2.5

x 3

3 x 4

x 5

27

 

ln( 3

 

x

 

1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

x sin 2x

 

 

н) y =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2 1

 

2x 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3 x4

 

 

 

2bc

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

о) y = ax 3

 

ln(1 x3)

 

bcos(x

 

 

 

1

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

| 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 x2

 

 

 

aln

 

|

 

 

 

 

 

 

 

 

 

 

clnx

п) y =

dsin2x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

x3 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x a

1 x 2

2 x 1

x2

3 x 5

1 x 3

x 1

0 x 1

1 x 4

4 x 5

3.3. Оператор выбора

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

Формат: CASE < выражение – селектор > OF

<список 1> : < оператор 1 > ;

<список 2> : < оператор 2 > ;

……………..…………………

<список N> : <оператор N >

ELSE < оператор > END;

При прочтении данного оператора ЭВМ вычисляет значение выражения – селектора, затем переходит к выполнению того оператора, которому предшествует константа выбора, равная значению селектора. Если ни одна из констант не равна текущему значению селектора, выполняется оператор, стоящий за ELSE. Если вновь ELSE отсутствует, то управление передаётся оператору, находящемуся за словом END, то есть первому оператору за границей блока CASE.

При использовании оператора выбора CASE должны выпол-

28