Методичка по информатике, часть 2
.pdfФедеральное агентство по образованию Государственное образовательное учреждение высшего профессионального образования
«Омский государственный технический университет»
АЛГОРИТМИЗАЦИЯ И ПРОГРАММИРОВАНИЕ
Turbo Pascal 7.0
Методические указания к лабораторным работам
Омск 2005
Составитель Ольга Павловна Шафеева, канд.техн.наук, доцент
Рассмотрены основы алгоритмизации решения задач и программирования на языке Паскаль. Приводятся примеры разработки алгоритмов и программ для задач разного уровня сложности. Содержатся структурные схемы проектируемых алгоритмов.
Предназначены для выполнения студентами лабораторных работ по курсам "Основы алгоритмизации и программирования", "Программирование на языке высокого уровня".
Печатается по решению редакционно-издательского совета Омского государственного технического университета.
Редактор Т.А. Жирнова Свод. темплан 2005 г.
И Д №06039 от 12.10.01
Подписано в печать 10.02.05. Бумага офсетная. Формат 64 ×84 1/16. Отпечатано на дупликаторе. Усл. печ. л. 3,75. Уч. - изд.л. 3,75.
Тираж . Заказ . Издательство ОмГТУ. 644050, Омск, пр. Мира 11
Типография ОмГТУ
2
Лабораторная работа 1
Основы программирования в среде Турбо Паскаля. Оператор присваивания, процедуры ввода – вывода
Оператор присваивания имеет вид <идентификатор>:= <выражение>; В арифметических выражениях могут использоваться следующие
математические функции и соотношения: |
|
|
|
|
|
SIN(X) – |
sin X; |
COS(X) |
– |
cos X; |
|
EXP(X) – |
ех; |
LN(X) |
– |
Ln X; |
|
SQR(X) – х2; |
SQRT(X) |
|
|
; |
|
– |
х |
|
ABS(X) – абсолютная величина X (|Х|); |
ARCTAN(X) |
– arctan X; |
||||||||
|
ах программируется как EXP(x*LN(a)); |
lgX – как LN(X)/LN(10). |
|||||||||
|
TRUNC(X) – выделение целой части числа; |
|
|
|
|
|
|||||
|
Pi=3.1415926535897932385; |
|
|
|
|
|
|
|
|||
|
ROUND(X) – округление Х до ближайшего целого. |
|
|
|
|
||||||
|
|
|
|
Приоритет операций в выражении |
|
|
|||||
|
|
|
|
|
|
|
|
|
|||
|
№ |
Арифметические |
Логические |
|
Отношения |
|
Другие |
|
|||
|
п/п |
|
|
|
|
|
|
|
|
|
|
|
1 |
|
|
NOT |
|
|
|
|
@ адресное |
|
|
|
2 |
*, /, div, mod |
аnd,shl,shr, |
|
|
|
|
преобразование |
|
||
|
3 |
+,– |
|
оr, xor |
|
|
|
|
|
|
|
|
4 |
|
|
|
|
<=,>=,<>,<,>,= |
|
in |
|
||
|
|
Для реализации лабораторных работ необходима среда Borland Pascal |
|||||||||
версии 7.0. Ее запуск производится через файл bp.exe |
(BP7\BIN\bp.exe). |
||||||||||
|
Пример 1. Вычислить площадь прямоугольника по размерам его сторон А и В. |
||||||||||
Обозначим площадь переменной S, тогда необходимо найти S=A*B. |
|
|
|||||||||
|
Программа набирается в окне редактора и компилируется [F9]: |
|
|
||||||||
Program RECT; |
{заголовок программы с именем RECT} |
|
|
||||||||
const |
|
{блок описания констант} |
|
|
|
|
|
||||
|
A=2; B=3; |
|
|
|
|
{определение констант А и В} |
|||||
var |
|
{блок описания переменных} |
|
|
|
|
|
||||
|
S:integer; |
|
|
{определение переменной S целым типом} |
|||||||
begin |
|
{начало основного блока программы} |
|
|
|||||||
|
S:=A*B; |
|
|
|
|
|
{оператор присваивания} |
||||
|
write('Площадь прямоугольника = ',S); |
|
|
{процедура вывода} |
|||||||
end. |
|
{конец основного блока} |
|
|
|
|
|
В результате выполнения программы (Ctrl+F9) на экран выводится сообщение:
Площадь прямоугольника = 6.
Пример 2. Найти площадь равностороннего треугольника. Если стороны треугольника имеют размер А, то его площадь S = A2 sin(π/3)/2. Схема алгоритма (СА) реализации этой задачи (рис.1) выполнена по ГОСТ 19.701-90 (прил.1).
3
Текст программы
Program TREUG; var
A, S: real;
begin
writeln('Введите A'); {процедура вывода текста}
read(A); |
{процедура ввода} |
|
S: = SQR (A)*sin(PI/3)/2; |
|
|
writeln ('Результат: S=', S: 6: 2,' |
для A=', A); |
|
readln; |
{Задержка до нажатия клавиши <ENTER>} |
end.
После выполнения программы на экран выводится сообщение:
Результат: S = 10.83 для А = 5. Предварительно рассчитанный на калькуляторе
результат для А = 5 при подготовке к лабораторной работе составил S = 10.8253, что подтверждает верность программы.
Задание 1 (программа 1_1)
Начало
Ввод
А
|
|
|
|
|
|
S = |
А 2 |
sin |
π |
|
|
2 |
|
|
|
||
|
|
3 |
|
||
|
|
|
|
|
|
Вывод
S
Конец
Рис.1
№ |
x1 |
x2 |
a |
b |
c |
|
|
|
|
Вычислить |
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
1 |
2 |
3 |
4 |
5 |
6 |
|
|
|
|
|
|
|
|
|
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
w = ae − |
|
|
|
|
cos( bx ) + c 5 |
|||||||||||||||||||||||||
1 |
1 |
2 |
1.5 |
2 |
–0.7 |
|
|
x |
||||||||||||||||||||||||||||
2 |
1 |
2 |
0.7 |
– |
2.1 |
y = |
|
|
|
|
sin x |
|
|
|
− c ln ax |
|||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
1+ |
а2 sin 2 x |
|||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
0 |
1.5 |
2 |
1.2 |
1 |
z = |
|
|
a + b − e sin x |
+ c |
||||||||||||||||||||||||||
4 |
1 |
2 |
4.1 |
–2.3 |
– |
w = |
|
|
x 3 + a 2 |
cos |
2 x |
|
||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
|
x + |
a + b sin |
|
|
3 x |
|||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||
|
|
|
|
|
|
y = bx2eax 2 |
+ a |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||
5 |
–1 |
1 |
0.5 |
2 |
1.5 |
|
|
|
х + 1.5 |
|||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
= e − aх |
|
х + 4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
6 |
2 |
4 |
0.5 |
1.3 |
– |
z |
|
|
|
|
х + a |
|||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
х − |
|
|
|
|
х − b |
|||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||
7 |
0 |
2 |
0.5 |
1 |
– |
w = e −a2 |
|
|
|
|
|
|
+ e −bx 3 |
|
|
|
|
|
|
|
|
|
||||||||||||||
|
x + 1 |
x + 1 |
||||||||||||||||||||||||||||||||||
8 |
–1 |
1 |
2.7 |
1.7 |
– |
y = a2 /(x + 2)e−bx2 |
+ ln(a + bx) |
|||||||||||||||||||||||||||||
9 |
0 |
π/2 |
2 |
0.7 |
0.5 |
z = a3 cos(bxsin2 х) + 3 |
|
|
|
|
||||||||||||||||||||||||||
c |
||||||||||||||||||||||||||||||||||||
10 |
1 |
0 |
0.5 |
2.9 |
1.5 |
w = |
|
|
ax + 2 − x cos( bx ) |
|
||||||||||||||||||||||||||
|
bx |
− e − x sin( bx ) + c |
||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||
|
|
|
|
|
|
4 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
2 |
3 |
4 |
5 |
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
y = e−ax 3 |
|
|
|
|
|
|
|
|
|
|
|
|
n2x |
|
|
|
|||||||||||||||||||||||||||
11 |
1 |
2 |
1.5 |
–1.2 |
– |
|
ax + bsi |
|
|
|
||||||||||||||||||||||||||||||||||||||||
12 |
1 |
2 |
0.5 |
1.7 |
2 |
z = e −bx sin(сx + b) − |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||
|
|
|
bx + a |
|||||||||||||||||||||||||||||||||||||||||||||||
13 |
–1 |
1 |
0.5 |
1.2 |
– |
w = 2−x arctg(x + a) − 3−bx cos(x + b) |
||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
y = |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ e − 2 x ( x + b) |
|
|
|
|||||||||||||||||||||||
14 |
1 |
2 |
0.5 |
3.1 |
– |
|
|
|
ax sin 2 x |
|
|
|
|
|
||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
15 |
1 |
2 |
0.5 |
3.2 |
– |
z = e2x ln(a + x) − b3x lg(b − x) |
|
|
|
|||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
− |
|
|
|
|
|
− |
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||
16 |
0 |
1 |
1 |
2 |
4 |
w |
= |
|
|
|
|
|
|
|
x |
|
|
|
|
a |
|
|
|
|
|
|
|
x |
|
|
|
|
|
|
||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
a + |
|
|
|
|
|
|
|
|
x 2 |
|
|
|
+ |
|
|
|
|
|
x 2 |
|
|
|
|
||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
b |
|
|
|
|
|
|
|
c |
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
17 |
0 |
1 |
1 |
3 |
– |
y |
= |
|
|
|
|
|
|
b |
+ |
|
e |
|
x |
|
− 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||
a |
+ |
|
x 2 |
|
x |
− |
tg x |
|
|
|
|
|
|
|
||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||
18 |
–1 |
2 |
1 |
2 |
– |
|
z = |
|
|
a |
+ |
|
|
|
|
cos |
( x |
− |
b ) |
|
|
|
|
|||||||||||||||||||||||||||
|
|
|
x |
4 |
/ |
|
2 |
+ |
sin |
2 |
|
x |
|
|
|
|||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
c |
|
|
|
||||||||
19 |
1 |
2 |
2 |
3 |
1 |
w = |
|
ln |
|
(b − |
|
x |
|
)(x − |
|
|
|
|
|
|
) |
|||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||||||||||||||||||||||||||||||||||
|
|
|
|
a |
+ x2 / 4 |
|||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||||||||||||
20 |
–1 |
1 |
2 |
π/6 |
0,5 |
|
y = |
a cos( x − b ) |
|
+ 2 x |
|
|
|
|||||||||||||||||||||||||||||||||||||
|
|
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
c + sin |
2 |
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Задание 2 (программа 1_2)
1.Идет k секунда суток. Определить, сколько целых часов (h) и целых минут
(m)и секунд (s) прошло к этому моменту.
2.Определить площадь трапеции с основаниями а, b, высотой h и объем
усеченного конуса, если считать а, b – площадями оснований.
3.Определить координаты центра тяжести трех материальных точек с массами m1,m2,m3 и координатами (x1,y1), (x2,y2), (x3,y3).
4.Вычислить по заданному радиусу R объем шара и площадь круга, найти соотношение между ними.
5.Вычислить медианы треугольника по заданным сторонам a, b, c.
6.Вычислить площадь поверхности и объем конуса по заданным радиусам и высоте h.
7.По заданному радиусу R найти объем шара и площадь его поверхности.
8.Вычислить, какая идет секунда суток при положении стрелок в h часов, m минут и s секунд, а также угол (в градусах) между положением часовой стрелки в начале суток и ее положением в указанный момент.
9.Ввести двузначное целое число х<15. Написать программу перевода его в восьмеричную систему счисления.
10.Ввести координаты двух точек (х1, y1), (x2,y2). Найти расстояние между
ними.
5
Лабораторная работа 2
Программирование разветвленных алгоритмов. Операторы передачи управления
Структура условного оператора передачи управления:
IF <условие> THEN <оператор 1> ELSE <оператор 2>;
(Если) (то) (иначе) – ключевые слова, где <условие> – это произвольное выражение логического типа, которое может принимать два значения: истина (TRUE) и ложь (FALSE);
<оператор> – любой оператор языка Паскаль. Сокращенная форма условного оператора:
IF <условие> THEN <оператор>;
Оператор безусловной передачи управления GOTO <метка> позволяет перейти к строке с идентификатором <метка>. В языке Турбо Паскаль допускается использовать в качестве меток также целые числа без знака [0 .. 9999].
Метка от оператора отделяется в программе двоеточием (':').
Все использованные в программе метки должны быть описаны в разделе описаний программы с указанием ключевого слова 'LABEL'.
Оператор выбора CASE позволяет в зависимости от значения какой-либо переменной или выражения <ключа_выбора> выполнить те или иные операторы, помеченные соответствующими константами.
Структура оператора:
CASE <ключ_выбора> OF
<конст.выбора1>:<оператор1>; <конст.выбора2>:<оператор2>;
. . .
<конст.выбораN>:<операторN>
ELSE <оператор>
END;
где <ключ выбора> – выражение (переменная) любого порядкового типа; <конст.выбора> – константа того же типа, что и <ключ.выбора>; <оператор> – произвольный оператор ТП.
Пример. Составить программу для начисления зарплаты согласно следующему правилу: если стаж работы сотрудника менее пяти лет, то зарплата равна 50$, при стаже работы от пяти до 15 лет – 100$, свыше 15 лет зарплата повышается с каждым годом на 10$, причем при стаже превышающем 30 лет она составляет 300$. Для программирования решения этой задачи определим математическую формулировку задачи:
|
50, |
если ST < 5; |
ZP= |
100, |
если 5 ≤ST ≤ 15; |
|
100+ (ST –15)*10, |
если 15 < ST≤ 30; |
|
300, |
если ST > 30; |
где ZP |
– зарплата, ST – стаж работы. Далее построим СА (рис.2,а), ей соот- |
ветствует следующая программа:
6
Program zarplata; |
|
|
var ST: byte; |
{ST – |
стаж (байтовый (целый) тип)} |
ZP: real; |
{ZP – |
зарплата (вещественный тип)} |
begin |
|
|
writeln ('введите стаж'); |
|
|
read(ST); |
{ввод стажа} |
|
if ST<5 then ZP:=50 |
{условный оператор} |
else if ST<15 then ZP:=100 {вложенный условный оператор} else if ST>=30 then ZP:=300
else ZP:=100+(ST–15)*10;
writeln ('зарплата=',ZP:10:2,' $');
end.
Начало |
|
|
Ввод |
|
|
стажа |
|
|
ST<5 |
Да |
ZP=50 |
|
|
|
Нет |
|
|
ST<=15 |
Да |
ZP=100 |
Нет |
|
|
ST>=30 |
Да |
ZP=300 |
Нет
ZP=100+(ST-15)*10
Вывод
ZP
Конец
а)
Рис.2
Начало
Ввод стажа ST
ST
1..4 ZP=50
5..15 ZP=100
16..29
ZP=100+(ST15)*10
ZP=300
Вывод
ZP
Конец
б)
Второй вариант реализации задачи с применением оператора выбора представлен СА (рис.2,б) и следующей программой:
Program zarplata2; |
|
|
var |
ST: byte; |
{стаж (байтовый) тип)} |
|
ZP: real; |
{зарплата (вещественный тип)} |
begin |
|
|
writeln('введите стаж'); |
|
7
read(ST); |
{ввод стажа} |
case ST of |
{выбор из } |
1..4: |
ZP:=50; |
5..15: ZP:=100; |
|
16..29: ZP:=100+(ST–15)*10; |
|
else ZP:=300 |
|
end; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
writeln('зарплата=',ZP:10:2,' $'); |
|
|
|
{вывод результата} |
||||||||||||||
end. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Задание 1 (программа 2_1) |
|
|||||||||||||||
|
Вычислить значение функции в зависимости от интервала, в который попадает |
||||||||||||||||||
вводимый с клавиатуры аргумент: |
|
|
|
|
|
|
|
|
|
|
|||||||||
1. |
Для t [0,3], |
|
|
|
at2lnt |
при 1 ≤ t ≤ 2 , |
|||||||||||||
где a=-0.5,b=2 |
z= |
1 |
|
|
|
|
|
|
|
|
|
|
|
при t<1, |
|||||
|
|
|
|
|
|
eatcosbt |
при t>2, |
||||||||||||
2. |
Для x |
[0,4], |
|
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
при x>2, |
|
|
x + a |
|
|
|
|
|
|
|
|
||||||||||
где а=2.3 |
|
f= |
х |
|
|
|
|
|
|
|
|
при 0.3< x £ 2, |
|||||||
|
|
|
|
cos(x-a) |
при x £ 0.3 , |
||||||||||||||
3. |
Для x |
[0,7], |
|
(a+b)/(ex+cosx) |
при 0 £ x<2.3, |
||||||||||||||
где a=-2.7,b=-0.27 |
z= |
(a+b)/(x+1) |
при 2.3£ x<5, |
||||||||||||||||
|
|
|
|
ex+sinx |
|
|
|
|
|
|
|
|
при |
7 ³ x ³ 5 , |
|||||
4. |
Для i [7,12], |
|
ai4+bi |
|
|
|
|
|
|
|
|
при I< 10, |
|||||||
где a=2.2,b=0.3. |
y= |
tg(i+0.5) |
при I= 10, |
||||||||||||||||
|
|
|
|
e2i+ |
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
a 2 |
+ i 2 |
при I>10, |
|||||||||||||
5. |
Для x [0.9,5], |
|
π x2-7/x2 |
при |
x<1.3, |
||||||||||||||
где a=1.5 |
|
y= |
ax3+7 |
|
|
|
|
|
|
|
при 1.3 £ x<3, |
||||||||
|
x |
||||||||||||||||||
|
|
|
|
lg(x+7 |
|
|
|
) |
|
|
|
при x ³ 3 , |
|||||||
|
|
|
|
|
x |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|||||||||
6. |
Для t [-1.4], |
|
|
|
at 2 + b sin t + 1 |
при t<0.1, |
|||||||||||||
где a=2.1,b=0.37. |
z= |
at+b |
|
|
|
|
|
|
|
|
при 0.1£ t< 2, |
||||||||
|
|
|
|
|
|
|
|
|
|
при t ³ 2 , |
|||||||||
|
|
|
|
|
|
at 2 + b cos t + 1 |
|||||||||||||
7. |
Для x |
[0,6], |
|
a esinx+2.5 |
при x<0.3, |
||||||||||||||
где a=1.5. |
y = |
ecosx+a |
|
|
|
|
|
|
|
|
при 0.3£ x<4, |
||||||||
|
|
|
|
(sin x)/(a+ex) |
при x ³ 4, |
||||||||||||||
8. |
Для x |
[1,2], |
|
a/x+bx2-c |
при x £ 1.2 , |
||||||||||||||
где a=1.8,b=-0.5, c=3.5 |
y= |
(a+bx)/ |
|
|
|
при x>1.2, |
|||||||||||||
|
x + 1 |
8
9. Для t [1,5], где a=2.5
10.Для x [0,4], где a=1,b=3.
11.Для t [0.5,3], где a=1.3,b=6.5
12. |
Для x |
[0,2], |
где b=-2.9 |
||
. |
|
|
13. |
Для x |
[0.5,2] |
где a=-0.8 |
||
14. |
Для x |
[1,2], |
где |
b=1.3. |
|
15. |
Для x [-1,1], |
где a=2.5,b=-0.9.
|
t 3 |
t − a |
|
|
|
при t>a, |
|||
z= |
t sin at |
при t=a, |
|||||||
|
e-at cos at |
при t<a, |
|||||||
|
e-bx sin bx |
при x<2.3, |
|||||||
y= |
сos bx |
при 2.3 ≤ x < 3 , |
|||||||
|
e-ax cos bx |
при x ³ 3, |
|||||||
|
at2-b |
|
|
|
|
при t<a, |
|||
|
t + 1 |
||||||||
z= |
a-b |
при a £ t £ b, |
|||||||
|
a t2/3- 3 |
|
|
при |
t>b, |
||||
|
t + 1 |
||||||||
|
|e-2x sin bx| |
при |
x >1, |
||||||
y = |
cos bx |
при |
x = 1, |
||||||
|
e-x cos bx |
при |
x < 1, |
||||||
|
sin (cos ax) |
при |
x >1, |
||||||
z = |
tg ax |
при |
x = 1, |
||||||
|
a2 x |
при |
x < 1, |
||||||
|
ln bx - 1/(bx+1) |
при x < 1.3, |
|||||||
y = |
bx + 1 |
при 1.3 ³ x ³ 1.7, |
|||||||
|
ln bx +1/(bx+1) |
при x > 1.7, |
|||||||
|
ax2+bx2/3 |
при x<0.1, |
|||||||
z= |
a x2 |
при x=0.1, |
|||||||
|
b x2/3 |
при x>0.1. |
16.Ввести координаты точки (x, y). Напечатать, в каком квадранте или на какой оси координат находится эта точка.
17.Ввести радиусы R1, R2 и высоту. Вычислить объем усеченного конуса:
h(S1 + S1S2 + S2 ) / 3 , где S – площадь оснований. Если R1 = R2 – объем и площадь
цилиндра, если R1 = 0 или R2 = 0 – объем (hπr2) и площадь πr( r 2 + h 2 ) поверхности конуса.
18.Ввести с клавиатуры цифру. Определить, какой системе счисления она может принадлежать.
19.Ввести число. Определить, делится ли оно нацело на два, три или на пять.
20.Ввести a, b, h. Если h=0, вычислить площадь прямоугольника; при a= b, найти площадь квадрата; в противном случае подсчитать площадь трапеции.
Задание 2 (программа 2_2)
1. Определить остаток от деления на восемь введенного числа х и написать восьмеричную цифру прописью.
9
2.По цифре (0..9), введенной с клавиатуры, напечатать название этой цифры.
3.С клавиатуры ввести число k (1..30). Определить, какому дню недели оно
соответствует, если первое число – понедельник.
4.Ввести число и номер месяца. Напечатать дату с названием месяца прописью.
5.Идет k секунда суток. Вычислить, сколько прошло часов и полных минут к этому моменту, при этом согласовать со значением слова (час, часа, часов, минута, минуты, минут).
6.В зависимости от номера (N) типа фигуры, организовать ввод необходимых дан-
ных и вычислить при N = 1 – площадь круга, N = 2 – объем шара (4/3πR3), N=3 – объем цилиндра, N = 4 – площадь поверхности сферы 4πr2.
7.Ввести число N (0 ≤ N ≤ 15). Определить и напечатать шестнадцатеричную цифру, ему соответствующую.
8.Для целого числа R (1…99) напечатать фразу « Мне R лет », при некоторых значениях R слово «лет» заменить словом «год» или «года».
9.В зависимости от номера (N) типа фигуры, организовать ввод необходимых дан-
ных и вычислить при к = 1 – площадь прямоугольника, при к = 2 – площадь параллелограмма, при к = 3 – площадь трапеции 1/2(a+b)h. В последнем случае напечатать: является ли трапеция параллелограммом или ромбом.
10. Перевести введенное число 0 ≤ х ≤ 31 в шестнадцатеричную систему счисления.
Лабораторная работа 3
Программирование циклических алгоритмов с заданным числом повторений
Первая форма счетного оператора цикла позволяет наращивать параметр цикла на единицу (+1):
FOR <параметр цикла>:= <min значение> TO <max значение> DO <оператор>; (Для) (увеличивая к) (выполнять)
где <параметр цикла> – это переменная целого либо любого порядкового типа; <min, max значения> – это начальное и конечное значения параметра цикла (выражения того же типа, что и параметр цикла).
Вторая форма позволяет уменьшать значение параметра цикла на единицу (-1):
FOR <параметр цикла>:= <max знач.> DOWNTO <min знач.> DO <оператор>;
(Для) |
(уменьшая к) |
(делать) |
Пример 1. |
Вычислить сумму элементов s=1+1/4+1/9+1/16+... . |
На основе анализа изменения параметра знаменателя определим алгоритм решения задачи (pис. 3) и напишем программу:
PROGRAM suma;
VAR s, r: REAL;
i, N: INTEGER;
BEGIN
s:=0; WRITELN('введите N');
10