Контрольная работа
«Готовые решения задач на алгоритмическом языке Паскаль. УГНТУ. Вариант 69»
- 25 страниц
Работа 1. ПРОГРАММИРОВАНИЕ ЛИНЕЙНОГО ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА
Разработать программу вычисления значений заданных функций для произвольных значений исходных данных. Выполнить тестовый расчет и расчет для заданных значений исходных данных.
Работа 2. ПРОГРАММИРОВАНИЕ АРИФМЕТИЧЕСКОГО ЦИКЛА.
Разработать программу табулирования (вычисления таблицы значений) функции для произвольного диапазона изменения независимого параметра или аргумента. Выполнить расчет для заданных значений исходных данных.
Результаты расчетов вывести в табличной форме, например, для
3 варианта таблица должна иметь следующий вид:
1. Табулирование функции
Работа 3. ПРОГРАММИРОВАНИЕ РАЗВЕТВЛЯЮЩЕГОСЯ ВЫЧИСЛИТЕЛЬНОГО ПРОЦЕССА
Разработать программу вычисления значений заданной кусочно-непрерывной функции для произвольных значений исходных данных. Подготовить исходные данные для контрольного расчета значения функции по каждой формуле. Выполнить контрольные расчеты и расчет для заданных исходных данных
Работа 4. ПРОГРАММИРОВАНИЕ ИТЕРАЦИОННОГО ЦИКЛА
Функция y(x) задана двумя способами: формулой y = f(x) и ее разложением в бесконечный ряд S.
Разработать программу вычисления точного yT и приближенного yP значений функции y(x) при изменении её аргумента x от a до b с шагом x. Приближенное значение вычислять путем суммирования членов ряда до достижения требуемой точности yTyP . Предусмотреть завершение процесса суммирования членов ряда по заданному максимальному номеру члена ряда n для предотвращения зацикливания итерационного цикла. Результаты расчетов вывести в виде следующей таблицы.
Суммирование ряда
Аргумент Точное значение Приближенное значение Количество слагаемых Ошибка
0.20
0.30
.
.
.
0.80 0.16053
0.21267
.
.
.
0.28540 0.16053
0.21270
.
.
.
0.28542 3
3
.
.
.
5 -0.000003
-0.000032
.
.
.
-0.000015
Работа 5. ПРОГРАММИРОВАНИЕ МАТРИЧНЫХ ОПЕРАЦИЙ
Разработать программу решения четырех взаимосвязанных задач частой работы:
1) расчета элементов квадратной матрицы A = (ai,j ), i,j = 1,2,.,n по заданной формуле;
2) вычисления элементов вектора X = (xi), i = 1,2,.,n по заданному правилу;
3) требуемого упорядочения элементов матрицы А или вектора Х;
4) вычисления значения y по заданной формуле.
Размерность задачи n назначается преподавателем.
При изучении дисциплины Информатика студенты-заочники выполняют контрольную работу, целью которой является приобретение навыков алгоритмизации и программирования на алгоритмическом языке ПАСКАЛЬ.
При изучении дисциплины Информатика студенты-заочники выполняют контрольную работу, целью которой является приобретение навыков алгоритмизации и программирования на алгоритмическом языке ПАСКАЛЬ.
СОСТАВ КОНТРОЛЬНОЙ РАБОТЫ
В состав контрольной работы входят задания по следующим разделам
• программирование линейного вычислительного процесса;
• программирование арифметического цикла;
• программирование разветвляющегося вычислительного процесса;
• программирование итерационного цикла (вычисление рядов);
• программирование матричных операций.
Студент выполняет один и тот же вариант для всех заданий. Номер варианта определяется числом, образованным двумя правыми цифрами шифра студента. Так для шифра 120036 номер варианта равен 36, а для шифра 125500 - номер варианта равен 100.
Варианты заданий выбираются из методической разработки [1], в которой приведены по 100 вариантов для каждого задания.
В помощь студенту приведены примеры решения задач по каждому из пяти заданий. Рассмотрены различные варианты выполнения задания 2 (арифметический цикл), задания 3 (разветвляющийся алгоритм) и задания 4
(вычисление рядов).
ТРЕБОВАНИЯ К ОФОРМЛЕНИЮ ОТЧЕТА
Отчет должен иметь следующую структуру:
Титульный лист
Содержание(оглавление)
1. Наименование задания 1
1.1. Постановка задачи
1.2. Блок-схема алгоритма
1.3. Программа на языке Паскаль
1.4. Результаты решения
2. Наименование задания 2
2.1. Постановка задачи
--------------------------------------------
--------------------------------------------
5.4 Результаты решения
Список использованной литературы
Отчет выполняется на листах формата А4 (210×297). Допускается использование листов в клетку. Листы отчета должны быть пронумерованы, начиная со следующего после титульного листа. Номер листа проставляется в середине верхней его части. Желательно (но не обязательно) оформлять отчет в печатном виде с использованием редактора WORD.
Титульный лист оформляется в соответствии с приложением 1.
Содержание (оглавление) отчета включает все выделенные в тексте заголовки частей и разделов с указанием начальных страниц, включая список литературы.
Блок-схемы алгоритмов выполняются в соответствии с ГОСТ 19.001-80 и 19.003-80. В приложении 2 приведены требования к оформлению блок-схем алгоритмов.
Программа на Паскале составляется в соответствии с блок-схемой алгоритма и представляется в распечатанном на принтере виде.
Результаты расчета представляются на той же распечатке, что и программа (не на отдельных листах). Если распечатка программы и результатов имеет длину, превышающую размер листа (297 мм), то ее следует аккуратно сложить по формату листа, не разрезая на отдельные листы.
ПРИМЕРЫ АЛГОРИТМОВ И ПРОГРАММ 1. Программирование алгоритмов линейной структуры
Пример. Вычислить значение функции y=sin x+ex+2, где x=ln a+ , b=cos 3a, a=7,25. Блок-схема алгоритма Расчет контрольного примера (к.п.) ;
Паскаль-программа
Program prim1; var a,b,x,y:real;
begin write (‘Введите а=’); readln (a); b:=cos(a)*cos(a)*cos(a);
x:=ln(a)+sqrt(abs(b));
y:=sin(x)+exp(x+2);
writeln (‘b=’,b:1:3, ‘ x=’,x:1:3,’ y=’,y:1:3);
end.
Контрольный пример:
Введите а=1
b=0.158 x=0.397 y=11.379
Вывод: программа работоспособна, т. к. значения результатов контрольного примера ручного и машинного счета приблизи-тельно совпадают.
Результат:
Введите а=7.25
b=0.183 x=2.409 y=82.855
2. Программирование алгоритмов циклической структуры
Пример. Вычислить значение функции
, где
при а, изменяющемся от ан до ак,
с шагом Δа
aн=2, ак=3, Δа=0,2
а) с использованием оператора цикла с предусловием while
Блок-схема алгоритма
Паскаль-программа
Program prim31;
var an,ak,da,a,x,y:real;
begin
write(‘Введите an,ak,da=’);
readln(an,ak,da);
a:=an;
while a<=ak+0.0001 do
begin
нет x:=ln(a);
y:=exp(1/3*ln(abs(sin(x))));
да writeln(‘a=’,a:3:1,’ x=’,
x:5:3,’ y=’,y:5:3);
a:=a+da;
end;
end.
Результаты
Введите an,ak,da=2 3 0.2
a=2.0 x=0.693 y=0.861
a=2.2 x=0.788 y=0.892
a=2.4 x=0.875 y=0.916
a=2.6 x=0.956 y=0.935
a=2.8 x=1.030 y=0.950
a=3.0 x=1.099 y=0.962
б) с использованием оператора цикла с постусловием repeat-until
Блок-схема алгоритма Паскаль-программа
Program prim32;
var an,ak,da,a,x,y:real;
begin
write(‘Введите an,ak,da=’);
readln(an,ak,da);
a:=an;
repeat
x:=ln(a);
y:=exp(1/3*ln(abs(sin(x))));
writeln(‘a=’,a:3:1,’ x=’,x:5:3,
‘ y=’,y:5:3);
a:=a+da;
until a>ak;
end.
Результаты
Введите an,ak,da=2 3 0.2
a=2.0 x=0.693 y=0.861
a=2.2 x=0.788 y=0.892
нет a=2.4 x=0.875 y=0.916
a=2.6 x=0.956 y=0.935
да a=2.8 x=1.030 y=0.950
a=3.0 x=1.099 y=0.962
в) с использованием оператора цикла с параметром for
Блок-схема алгоритма
Паскаль-программа
Program prim33;
var an,ak,da,a,x,y:real;
i,n:integer;
begin
write(‘Введите an,ak,da=’);
redln(an,ak,da);
n:=trunc((ak-an)/da)+1;
a:=an;
for i:=1 to n do
begin
x:=ln(a);
y:=exp(1/3*ln(abs(sin(x))));
writeln(‘a=’,a:3:1,
‘ x=’,x:5:3,’ y=’,y:5:3);
a:=a+da;
end;
end.
Результаты
Введите an,ak,da=2 3 0.2
a=2.0 x=0.693 y=0.861
a=2.2 x=0.788 y=0.892
a=2.4 x=0.875 y=0.916
a=2.6 x=0.956 y=0.935
a=2.8 x=1.030 y=0.950
a=3.0 x=1.099 y=0.962
3. Программирование алгоритмов разветвляющейся структуры
Пример. Вычислить значение функции.
если
а) с использованием условного оператора if-then-else
Паскаль-программа
Program prim21;
var a,b,c,x,y:real;
n:integer;
begin
write(‘Введите а=’); readln(a);
x:=ln(abs(a-cos(a)));
c:=x*a; b:=x+a;
if c<=0 then
begin y:=-10.5; n:=1; end
else
if c=>3.5 then
да begin y:=c+ln(b); n:=3; end
else
нет begin y:=exp(c)+2*b; n:=2; end;
writeln(‘x=’,x:1:3,’ c=’,c:1:3,’ y=’,
да y:1:3,’ n=’,n);
end.
нет
Результат
Введите а=7.35
x=1.927 c=14.162 y=16.389 n=3
б) c использованием оператора выбора case
Паскаль-программа
Program prim22;
var a,b,c,x,y:real;
k:integer;
begin
write(‘Введите а=’); readln(a);
x:=ln(abs(a-cos(a)));
c:=x*a; b:=x+a;
if c<=0 then k:=1 else
if c<=3.5 then k:=2 else k:=3;
case k of
1: y:=-10.5;
да 2: y:=exp(c)+2*b;
3: y:=c+ln(b);
нет end;
да writeln(‘x=’,x:1:3,’ c=’,c:1:3,’
=’,y:1:3,’ k=’,k);
нет end.
Результат
Введите а=7.35
x=1.927 c=14.162
y=16.389 k=3
нет
да k=1
k=2
k=3
4. Суммирование рядов
Задача. Разработать программу вычисления точного Y и прибли-женного S значений функции при изменении её аргумента от xн до xк
с шагом Δx.
Приближенное значение функции, представленной бесконечным рядом , вычислять путем суммирования членов ряда до достижения требуемой точности = . То есть прибавлять очередной член ряда до тех пор, пока его значение по абсолютной величине не станет меньше . Для предотвращения зацикливания предусмотреть завершение процесса суммирования членов ряда по заданному максимальному номеру члена ряда =1000.
Ниже рассмотрены примеры суммирования бесконечных рядов трех типов:
а) текущий член ряда ai вычисляется непосредственно;
б) текущий член ряда ai вычисляется по рекуррентной формуле
,
где ;
в) текущий член ряда ai является произведением двух сомножителей , где вычисляется непосредственно, а -по рекуррентной формуле. Формула итерации для текущего члена находится в виде: ,
где .
Примеры
а) рассматривается вариант вычисления суммы бесконечного ряда, текущий член ai которого вычисляется непосредственно и имеет вид, например,
и т.д.
Пример 1.
; ;
;
- вычисляется непосредственно;
б) рассматривается вариант вычисления суммы бесконечного ряда, текущий член ai которого содержит степенные выражения, факториалы и имеет вид, например.
и т.д.
Пример 2.
; ;
- вычисляется по рекуррентной формуле в виде:
, ;
Рекуррентная формула
;
Проверка
- формула верна;
в) рассматривается вариант вычисления суммы бесконечного ряда, текущий член ai которого содержит выражения, вычисляемые непосредственно, и выражения с факториалами и степенями и имеет вид, например,
и т.д.
Пример 3.
;
.
Решение
Вывод формулы итерации:
1. Определение типа члена ряда. - смешанный тип
,где
– вычисляется непосредственно, а
- по рекуррентной формуле.
2. Определение формулы итерации в виде:
, ,
,
Формула итерации: , , .
3. Проверка: , - формула верна.
Блок-схема алгоритма Паскаль-программа
Program prim43;
const n=1000; e=0.0001
label met;
var x,y,s,xn,xk,dx,c,a: real;
i:integer;
begin
write(‘Введите xn,xk,dx=’);
readln(xn,xk,dx);
x:=xn;
while x<=xk do
нет begin
y:=arctan(x); s:=x; c:=x;
for i:=1 to n do
да begin c:=-x*x*c;
a:=c/(2*i+1);
if abs(a) end;
met: writeln(‘x=’,x:3:1,
‘ y=’y:8:5,’ s=’,s:8:5,
’ i=’,i);
x:=x+dx;
end
end. Результаты
Введите xn,xk,dx=0.2 0.8 0.2
x=0.2 y=0.19740 s=0.19733 i=2
x=0.4 y=0.38051 s=0.38048 i=4
да x=0.6 y=0.54042 s=0.54044 i=7
x=0.8 y=0.67474 s=0.67480 i=13
нет
5. Работа с массивами Задача. Разработать программу решения 4-х взаимосвязанных задач 1) расчёт элементов квадратной матрицы A=a(i,j), i,j=1,2,…
по заданной формуле; 2) вычисление элементов вектора X=x(i) i=1,2,…
по заданному правилу; 3) упорядочение элементов матрицы А или вектора Х; 4) вычисление значения функции y по заданной формуле. Пример.
1) ; ; 2) ; ; 3) упорядочить элементы второго столбца матрицы А по
убыванию значений; 4) ; . Задание выполнить для n=6.
Замечание. Предварительно провести отладку программы при n=3, для чего получить решение задачи вручную (или с помощью калькулятора) и проверить полученные данные на ЭВМ.
Блок-схема алгоритма
нет да
нет да
да
Паскаль-программа
program prim5;
var a:array[1.10,1.10] of real;
x:array [1.10] of real;
i,j,k,n:integer;
y,s,c:real;
begin
writeln(‘Введите n’); read(n);
{---------------------------------------часть 1-----------------------------------}
for i:=1 to n do
for j:=1 to n do
a[i,j]:=(2*j*i+4*i)/j;
writeln(‘ ‘:20,’МАТРИЦА А’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:8:3);
writeln;
end;
{---------------------------------------часть 2-----------------------------------}
for i:=1 to n do
begin
s:=0;
for j:=1 to n do s:=s+sqr(a[i,j]);
x[i]:=sqrt(s)/n;
end;
writeln(‘ ‘:20,’ВЕКТОР Х’);
for i:=1 to n do write(x[i]:8:3);
{---------------------------------------часть 3-----------------------------------}
for i:=1 to n-1 do
begin
k:=i;
for j:=i+1 to n do
if a[j,2]>a[k,2] then k:=j;
if i<>k then
begin
c:=a[i,2]; a[i,2]:=a[k,2]; a[k,2]:=c;
end;
end;
writeln(‘ ‘:14,’УПОРЯДОЧЕННАЯ МАТРИЦА’);
for i:=1 to n do
begin
for j:=1 to n do write(a[i,j]:8:3);
writeln;
end;
{---------------------------------------часть 4-----------------------------------}
y:=1;
for i:=1 to n do
begin
s:=0;
for k:=1 to n do s:=s+x[k];
if x[i]<>0 then y:=y*x[i]*s;
end;
writeln(‘ЗНАЧЕНИЕ ФУНКЦИИ У=’,y:1:3);
end.
Результаты
Введите n=6
МАТРИЦА А
6.000 4.000 3.333 3.000 2.800 2.667
12.000 8.000 6.667 6.000 5.600 5.333
18.000 12.000 10.000 9.000 8.400 8.000
24.000 16.000 13.333 12.000 11.200 10.667
30.000 20.000 16.667 15.000 14.000 13.333
36.000 24.000 20.000 18.000 16.800 16.000 ВЕКТОР X
1.555 3.110 4.665 6.220 7.776 9.331 УПОРЯДОЧЕННАЯ МАТРИЦА А
6.000 24.000 3.333 3.000 2.800 2.667
12.000 20.000 6.667 6.000 5.600 5.333
18.000 16.000 10.000 9.000 8.400 8.000
24.000 12.000 13.333 12.000 11.200 10.667
30.000 8.000 16.667 15.000 14.000 13.333
36.000 4.000 20.000 18.000 16.800 16.000 ЗНАЧЕНИЕ ФУНКЦИИ Y=123454118108000.000
1. Задания для практических и лабораторных занятий по информатике (работы 1-5): Методические указания./ Cост. Т.Г. Умергалин,
И.Г. Мухамадеев, Э.В. Писаренко - Уфа: изд-во УГНТУ,1997.-51 с.
2. Основы программирования и работы в интегрированной среде Турбо-Паскаль: Методические указания./ Cост Т.Г. Умергалин,
И.Г. Мухамадеев - Уфа: изд-во УГНТУ,1992.-45 с.
3. Емелина Е.И. Основы программирования на языке Паскаль. - М.: Финансы и статистика, 1997.-208 с.
4. Фаронов В.В. Турбо Паскаль: В 3-х кн. Кн. 1. Основы Турбо Паскаля. – М.: Учебно-инженерный центр “МВТУ-ФЕСТО ДИДАКТИК”,1992. – 304 с.
1. Задания для практических и лабораторных занятий по информатике (работы 1-5): Методические указания./ Cост. Т.Г. Умергалин,
И.Г. Мухамадеев, Э.В. Писаренко - Уфа: изд-во УГНТУ,1997.-51 с.
2. Основы программирования и работы в интегрированной среде Турбо-Паскаль: Методические указания./ Cост Т.Г. Умергалин,
И.Г. Мухамадеев - Уфа: изд-во УГНТУ,1992.-45 с.
3. Емелина Е.И. Основы программирования на языке Паскаль. - М.: Финансы и статистика, 1997.-208 с.
4. Фаронов В.В. Турбо Паскаль: В 3-х кн. Кн. 1. Основы Турбо Паскаля. – М.: Учебно-инженерный центр “МВТУ-ФЕСТО ДИДАКТИК”,1992. – 304 с.
УФИМСКИЙ ГОСУДАРСТВЕННЫЙ НЕФТЯНОЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра вычислительной техники и инженерной кибернетики
Есть программы (исходники) и отчеты для 5 лаб
Тема: | «Готовые решения задач на алгоритмическом языке Паскаль. УГНТУ. Вариант 69» | |
Раздел: | Информатика | |
Тип: | Контрольная работа | |
Страниц: | 25 | |
Цена: | 500 руб. |
Закажите авторскую работу по вашему заданию.
- Цены ниже рыночных
- Удобный личный кабинет
- Необходимый уровень антиплагиата
- Прямое общение с исполнителем вашей работы
- Бесплатные доработки и консультации
- Минимальные сроки выполнения
Мы уже помогли 24535 студентам
Средний балл наших работ
- 4.89 из 5
написания вашей работы
У нас можно заказать
(Цены могут варьироваться от сложности и объема задания)
682 автора
помогают студентам
42 задания
за последние сутки
10 минут
время отклика
Готовые решения задач на алгоритмическом языке Паскаль. УГНТУ. Вариант 40
Контрольная работа:
Готовые решения задач на алгоритмическом языке Паскаль. УГНТУ. Вариант 70
Контрольная работа:
Готовые решения задач на алгоритмическом языке Паскаль. УГНТУ. Вариант 66
Контрольная работа:
Готовые решения задач на алгоритмическом языке Паскаль. УГНТУ. Вариант 60
Контрольная работа:
Готовые решения задач на алгоритмическом языке Паскаль. УГНТУ. Вариант 67