Написание программ на языке программирования Паскаль
Вычисление приближённых значений функций, представленных бесконечными рядами. Определение максимального элемента матрицы. Сортировка символов в порядке неубывания. Определение разности между первым и вторым значениями и вывод ее на экран как погрешность.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 17.04.2014 |
Размер файла | 20,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Федеральное агентство железнодорожного транспорта
Московский государственный университет путей сообщения
Нижегородский филиал
Контрольная работа
по дисциплине «Прикладное программирование»
на тему: «Написание программ на языке программирования Паскаль»
Выполнил: студент 2 курса
шифр 1360-сТПб-7166
Колосова С.С.
Проверил: Каспаров И.В.
Н. Новгород 2013 год
Общие указания
Контрольная работа представляется на проверку в электронном виде на CD диске или другом носителе информации и в распечатанном виде.
Пояснительная записка должна включать в себя:
1. Титульный лист, который должен содержать данные студента и его учебный шифр. Он представляется на проверку в напечатанном виде на стандартном листе формата А4;
2. Задание на контрольную работу;
3. Описание основных этапов решения задач;
4. Расчётные формулы и комментарии к ним и т.п.;
5. Список использованной литературы.
Задание и методические указания к выполнению контрольной работы
Контрольная работа выполняется в системе программирования Borland Pascal и содержит 4 задачи.
В 1-ой задаче предлагается вычислить приближённое значение функций, заданных бесконечными рядами, что широко используется при составлении всевозможных таблиц специальных функций.
Задачи 2 и 3 посвящены обработке матричной и символьной информации соответственно.
Задача 4 является ключевой, в ней создаётся меню, пункты которого вызывают предыдущие задачи.
Вариант 1-й и 3-й задачи выбирается по последней, а 2-й - по предпоследней цифрам учебного шифра студента. Вариант 4 задачи использует ранее выбранные.
Задача 1
Задание. Для функций, представленных ниже бесконечными рядами, вычислить их приближённые значения с точностью е=10-3 в точке x=1,5.
Вариант 6
=.
Описание основных этапов решения задач.
При написании программы, я включила в нее следующие шаги:
1. Программа выполняет формулу, стоящую в правой части равенства, и выводит на экран ее значение при x=1,5;
2. Программа вычисляет приближенное значение бесконечного ряда, указанного в правой части равенства с точностью до члена ряда, меньшего е=10-3 для x=1,5.
3. Программа находит разность между первым и вторым значениями и выводит ее на экран как погрешность.
Расчётные формулы и комментарии к ним.
Поскольку выражение для разложения бесконечного ряда содержит факториал, то для простоты вычисления я выразила к-ый член ряда через (к-1)-й.
матрица символ погрешность функция
Значение первого члена ряда я вычислила и задала до цикла с помощью оператора присваивания, а значения последующих членов - по формуле (1).
Текст программы.
Program vichislenie;
Uses crt;
Var
x,y:real;
exp,a,s,p:real;
k:integer;
begin
clrscr;
writeln;
write(`Вычислим значение функции y=(x+1)*e^x при x=1.5');
x:=1.5;
writeln;
y:=(1+x)*exp(x);
write(`y=');
writeln(y);
writeln(`Вычислим по-другому');
a:=1;
s:=0;
k:=0;
writeln(`Вычислим приближенное значение правой части равенства, представленной бесконечным рядом с точностью до exp=10^-3');
exp:=0.001;
while abs(a)>=eps do
begin
s:=s+a;
k:=k+1;
a:=a*x*(k+1)/(k*k);
end;
writeln(`сумма ряда=',s);
writeln(`вычислим погрешность');
p:=y-s;
writeln(`Погрешность равна',p);
readln;
end.
Задача 2
Задание. Составить и выполнить программу согласно своему шифру (см. указание к выполнению контрольной работы).
В а р и а н т 6
Для заданной вещественной матрицы размера 4Х4 найти ее максимальный элемент и указать строку и столбец, в которых он находится.
При написании программы я использовала цикл.
Текст программы.
Program matrix;
Var
A: array[1..4,1..4] of integer;
i,k:byte;
s:=integer;
begin
writeln;
writeln;
writeln(`Задача для обнаружения максимального элемента матрицы.');
writeln;
writeln(`Матрица размера 4х4 задается компьютером случайным образом:');
writeln;
randomize;
begin
for i:=1 to 4 do
begin
for k:=1 to 4 do
A[i,k]:=trunc(random*100)+1;
end;
end;
begin
for i:=1 to 4 do
begin
for k:=1 to 4 do
write(A[i;k]:7,' `);
writeln;
end;
writeln;
end;
writeln;
s:=A[1,1];
begin
for i:=1 to 4 do
begin
for k:=1 to 4 do
if A[i,k]>s then s:=A[i,k];
end;
end;
write(`Максимальный элемент матрицы `);
write(s);
writeln;
writeln;
begin
for i:=1 to 4 do
begin
for k:=1 to 4 do
if A[i,k]=s then
writeln(`Строка максимального элемента ',i,' Столбец максимального элемента ',k);
end;
end;
readln;
end.
Задача 3
Задание. Составить и выполнить программу согласно своему шифру (см. указание к выполнению контрольной работы).
В а р и а н т 6
Ввести произвольную символьную цепочку. Отсортировать её символы в порядке неубывания (по алфавиту) вывести символы полученной цепочки с нечётных мест.
Program stroke;
Var
s,sn:string;
i,j,k:integer;
c:char;
begin
writeln;
writeln;
writeln(`Введите произвольно несколько буквенных символов с клавиатуры');
write(`s=');
readln(s);
for i:=0 to length(s) do
for j:=0 to length(s)-1 do
if s[j]>s[j+1] then
begin
c:=s[j+1];
s[j+1]:=s[j];
s[j]:=c;
end;
writeln;
writeln;
writeln(`А это символы, которые располагаются в предыдущей цепочке на нечетных местах');
sn:=' `;
for i:=1 to length(s) do
if i mod 2=1 then sn:=sn+s[i];
for i:=1 to length(sn) do
write(sn[i]);
readln;
end.
Задача 5
Составить программу, меню которой содержит 3 пункта, каждый из которых вызывает соответствующую программу из разработанных ранее согласно своему варианту в задачах 1-3.
Текст программы.
program zapusk;
uses dos;
begin
writeln;
writeln(`Эта программа сейчас запустит все три программы, которые были написаны ранее. Нажмите Enter, чтобы начать');
readln;
exec(`c:/z1.exe',' `);
SwapVectors;
writeln(`Для запуска программы из задачи2 нажмите Enter');
readln;
exec(`c:\z2.exe',' `);
SwapVectors;
writeln(`И снова нажмите Enter, чтобы запустить третью задачу');
readln;
exec(`c:\z3.exe',' `);
SwapVectors;
end.
Литература
Только интернет-ресурсы (сайты и форумы):
1. http://baspas.narod.ru;
2. http://vbrus.narod.ru/PascalInfo3.htm;
3. http://www.cyberforum.ru/pascal/thread103265.html;
4. http://www.cyberforum.ru/pascalabc/thread423268.html;
Размещено на Allbest.ru
Подобные документы
Иерархическая структура производного типа данных в языке Паскаль. Определение массива как упорядоченного набора фиксированного количества некоторых значений. Сортировка одномерных и двумерных массивов методом простых обменов, простым выбором и включением.
курсовая работа [48,8 K], добавлен 27.11.2010Изучение понятия и основных видов массивов. Ввод массива с клавиатуры и вывод на экран. Сортировка массивов. Метод простых обменов (пузырьковая сортировка). Сортировка простым выбором и простым включением. Решение задач с использованием массивов Паскаля.
курсовая работа [82,1 K], добавлен 18.03.2013Изучение символьных и строковых типов данных, алгоритма задачи на языке программирования Паскаль. Описания получения и установки отдельного символа строки, изменения регистра символов. Анализ создания и просмотра файла, поиска и сортировки информации.
курсовая работа [440,7 K], добавлен 13.06.2011Создание транслятора, обрабатывающего код программы на языке Паскаль и за счет эквивалентных операторов генерирующего программу на Си. Особенности внешней спецификации и работы лексического анализатора. Структура программы, вывод результатов на экран.
курсовая работа [254,0 K], добавлен 02.07.2011Программа на языке VBA, которая вводит исходные данные, выполняет расчеты и выводит на экран. Лист с начальными данными. Ввод начальных (нулевых) значений для расчетных величин. Вспомогательные переменные, счетчики циклов. Формирование матрицы данных.
курсовая работа [2,7 M], добавлен 01.12.2010Программирование на языке Паскаль: алфавит, решение задач, простейшие программы, разветвляющие программы, циклические программы, ввод-вывод, массивы, подпрограммы, строковые данные, записи, файлы, использование библиотеки CRT, графика в Паскале.
учебное пособие [211,1 K], добавлен 30.03.2008Выбор метода проектирования транслятора с языка Паскаль на язык Си, разработка и кодирование алгоритма программы. Использование допустимых операторов в исходном тексте, определение типов переменных и синтаксиса логических и арифметических выражений.
курсовая работа [1,0 M], добавлен 03.07.2011Язык программирования Турбо Паскаль. Запись алгоритма на языке программирования и отладка программы. Правила записи арифметических выражений. Стандартное расширение имени файла, созданного системным редактором. Составной оператор и вложенные условия.
курсовая работа [75,0 K], добавлен 21.03.2013Перевод числа из десятичной системы счисления в двоичную. Результат выполнения в TURBO PASKAL заданных функций и операций. Программа вычисления значений функции на языке PASKAL, блок-схема. Вычисление суммы и произведения всех элементов массива.
контрольная работа [66,6 K], добавлен 15.02.2013Логические конструкции в системе программирования Паскаль. Команды языка программирования, использование функций, процедур. Постановка и решение задач механики в среде системы Паскаль. Задачи статики, кинематики, динамики решаемые с помощью языка Паскаль.
курсовая работа [290,9 K], добавлен 05.12.2008