- •Лабораторный практикум
- •Лабораторный практикум
- •Содержание
- •Введение
- •61002, Харків, вул. Фрунзе, 21.
- •61002, Харків, вул. Фрунзе, 21.
- •Порядок выполнения работы
- •Теоретические сведения
- •Пример решения задачи
- •Индивидуальные задания
- •Порядок выполнения работы
- •Теоретические сведения
- •Пример решения задачи
- •Индивидуальные задания
- •Порядок выполнения работы
- •Теоретические сведения
- •Пример решения задачи
- •Индивидуальные задания
- •Порядок выполнения работы
- •Теоретические сведения
- •Пример решения задачи
- •Примеры решения задач
- •Индивидуальные задания
- •Порядок выполнения работы
- •Теоретические сведения
- •Пример решения задачи
- •Примеры решения задач
- •Индивидуальные задания
- •Константы цвета
- •Порядок выполнения работы
- •Теоретические сведения
- •Пример решения задачи
- •Примеры решения задач
- •Индивидуальные задания
- •Порядок выполнения работы
- •Теоретические сведения
- •Пример решения задачи
- •Текст программы
- •Примеры решения задач
- •Индивидуальные задания
- •Порядок выполнения работы
- •Теоретические сведения
- •Пример решения задачи
- •Текст программы
- •Примеры решения задач
- •Индивидуальные задания
Пример решения задачи
Индивидуальное задание
Вычислить значение функции F(X) = COS(X+1) TGX / (LN X+2,5), где X - любое число из интервала [0..1], вводимое с клавиатуры в диалоговом режиме. Определить принадлежность отрезку [3..9].
Описание работы
1. Выберите алгоритм решения задачи.
2. Используя таблицы 1.1 и 1.2, выберите стандартные функции, необходимые для решения задачи. Если стандартных функций не существует, получите требуемую функцию, используя математические преобразования.
3. Выберите форму представления данных. Используйте следующие типы переменных: INTEGER, REAL, BOOLEAN, CHAR.
4. Для ввода данных используйте диалоговый режим. Результат решения задачи выведите на экран дисплея. При составлении текста программы используйте оператор присваивания, оператор ввода, оператор вывода. Введите текст программы.
5. Для этого необходимо войти в программу-оболочку TP7, как указано выше. Загрузить в редактор Турбо Паскаля новый (NEW) файл. Для этого нажмите одновременно клавиши [ALT]+[F] , установите курсор на подменю «NEW» и нажмите клавишу [ENTER].
6. Сохраните набранный текст программы. Нажмите клавишу [F2]. На запрос системы укажите, где и с каким именем будет сохранена ваша программа. Например, C:\Lr1.PAS, если программа сохраняется на жесткий диск или A:\ Lr1.PAS, если программа сохраняется на дискету.
7. После того, как программа набрана, откомпилируйте ее. Нажмите одновременно клавиши [ALT]+[F9]. Если в программе есть ошибки, то в левом верхнем углу появится сообщение об ошибке, а курсор укажет место ошибки. Если в программе ошибок нет, то появится сообщение об успешной компиляции.
8. После компиляции программу необходимо выполнить. Для этого нажмите одновременно клавиши [CTRL]+[F9]. Для просмотра результатов одновременно нажмите клавиши [ALT]+[F5].
9. Убедитесь в правильности решения задачи. Введите данные, для которых легко устно просчитать результат. Выполните программу и убедитесь в правильности полученного результата.
10. Выведите полученные результаты на печать.
Текст программы
program Lr1;
uses crt;
var
x,y: real; a,b,y1: integer; z:boolean;
begin
{вводим значение х с клавиатуры 0<x<1}
writeln('ввести значение х: (0<x<1)');
readln(x);
writeln('значение x = ',x);
y:=cos(x+1)*(sin(x)/cos(x))/(ln(x)+2.5);
writeln('y = ',y);
y1:=round(y);
writeln('y1 = ',y1);
{вводим значение отрезка [a,b]}
writeln('вводим значение отрезка [a,b]:');
write('a = ','>');
readln(a);
write('b = ','>');
readln(b);
writeln('определяем принадлежность y отрезку [a,b]');
z:=(a<=y1) and (y1<=b);
writeln(z);
writeln('значение ',y,'принадлежит отрезку [ ',a,',',b,'] ?',z);
End.
Индивидуальные задания
Вычислить значение функции: f(x)=3,5x+cosx/sin2x+e x , где: х=0,1. Округлить значение f(x) к ближайшему целому.
Вычислить значение функции f(x)=cos(x+1)*tgx/(ln(x+2,5), где х – любое число из интервала [0..1], вводимое с клавиатуры в диалоговом режиме. Определить принадлежность f(x) отрезку [3..9].
Ввести 3 целых двузначных числа. Определить число, предшествующее каждому из вводимых чисел. Вывести сообщение о нечетности полученных чисел.
Ввести 3 вещественных числа: а, в, с. Найти частное и остаток от деления (а+в / c).
Ввести два вещественных числа: с и d. Найти число х, соответствующее целому от деления с и d. Определить символ, порядковый номер которого равен аргументу х.
Ввести два вещественных числа а и в. Найти остаток от деления а и в. Определить принадлежность остатка интервалу [0..1].
Вычислить значение функции: f(x)=|x3|+x/3,8 arctg x и округлить его до ближайшего целого. Определить остаток от деления f(x) на 10. Число х - любое число из интервала [0..1], вводимое с клавиатуры.
Вывести на экран порядковые номера букв, предшествующие буквам d, z, y.
Вывести на экран сообщение о нечетности порядковых номеров букв, следующих за буквами f, l, k.
Вывести на экран сообщение о четности порядковых номеров цифр, предшествующих цифрам 2, 7, 9.
Числу х присвоить значение порядкового номера числа, предшествующего цифре 7. Вычислить f(x)=2,5x/(x+1).
Найти произведение порядковых номеров букв следующих за буквами a, c, g.
Вычислить значение f(x)=sec(x)+arccos(x), где х – любое число из диапазона [0..1]. Вывести на экран дробную часть значения f(x).
Ввести любое целое двухзначное число. Определить символ, порядковый номер которого соответствует введенному числу. Вывести на экран полученный символ и символ, следующий за ним.
Ввести любое вещественное число. Округлить его к ближайшему целому. Вывести сообщение о принадлежности полученного числа отрезку [0..50].
Ввести любую латинскую букву. Определить ее порядковый номер х. Вычислить f(x)=ctg(x/100).
Ввести двузначное число. Вывести число, полученное при перестановке цифр исходного числа.
Ввести трехзначное число. Используя одну операцию деления нацело, вывести первую цифру данного числа (сотни).
Дано трехзначное число. В нем зачеркнули первую слева цифру и приписали ее справа. Вывести полученное число.
Дано трехзначное число. Вывести число, полученное при перестановке цифр десятков и единиц исходного числа (например, 123 перейдет в 132).
Дана сторона квадрата a. Найдите его периметр P=4*a.
Даны стороны прямоугольник a и b. Найти его площадь S = a*b и периметр P = 2*(a + b).
Даны длины ребер a,b,c прямоугольного параллелепипеда. Найти его объем V=a*b*c и площадь поверхности S=2*(a*b+b*c+a*c).
Даны два числа a и b. Найти их среднее арифметическое (a+b)/2.
Даны два ненулевых числа. Найти сумму, разность, произведение и частное их модулей.
Даны два неотрицательных числа a и b. Найти их среднее геометрическое .
Даны два ненулевых числа. Найти сумму, разность, произведение и частное их квадратов.
Дана сторона квадрата a. Найдите его площадь S=a2.
Найти значение функции f(x)=3x6-6x2-7 при данном значении x.
Найти значение функции f(x)=4(x-3)6 -7(x-3)3+2 при данном значении x.
Таблица 1.1 – Основные арифметические функции
N п \ п |
Математическое обозначение |
Стандартная функция |
Запись в программе |
Тип входной переменной |
Тип выходной переменной |
1 |
2 |
3 |
4 |
5 |
6 |
1 |
| X | |
ABS(X) |
ABS(X) |
real, integer |
real, integer |
2 |
X2 |
SQR(X) |
SQR(X) |
real, integer |
real, integer |
3 |
SQRT(X) |
SQRT(X) |
real, integer |
real, integer | |
4 |
SIN X |
SIN(X) |
SIN(X) |
real, integer |
real |
5 |
COS X |
COS(X) |
COS(X) |
real, integer |
real |
6 |
ARCTG X |
ARCTAN(X) |
ARCTAN(X) |
real, integer |
real |
7 |
LN X |
LN(X) |
LN(X) |
real, integer |
real |
8 |
E |
EXP(X) |
EXP(X) |
real, integer |
real |
9 |
TG X |
- |
sin(x)/cos(x) |
real, integer |
real |
10 |
CTG X |
- |
sin(pi/2x)/ cos(pi/2-x) |
real, integer |
real |
11 |
ARCSIN X |
- |
arctan(x/sqrt (1-sqr(x))) |
real, integer |
real |
12 |
ARCCOS X |
- |
(pi/2-arctan (x/sqrt(1- sqr(x))) |
real, integer |
real |
13 |
SEC X |
- |
1/cos(x) |
real, integer |
real |
14 |
COSEC X |
- |
1/sin(x) |
real, integer |
real |
15 |
XY |
- |
exp(y*ln(x)) |
real, integer |
real |
16 |
LG X |
- |
ln(x)/ln(10) |
real, integer |
real |
17 |
LOG2X |
- |
ln(x)/ln(2) |
real, integer |
real |
Таблица 1.2 – Основные дополнительные функции преобразования
N п/п |
Обозначение в программе |
Назначение |
Тип входной переменной |
Тип выходной переменной |
1 |
2 |
3 |
4 |
5 |
1 |
TRUNC(X) |
Вычисляет целую часть аргумента Х |
REAL |
INTEGER |
2 |
ROUND(X) |
Определяет округлен-ное значение Х |
REAL |
INTEGER |
3 |
ORD(X) |
Определяет порядковый номер аргумента Х |
Любой скаляр-ный, кроме REAL |
INTEGER |
4 |
CHR(X) |
Определяет символ, порядковый номер которого равен аргументу Х |
Любой скаляр-ный, кроме REAL |
CHAR |
5 |
SUCC(X) |
Выдает значение, если оно существует, следующее за аргумен- том Х |
Любой скаляр-ный, кроме REAL |
Совпадает с типом исходной переменной |
6 |
PRED(X) |
Выдает значение, если оно существует, предшествующее аргументу Х |
Любой скаляр-ный, кроме REAL |
Совпадает с типом исходной переменной |
7 |
ODD(X) |
Проверяет нечетность аргумента Х |
INTEGER |
BOOLEAN |
8 |
FRAC(X) |
Вычисляет дробную часть аргумента Х |
INTEGER |
BOOLEAN |
9 |
INT(X) |
Возвращает целую часть аргумента Х |
REAL |
REAL |
10 |
DEC(X) |
Уменьшает значение аргумента Х на 1 |
Порядковый тип |
Порядковый тип |
11 |
INC(X) |
Увеличивает значение аргумента Х на 1 |
Порядковый тип |
Порядковый тип |
ЛАБОРАТОРНАЯ РАБОТА 2
Тема работы: Применение операторов передачи управления.Условный оператор и оператор выбора.
Цель работы: Приобретение и закрепление практических навыков в составлении разветвляющихся программ на языке Паскаль.