Филиал федерального государственного бюджетного образовательного учреждения
высшего образования
«Национальный исследовательский университет «МЭИ»
в г. Смоленске
А.Ю. ПУЧКОВ
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
К РАСЧЕТНО-ГРАФИЧЕСКОЙ РАБОТЕ
ПО ДИСЦИПЛИНЕ
«ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ»
для групп эо
Смоленск 2015
Содержание
Общие требования ………………………………………..…….………2
ЗАДАНИЕ 1 ………………………………………………………………….3
ЗАДАНИЕ 2 …………………………………………………………………..4
ЗАДАНИЕ 3 …………………………………………………………….…….6
ЗАДАНИЕ 4 …………………………………………………….…………….6
ПРИМЕРЫ ПРОГРАММЫ НА ЯЗЫКЕ ПАСКАЛЬ……….….…………....7
Рекомендуемая литература……………………………………….10
ПРИЛОЖЕНИЕ А……………………………………………………………11
Общие требования
Номер вариантапрактического задания РГР выбирается в соответствии с порядковым номером фамилии студента в журнале группы.В конце семестра необходимо оформить отчет по всем выполненным заданиями, распечатать его и сдать преподавателю на проверку.
В ходе выполнения каждого задания РГР необходимо: составить блок-схему алгоритма, написать программу на языке Паскаль, отладить программу и выполнить ее тестирование.
Отчет по РГРоформляется в редактореWordсо следующими параметрами:формат листа А4,шрифт Times New Roman, размер шрифта 12, межстрочный интервал – одинарный, поля – со всех сторон по 2 см.
Требования по оформлению отчета представлены в приложении А. С правилами оформления блок-схем алгоритмов можно ознакомиться на стенде в коридоре около ауд. 513 – 517, а, также, в ГОСТ–19, называемом ЕСПД – единая система программной документации.
Описание каждого задания должно оформляться как новый раздел (глава) и начинаться с новой страницы. Внутри раздела все страницы должны быть заполнены полностью (текстом, рисунками, таблицами). Допускается неполное заполнение лишь последней страницы в разделах.
В отчете, для каждого задания, должны быть представлены следующие материалы: текст задания в соответствии с вариантом, блок-схема, текст программы, результаты тестирования и пример работы программы.
Текст программы следует оформлять шрифтом размером 10 пунктов.
ЗАДАНИЕ 1. Линейный алгоритм. Вычислить выражениеf(x), приведенное в таблице 1. Ввод значений целого числаNи вещественного числа х производится с клавиатуры, а вывод результатаf(x) осуществляется на экран.
Таблица 1
Вариант |
Выражение f(x) |
Примечание |
1 |
12 x*cos(x) - x3 + sin(x)/N |
|
2 |
x- x2 + log3|2+sin(x)|+N* x2 + sin(x) |
|
3 |
x2- x*cos(x) + sin(x)-N*x |
|
4 |
N*x2.1 + sin(x)x*x2 + sin(x) |
|
5 |
x2 + sin(N*x)/x2 + sin(x) |
|
6 |
x2 + sin(Nx+1*x)/7.03 |
|
7 |
log34|5-sin(2x)|x/ sin(x)-e cos(x) |
|
8 |
x2 + |sin(x)/( x2 + sin(x)* x2 )| |
|
9 |
x2 + sin(N*x ) x*cos(x) |
|
10 |
x2 + sin(N/x) x/cos(x) |
|
11 |
x2 + sin(x)/ ( x2-x + sin(x)* x2.3 ) |
|
12 |
x2 + sin(x3)+x/(4.67+x3) |
|
13 |
x2 + sin(x)* ( x2 + sin(x)* x2 ) |
|
14 |
x21 + sin(x x*cos(x+3.45) ) |
|
15 |
x7 + sin(x)- x/(7.3+x3.1) |
|
16 |
x2 + sin(x)- ( x2 + sin(x)* x2.3 ) |
|
17 |
x2 + sin(x)- ( x2 / sin(x)* x2 ) |
|
18 |
x2.63 + sin(x)*N- log71|12+cos(3x)| |
|
19 |
x2 + sin(x)/(N-7.71*x)/7.9 |
|
20 |
log96 |x|+(x2 + sin(x))x*cos(2.54x) |
|
21 |
sin(x2.12) + sin(N*x)/0.37 |
|
22 |
x-2x/ sin(x)-e cos(1.98x) |
|
23 |
cos(x2 + sin(x)/( x2 + sin(x)* 0.234|x3 |)) |
|
24 |
x -2 + sin(N*x ) x*cos(x) |
|
25 |
x-5 + exp((N/x) x/cos(x) ) |
|
26 |
-x3 - cos(1-x)/ ( x2.2x +log(|x|)* x2.3 ) |
|
27 |
ex-2 +2x/(3+ sin(N*x ) x cos(x) ) |
|
28 |
x2-x + sin(x3+x/(14.71+x3.2)) |
|
29 |
sin(x2x )-2 sin(x)/(N-4.71*x)/x |
|
30 |
2xx-sin(x) –ent(x)! |
ent(х) - целая част числа х |
31 |
(3x2 – x)/ (3x3 + x2) |
|
32 |
-5x4.1 /sin(x x*cos(x+3.45) )+2 |
|
33 |
|x|+(x2 + sin(x))x*cos(2.54x) |
|
ЗАДАНИЕ 2. Разветвляющийся алгоритм.Вычислить значение функцииf(x), приведенное в таблице 2. Ввод значений целого числаNи вещественного числа х производится с клавиатуры, а вывод результатаf(x) осуществляется на экран.
Таблица 2
№ варианта |
Функция f(x) |
Примечание |
1 |
3 x - x2 + sin(x)/N если x<e0.1N x*sin(xN ), если x>= e0.1N |
|
2 |
x2 + sin(x)+N* x2 + sin(x), если x<N x*sin(xN ), если x>=N |
|
3 |
1- sin(x)-N*x, если x<N x*sin(xN ), если x>=N |
|
4 |
6-N*x2 + sin(x)*x2 + sin(x) , если x<log(N) x*sin(xN ), если x>=log(N) |
|
5 |
sin(x2) + sin(N*x)/x2 + sin(x) , если x<N x*sin(xN ), если x>=N |
|
6 |
x2 + sin(N*x)/7, если x<N x*sin(xN ), если x>=N |
|
7 |
x/ sin(x)-e cos(x) , если x<sin(2N) x*sin(xN ), если x>= sin(2N) |
|
8 |
x2 + sin(x)/( x2 + sin(x)* x2 ) , если x<N x*sin(xN ), если x>=N |
|
9 |
x2 + sin(N*x ) x*cos(x) , если x<N x*sin(xN ), если x>=N |
|
10 |
x2 + sin(N/x) x/cos(x) , если x<N x*sin(xN ), если x>=N |
|
11 |
x2 + sin(x)/ ( x2 + sin(x)* x2 ) , если x<cos(N) x*sin(xN ), если x>=cos(N) |
|
12 |
x2 + sin(x) , если x<N log(ln(x*sin(xN ))), если x>=N |
|
13 |
log(x2) + sin(x)* ( x2 + sin(x)* x2 ) , если x<N2 x*sin(xN ), если x>=N2 |
|
14 |
x21 + sin(x x*cos(x) ) , если x<N log(x*sin(xN )), если x>=N |
|
15 |
x7 + sin(x) , если x<N x*sin(xN ), если x>=N |
|
16 |
x2 + sin(x)- ( x2 + sin(x)* log(x2 )) , если x<N x*sin(xN ), если x>=N |
|
17 |
log(x2 + sin(x))- ( x2 / sin(x)* x2 ) , если x<N x*sin(xN ), если x>=N |
|
18 |
x2 + log(sin(x))*N-x, если x<N x*sin(xN ), если x>=N |
|
19 |
x2 + sin(x)/(N-77*x) , если x<N x*sin(xN ), если x>=N |
|
20 |
(x2 + sin(x))x*cos(x) , если x<N log(ln(x*sin(xN ))), если x>=N |
|
21 |
sin(x-3) + sin(N*x)/x2 + sin(x) , если x<2N -2x+sin(x-N ), если x>=2N |
|
22 |
x-5 + sin(N*x)/7, если x<3N x*sin(xN ), если x>=3N |
|
23 |
x/ sin(x)-e cos(x) , если x<2.1-N 3x*sin(xN ), если x>=2.1-N |
|
24 |
-sin(x)/( x2 + sin(x)* x2 ) *x-4 , если x<N-3.14 x*sin(xN ), если x>=N-3.14 |
|
25 |
x-7 + sin(N*x ) x*sin(x) , если x<sin(N) 7x*sin(xN ), если x>=sin(N) |
|
26 |
-x2.6 + sin(x)/(N-77*x) , если x<N log 23 x + 2x*cos(xN ), если x>=N |
|
27 |
x(x2.34 + cos(x))x*cos(x) , если x<N log 3(|ln(x*sin(xN ))|), если x>=N |
|
28 |
-x1.2 + sin(e x*cos(x) ) , если x<N cos(x*sin(xN )), если x>=N |
|
29 |
x(x2 + sin(x) )x , если x<N ln(x*sin(xN )), если x>=N |
|
30 |
3x4 - sin(N/x ) x*sin(x) , если x<2-sin(N) 12x*cos(xNx ), если x>=2-sin(N) |
|
31 |
x+ sin3(x)- ( x2 + sin(x)* log(x2 )) , если x<N 3x*sin(xN ), если x>=N |
|
32 |
ln(3x2)*sin(x) - x2 / sin(x)* x2 , если x<N2 x*sin(xN ), если x>=N2 |
|
33 |
|x-3.4 | - sin(x) , если |x|<N x*sin(xN ), если |x|>=N |
|
ЗАДАНИЕ 3. Циклический алгоритм. Задается произвольный диапазон[a, b]измененияхЭтот диапазон разбивается наkодинаковых отрезков. Требуется вычислить выражение
k+1
∑ f(xi),
i=0
где ∑ – символ суммы,f(x)– функция, приведенная в таблице 2,хi – i -оезначениехна отрезке[a, b], причем x0 =a, xk =b. Предусмотреть вывод на экран таблицы нарастающих значений суммы на каждом шаге измененияхi. При выводе таблицы на экран использовать символы псевдографики.
ЗАДАНИЕ 4.Преобразование матриц
4.1. Дана матрица А размераn*m, гдеn<=15,m<=15. Предусмотреть, чтобы ее элементыa(i,j) могли задаваться с клавиатуры или заполняться случайными целыми числами из диапазона [-V*10;V*10), гдеV– номер варианта. Выполнить преобразование, указанное в таблице 3. Если при описании преобразования требуются некоторые параметры (такие какN,r,fи т.д.), то они вводятся с клавиатуры. На экран вывести исходную и преобразованную матрицы. Примеры программ преобразования матриц приведены в приложении Б, программа 1.
Дополнительные задания.
4.2. Оформить преобразование из п. 4.1 в виде функции или процедуры (на самостоятельный выбор). Вывести на экран исходную и преобразованную матрицы. Пример использования подпрограмм для матриц представлен в приложении Б, программа №2.
4.3. Записать в файл исходную и преобразованную матрицы. Пример использования текстовых файлов представлен в приложении Б, программа №2.
Таблица 3
№ варианта |
Преобразование |
1 |
Поменять местами максимальный и минимальный элементы |
2 |
Поменять местами максимальный и минимальный по модулю элементы |
3 |
Поставить на место a(N,N) полусумму максимального и минимального элементов |
4 |
Поменять местами строки с максимальным и минимальным элементами |
5 |
Поменять местами строки с максимальным и минимальным по модулю элементами |
6 |
Поменять местами строку с максимальным элементом и строку i=N |
7 |
Поменять местами столбец с максимальным элементом и столбец j=N |
8 |
Поменять местами столбцы с максимальным и минимальным по модулю элементами |
9 |
Поменять местами столбцы с максимальным и минимальным элементами |
10 |
Поменять местами элементы главной диагонали и побочной |
11 |
Поменять местами максимальный и минимальный элементы главной диагонали |
12 |
Поменять местами максимальный и минимальный элементы побочной диагонали |
13 |
Отсортировать элементы в столбцах по возрастанию |
14 |
Отсортировать элементы в строках по убыванию |
15 |
Найти ближайший к нулю элемент и заменить его на ноль |
16 |
Поменять местами элементы, значения синусов от которых sin( a(i,j)) больше синусов всех других элементов |
17 |
Сгенерировать k, различных хотя бы одним числом, пар случайных чисел {f,r}, где f<=n, r<=m. Эти пары будут определять номер элемента матрицы А. Из этих элементов сформировать прямоугольную матрицу, сумма количества строк и столбцов у которой минимальна. |
18 |
Наитии минимальный и максимальный элементы среди тех, номер строк которых нечетный и поменять их местами |
19 |
Заменить нулями те элементы, значение которых меньше среднего значения элементов всей матрицы. Остальные элементы вывести без изменения |
20 |
Заменить нулями те элементы, значение которых меньше среднего значения элементов всей матрицы. Вместо остальных элементов вывести «1» |
21 |
Заменить нулями те элементы строки, значение которых меньше среднего значения элементов этой строки. Остальные элементы в строках вывести без изменения |
22 |
Элементы главной диагонали заменить на элементы побочной диагонали. Элементы побоч. диагонали сделать равными нулю, кроме элемента, на пересечении диагоналей. |
23 |
Поменять зеркально местами элементы над главной диагональю и под ней |
24 |
Поменять зеркально местами элементы над побочной диагональю и под ней |
25 |
Заменить отрицательные элементы на «-1», нулевые на «0», положительные на «1». После этого транспонировать матрицу |
26 |
Ввести два целых числа k и q. В столбцах от k до q (включая k и q) отсортировать элементы в порядке возрастания. |
27 |
Ввести два целых числа k и q. В строках от k до q (включая k и q) отсортировать элементы в порядке убывания. |
28 |
Найти матрицу А.АТ и в полученной матрице поменять местами максимальный и минимальный элементы. |
29 |
Все элементы, сумма i+j для которых четна, сформировать в виде вектора-строки Х. Просмотр матрицы проводить построчно, начиная со строки с номером k (его вводит пользователь) до последней строки, а затем переходить к первой строке и продолжать до строки k-1 включительно. Вывести Х, а затем отсортировать его в порядке возрастания и также вывести результат. |
30 |
Сгенерировать k, различных хотя бы одним числом, пар случайных чисел {f,r}, где f<=n, r<=m. Эти пары будут определять номер элемента матрицы А. Найти среди этих элементов максимальный и минимальный и поменять их местами в исходной матрице А. |
31 |
Сформировать матрицу В=ААТ . Поменять местами минимальные элементы матриц А и В. Также, поменять местами максимальные элементы матриц А и В. |
32 |
Отобразить элементы матрицы А симметрично относительно k-го столбца или строки (по выбору пользователя) |
Рекомендуемая литература
Фаронов В.В. Турбо Паскаль (в 3-х книгах). Книга 1. Основы Турбо Паскаля. – М.: Учебно-инженерный центр «МВТУ-ФЕСТО ДИДАКТИК», 1992.
Delphi7. Учебный курс/ С.И. Бобровский. – СПб.: Питер, 2003.
Бояринов Ю.Г. И др. Основы работы в TurboPascal: методич. указ. к лаб. раб. по курсу «информатика» – Смоленск: СФМЭИ. 2005 г.
Информатика: Учебник – 3-е перераб. издание/ Под ред. Н.В. Макаровой – М.: Финансы и статистика, 2001.