Филиал федерального государственного бюджетного образовательного учреждения
Высшего образования
«Национальный исследовательский университет «МЭИ»
В г. Смоленске
А.Ю. ПУЧКОВ
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
К РАСЧЕТНО-ГРАФИЧЕСКОЙ РАБОТЕ
ПО ДИСЦИПЛИНЕ
«ИНФОРМАТИКА И ПРОГРАММИРОВАНИЕ»
Для групп итэк, ИУП
Смоленск 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) | Примечание |
12 x*cos(x) - x3 + sin(x)/N | ||
x- x2 + log3|2+sin(x)|+N* x2 + sin(x) | ||
x2- x*cos(x) + sin(x)-N*x | ||
N*x2.1 + sin(x)x*x2 + sin(x) | ||
x2 + sin(N*x)/x2 + sin(x) | ||
x2 + sin(Nx+1*x)/7.03 | ||
log34|5-sin(2x)|x/ sin(x)-e cos(x) | ||
x2 + |sin(x)/(x2 + sin(x)* x2 )| | ||
x2 + sin(N*x) x*cos(x) | ||
x2 + sin(N/x) x/cos(x) | ||
x2 + sin(x)/ (x2-x + sin(x)* x2.3 ) | ||
x2 + sin(x3)+x/(4.67+x3) | ||
x2 + sin(x)* (x2 + sin(x)* x2 ) | ||
x21 + sin(x x*cos(x+3.45) ) | ||
x7 + sin(x)- x/(7.3+x3.1) | ||
x2 + sin(x)- (x2 + sin(x)* x2.3 ) | ||
x2 + sin(x)- (x2 / sin(x)* x2 ) | ||
x2.63 + sin(x)*N- log71|12+cos(3x)| | ||
x2 + sin(x)/(N-7.71*x)/7.9 | ||
log96 |x|+(x2 + sin(x))x*cos(2.54x) | ||
sin(x2.12) + sin(N*x)/0.37 | ||
x-2x/ sin(x)-e cos(1.98x) | ||
cos(x2 + sin(x)/(x2 + sin(x)* 0.234|x3 |)) | ||
x -2 + sin(N*x) x*cos(x) | ||
x-5 + exp((N/x) x/cos(x) ) | ||
-x3 - cos(1-x)/ (x2.2x +log(|x|)* x2.3 ) | ||
ex-2 +2x/(3+ sin(N*x) x cos(x) ) | ||
x2-x + sin(x3+x/(14.71+x3.2)) | ||
sin(x2x )-2 sin(x)/(N-4.71*x)/x | ||
2xx-sin(x) –ent(x)! | ent(х) - целая част числа х | |
(3x2 – x)/ (3x3 + x2) | ||
-5x4.1 /sin(x x*cos(x+3.45) )+2 | ||
|x|+(x2 + sin(x))x*cos(2.54x) |
ЗАДАНИЕ 2. Разветвляющийся алгоритм. Вычислить значение функции f(x), приведенное в таблице 2. Ввод значений целого числа N и вещественного числа х производится с клавиатуры, а вывод результата f(x) осуществляется на экран.
Таблица 2
№ варианта | Функция f(x) | Примечание |
3 x - x2 + sin(x)/N если x<e0.1N x*sin(xN ), если x>= e0.1N | ||
x2 + sin(x)+N* x2 + sin(x), если x<N x*sin(xN ), если x>=N | ||
1- sin(x)-N*x, если x<N x*sin(xN ), если x>=N | ||
6-N*x2 + sin(x)*x2 + sin(x), если x<log(N) x*sin(xN ), если x>=log(N) | ||
sin(x2) + sin(N*x)/x2 + sin(x), если x<N x*sin(xN ), если x>=N | ||
x2 + sin(N*x)/7, если x<N x*sin(xN ), если x>=N | ||
x/ sin(x)-e cos(x), если x<sin(2N) x*sin(xN ), если x>= sin(2N) | ||
x2 + sin(x)/(x2 + sin(x)* x2 ), если x<N x*sin(xN ), если x>=N | ||
x2 + sin(N*x) x*cos(x), если x<N x*sin(xN ), если x>=N | ||
x2 + sin(N/x) x/cos(x), если x<N x*sin(xN ), если x>=N | ||
x2 + sin(x)/ (x2 + sin(x)* x2 ), если x<cos(N) x*sin(xN ), если x>=cos(N) | ||
x2 + sin(x), если x<N log(ln(x*sin(xN ))), если x>=N | ||
log(x2) + sin(x)* (x2 + sin(x)* x2 ), если x<N2 x*sin(xN ), если x>=N2 | ||
x21 + sin(x x*cos(x) ), если x<N log(x*sin(xN )), если x>=N | ||
x7 + sin(x), если x<N x*sin(xN ), если x>=N | ||
x2 + sin(x)- (x2 + sin(x)* log(x2 )), если x<N x*sin(xN ), если x>=N | ||
log(x2 + sin(x))- (x2 / sin(x)* x2 ), если x<N x*sin(xN ), если x>=N | ||
x2 + log(sin(x))*N-x, если x<N x*sin(xN ), если x>=N | ||
x2 + sin(x)/(N-77*x), если x<N x*sin(xN ), если x>=N | ||
(x2 + sin(x))x*cos(x), если x<N log(ln(x*sin(xN ))), если x>=N | ||
sin(x-3) + sin(N*x)/x2 + sin(x), если x<2N -2x+sin(x-N ), если x>=2N | ||
x-5 + sin(N*x)/7, если x<3N x*sin(xN ), если x>=3N | ||
x/ sin(x)-e cos(x), если x<2.1-N 3x*sin(xN ), если x>=2.1-N | ||
-sin(x)/(x2 + sin(x)* x2 ) *x-4, если x<N-3.14 x*sin(xN ), если x>=N-3.14 | ||
x-7 + sin(N*x) x*sin(x), если x<sin(N) 7x*sin(xN ), если x>=sin(N) | ||
-x2.6 + sin(x)/(N-77*x), если x<N log 23 x + 2x*cos(xN ), если x>=N | ||
x(x2.34 + cos(x))x*cos(x), если x<N log 3(|ln(x*sin(xN ))|), если x>=N | ||
-x1.2 + sin(e x*cos(x) ), если x<N cos(x*sin(xN )), если x>=N | ||
x(x2 + sin(x))x, если x<N ln(x*sin(xN )), если x>=N | ||
3x4 - sin(N/x) x*sin(x), если x<2-sin(N) 12x*cos(xNx ), если x>=2-sin(N) | ||
x+ sin3(x)- (x2 + sin(x)* log(x2 )), если x<N 3x*sin(xN ), если x>=N | ||
ln(3x2)*sin(x) - x2 / sin(x)* x2 , если x<N2 x*sin(xN ), если x>=N2 | ||
|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
№ варианта | Преобразование |
Поменять местами максимальный и минимальный элементы | |
Поменять местами максимальный и минимальный по модулю элементы | |
Поставить на место a(N,N) полусумму максимального и минимального элементов | |
Поменять местами строки с максимальным и минимальным элементами | |
Поменять местами строки с максимальным и минимальным по модулю элементами | |
Поменять местами строку с максимальным элементом и строку i=N | |
Поменять местами столбец с максимальным элементом и столбец j=N | |
Поменять местами столбцы с максимальным и минимальным по модулю элементами | |
Поменять местами столбцы с максимальным и минимальным элементами | |
Поменять местами элементы главной диагонали и побочной | |
Поменять местами максимальный и минимальный элементы главной диагонали | |
Поменять местами максимальный и минимальный элементы побочной диагонали | |
Отсортировать элементы в столбцах по возрастанию | |
Отсортировать элементы в строках по убыванию | |
Найти ближайший к нулю элемент и заменить его на ноль | |
Поменять местами элементы, значения синусов от которых sin(a(i,j)) больше синусов всех других элементов | |
Сгенерировать k, различных хотя бы одним числом, пар случайных чисел {f,r}, где f<=n, r<=m. Эти пары будут определять номер элемента матрицы А. Из этих элементов сформировать прямоугольную матрицу, сумма количества строк и столбцов у которой минимальна. | |
Наитии минимальный и максимальный элементы среди тех, номер строк которых нечетный и поменять их местами | |
Заменить нулями те элементы, значение которых меньше среднего значения элементов всей матрицы. Остальные элементы вывести без изменения | |
Заменить нулями те элементы, значение которых меньше среднего значения элементов всей матрицы. Вместо остальных элементов вывести «1» | |
Заменить нулями те элементы строки, значение которых меньше среднего значения элементов этой строки. Остальные элементы в строках вывести без изменения | |
Элементы главной диагонали заменить на элементы побочной диагонали. Элементы побоч. диагонали сделать равными нулю, кроме элемента, на пересечении диагоналей. | |
Поменять зеркально местами элементы над главной диагональю и под ней | |
Поменять зеркально местами элементы над побочной диагональю и под ней | |
Заменить отрицательные элементы на «-1», нулевые на «0», положительные на «1». После этого транспонировать матрицу | |
Ввести два целых числа k и q. В столбцах от k до q (включая k и q) отсортировать элементы в порядке возрастания. | |
Ввести два целых числа k и q. В строках от k до q (включая k и q) отсортировать элементы в порядке убывания. | |
Найти матрицу А.АТ и в полученной матрице поменять местами максимальный и минимальный элементы. | |
Все элементы, сумма i+j для которых четна, сформировать в виде вектора-строки Х. Просмотр матрицы проводить построчно, начиная со строки с номером k (его вводит пользователь) до последней строки, а затем переходить к первой строке и продолжать до строки k-1 включительно. Вывести Х, а затем отсортировать его в порядке возрастания и также вывести результат. | |
Сгенерировать k, различных хотя бы одним числом, пар случайных чисел {f,r}, где f<=n, r<=m. Эти пары будут определять номер элемента матрицы А. Найти среди этих элементов максимальный и минимальный и поменять их местами в исходной матрице А. | |
Сформировать матрицу В=ААТ . Поменять местами минимальные элементы матриц А и В. Также, поменять местами максимальные элементы матриц А и В. | |
Отобразить элементы матрицы А симметрично относительно k-го столбца или строки (по выбору пользователя) |
Рекомендуемая литература
- Фаронов В.В. Турбо Паскаль (в 3-х книгах). Книга 1. Основы Турбо Паскаля. – М.: Учебно-инженерный центр «МВТУ-ФЕСТО ДИДАКТИК», 1992.
- Delphi 7. Учебный курс/ С.И. Бобровский. – СПб.: Питер, 2003.
- Бояринов Ю.Г. И др. Основы работы в Turbo Pascal: методич. указ. к лаб. раб. по курсу «информатика» – Смоленск: СФМЭИ. 2005 г.
- Информатика: Учебник – 3-е перераб. издание/ Под ред. Н.В. Макаровой – М.: Финансы и статистика, 2001.
ПРИЛОЖЕНИЕ А
Требования к оформлению отчета
При написании текста отчета следует использовать безличную манеру, то есть, не употреблять местоимения «я», «мною», «мы» и т.д. Такие слова и словосочетания как «общеизвестно», «само собой разумеется», «естественно» и подобные им не допускаются в тексте.
При написании текста РПЗ не допускается применять:
- обороты разговорной речи, слэнги, произвольные словообразования;
- различные научные термины, близкие по смыслу, для одного и того же понятия;
- математические знаки (<, >, =, %, № и т.д.) без цифр;
- сокращения обозначений физических величин, если они употребляются без цифр.
Структура отчета содержит следующие элементы:
- титульный лист (печатается и выдается на кафедре);
- содержание;
- задание 1;
- задание 2;
- задание 3;
- задание 4;
- список использованных источников;
- приложения.
Пример оформления содержания показан на рисунке 1.1.
СОДЕРЖАНИЕ
1 ЗАДАНИЕ № 1 ……………………………………...………………………. 3
1.1 Текст задания № 1 и блок-схема алгоритма …………………….……...... 3
1.2 Текст программы задания № 1……………………………………….……..4
1.3 Тестирование программы задания № 1……………….…………………....5
2 ЗАДАНИЕ № 2………………………………………………………………….6
1.1 Текст задания № 2 и блок-схема алгоритма …………………………..........6
….
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ…….……………..………..17
ПРИЛОЖЕНИЕ А. Экранные формы программы задания № 1………………18
…
Рисунок 1.1 – Пример оформления содержания
Страницы отчета следует нумеровать арабскими цифрами, соблюдая сквозную нумерацию по всему тексту записки, в том числе приложений. Номер страницы на титульном листе не ставится, но считают, что он имеет номер один. Номера остальных страниц проставляют в центре нижней части листа.
Выделение фрагментов текста полужирным шрифтом, курсивом, подчеркиванием не допускается. Не следует использовать жирные маркеры, рекомендуется везде использовать однообразные маркеры в виде тире.
Основную часть отчета следует делить на разделы и подразделы. Разделы и подразделы должны иметь заголовки, которые начинаются с абзацного отступа и выполнены полужирным шрифтом. Заголовки разделов пишут большими буквами, а подразделов - маленькими, но начиная с большой буквы. Точки в конце заголовков не ставят. Пример оформления названий раздела и подраздела показан на рисунке 1.2.
Разделы должны иметь порядковую нумерацию в пределах всего текста. Разделы и подразделы следует нумеровать арабскими цифрами. Заголовки должны четко и кратко отражать содержание разделов, подразделов. Названия разделов всегда начинаются на новой странице, названия подразделов не обязательно должны начинаться с новой страницы. Между названием раздела и подраздела оставляется пробел-строка.
Не допускаются «висящие» заголовки подразделов – после названия должно быть не менее двух строк текста на данной странице. Также, не следует для одной-двух строк отводить целую страницу перед новым разделом.
Все страницы отчета должны быть заполнены текстом, таблицами, иллюстрациями на 100 %. Исключение составляют только страницы перед новыми разделами.
От текста предыдущего подраздела до названия следующего подраздела делается отступ в две пробел-строки, а после названия – одна пробел-строка. Следует обратить внимание, что каждый раздел и подраздел должны начинаться с текста, а не с рисунка, таблицы или пункта.
ЗАДАНИЕ № 1