Всё для Учёбы — студенческий файлообменник
1 монета
docx

Студенческий документ № 058264 из НИУ МЭИ

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФИЛИАЛ ФЕДЕРАЛЬНОГО ГОСУДАРСТВЕННОГО БЮДЖЕТНОГО ОБРАЗОВАТЕЛЬНОГО УЧРЕЖДЕНИЯ ВЫСШЕГО ОБРАЗОВАНИЯ

"НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ "МЭИ"

в г. Смоленске

Кафедра Вычислительной техники

РАСЧЁТНО-ГРАФИЧЕСКАЯ РАБОТА

По дисциплине "Программирование"

Вариант 9

Студент группы ИВТ-2 Ефимов Д. С. дата сдачи подпись Преподователь к.т.н., доцент

Федулов Я. А. подпись Смоленск, 2016 г.

Оглавление

1. Задание на разработку программного комплекса...................3

2. Введение...........................................................................................4

3. Спецификация модулей программного комплекса.................5

4. Блок-схемы алгоритмов модулей................................................7

5. Краткая инструкция......................................................................12

6. Заключение......................................................................................13

7. Список литературы........................................................................14

8. Текст программы............................................................................15

Задание на разработку программного комплекса.

Задание 1.

Вычислить выражение f(x) x2 + sin(N*x ) x*cos(x). Предусмотреть ввод вещественного значения х с клавиатуры и вывод результата f(x) на экран.

Задание 2.

Вычислить выражение x2 + sin(N*x ) x*cos(x) , если x=N. Предусмотреть ввод значения х с клавиатуры и вывод результата на экран.

Задание 3.

Вычислить выражение: 10*N

П f(x),

x=2

где f(x) - выражение, x2 + sin(N*x ) x*cos(x)

П - символ произведения,

х - целое число, последовательно принимает целые значения х=2, х=3, х=4 ... х=10*N.

Задание 4.

Дана матрица А размера n*n, где n= N - другого.

Входные данные: значения переменных xи N.

Выходные данные: -.

Имя модуля: proizv(N).

Вызывающий модуль: модуль pscV9.

Выполняемые функции вычисление произведения при х = [2..N*10].

Входные данные: значение переменный N.

Выходные данные: -.

Имя модуля: preobr(A, N).

Вызывающий модуль: matr.

Выполняемые функции: преобразование матрицы А по условию 8 варианта.

Входные данные: матрица А, размерность матрицы N.

Выходные данные: -.

Имя модуля: matr(A, N).

Вызывающий модуль: модуль pscV9.

Выполняемые функции: заполнение матрицы A.

Входные данные: матрица А и её размерность N.

Выходные данные: -.

Имя модуля: pscV9.

Выполняемые функции: выбор задания на выполнение.

Входные данные:-.

Выходные данные: -.

Блок-схема.

Краткая инструкция для пользователя по работе с программным комплексом.

Запускаем программу и выбираем номер задания из списка прописал 1,2,3,4 в соответствии с заданием. После выбора задания нужно ввести значения нужных переменных (Х, размер матрицы, N и значение самой матрицы.) Дальше программа рассчитывает нужные результаты.

Заключение.

Данный программный комплекс позволяет решить одно из 4 заданий на выбор пользователя: посчитать f(x), посчитать выражение с условие, посчитать произведение при x = [2 .. N*10] и поработать с матрицей А.

В ходе разработки данного программного модуля были закреплены основы среды программирования Pascal: процедуры, функции, математические операторы, операторы циклов.

Список использованной литературы.

1. TurboPascal. Самоучитель. / Под ред. О.А. Меженный. - В.:Диалектика, 2008. - 336.

2. http://learnpascal.ru/vvedenie-v-paskal/urok-1-why-pascal.html

3. https://ru.wikipedia.org/wiki/ Паскаль (язык программирования)

4. Free Pascal и Lazarus: Учебник по программированию. / Под ред. Алексеев Е. Р., Чеснокова О. В., Кучер Т. В.- М.:ДМК-пресс,2010. - 442.

5. Алгоритмы и программы на Turbo Pascal. Учебный курс. / Под ред. Ю.Федоренко. - П.:Питер,2001. - 240.

6. Turbo Pascal 7.0. Начальный курс. / Под ред. Фаронов В.В. - М.:Нолидж, 2000. - 576.

7. Учимся программировать: Pascal 7.0, 2-е издание. / Под ред. А.И.Гусева. - М.:Диалог-МИФИ,1998. - 276.

Текст программы.

Текст программы

// Ефимов Д.С. курсовая ИВТ2-16

program pscV9;

uses crt;

const N=9; Type

mas = array [1..15, 1..15] of real;

var v: byte;

x:real;

A: mas; function step(var x: real; N:integer):real;

{Процедура возведения числа Х в степень N}

var i: integer;

begin

step:=1; if abs(N) >= 2

then for i:= 2 to N do

x:= x*x else if N = 0

then

x:= 1; if N 0

then for x:= 2 to N*10 do

otvet:= otvet * (sqr(x) + sin((N*x)*exp(x*cos(x))))

else

for x:= 2 downto N*10 do

otvet:= otvet * (sqr(x) + sin((N*x)*exp(x*cos(x))));

writeln('Произведение = ', otvet:4:2);

end;

procedure preobr(var A: mas; N:integer);

{Процедура преобразования матрицы}

var i,j, minInd: integer;

min, temp: real;

begin min:= abs(A[1][1]);

minInd:=1; for i:= 1 to N do

for j:= 1 to n do

if abs(A[i][j])

then begin min:= abs(A[i][j]);

minInd:= j; end;

for i:= 1 to N do begin

temp:= A[i][j];

A[i][j]:= A[i][minInd];

A[i][minInd]:= temp;

end; writeln('Изменения матрицы: ');

for i:= 1 to n do begin

for j:= 1 to n do

write(A[i][j], ' ');

writeln; end;

end;

procedure matr(var A: mas; N:integer);

{Процедура работы с матрицей, 4 задание}

var i,j:integer;

begin

for i:= 1 to n do

for j:= 1 to n do

A[i][j]:= Trunc((i*j*Sin(0.5*i*j))*100)/100;

for i:= 1 to n do begin

for j:= 1 to n do

write(A[i][j], ' ');

writeln; end;

preobr(A, N);

end; Begin

writeln('Задание?');

writeln('1. Вычислить f(x)');

writeln('2. Вычислить выражение');

writeln('3. Вычислить произведение');

writeln('4. Матрица');

readln(v); clrscr;

case v of

1: begin writeln('введите X');

readln(x); f(x);

end; 2: begin

writeln('введите X');

readln(x); vir(x,N);

end; 3: begin

writeln('N');

proizv(N);

end; 4: begin

writeln('введите размер матрицы');

matr(A, N); end;

end;

end. 5

Показать полностью…
111 Кб, 26 января 2017 в 22:43 - Россия, Москва, НИУ МЭИ, 2017 г., docx
Рекомендуемые документы в приложении