Файл: Курсовая работа по дисциплине Алгоритмические Языки и Программирование Расчетнопояснительная записка Разработал студент.docx

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 28.03.2024

Просмотров: 7

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ФЕДЕРАЛЬНОЕ государственное бюджетное ОБРАЗОВАТельное учреждение

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«ВОРОНЕЖСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»
(ФГБОУ ВПО «ВГУ»)

Математический факультет

КУРСОВАЯ РАБОТА

по дисциплине: Алгоритмические Языки и Программирование
Расчетно-пояснительная записка

Разработал студент

Гр. ТС-182 В.П. Астахов

Подпись, дата Инициалы, фамилия

Руководитель С.Д. Гунин

Подпись, дата Инициалы, фамилия

Члены комиссии ______________________________

Подпись, дата Инициалы, фамилия
Нормоконтролёр _____________________________

Подпись, дата Инициалы, фамилия

Защищена ___________________ Оценка __________________________

Дата

Воронеж - 2018
Содержание

Задание на курсовую работу 3

Замечания руководителя 4

Введение 5

Задача №1 6

Задача №2 7

Задача №3 8

Заключение 9

Задание на курсовую работу

Вариант №1

1.В матрице A (m*n) расположить строки в порядке возрастания сумм их элементов

2. Для массива y(k),где k 10,и действительного числа x вычислить:




где шаг Δ =

3.В матрице A (m*n) поменять местами строки с наибольшим и наименьшим элементом.

Замечания руководителя

Введение

Паскаль – язык программирования, созданный в конце 60-х годов {1967-1968 гг.} швейцарским профессором Николаусом Виртом {впоследствии он создал и такие языки программирования как Модула и Оберон, но они не получили широкого распространения} специально для обучения программированию. Стандарт языка был разработан учёным в 1974 г. совместно с Кетлин Дженсен. Название языку было дано в честь выдающегося французского математика.

Язык Паскаль характеризуется чёткой структурой программы, простотой и ясностью конструкций. С момента создания Паскаль был универсален и пригоден для решения широкого круга задач {в отличие от таких языков, как Бейсик, Фортран, Кобол}. Строгая типизация языка значительно сокращает количество ошибок в программах.


Сейчас существует три стандарта языка:

1. Нерасширенный Паскаль {Unextended Pascal} был разработан в 1983 году и практически полностью совпадает с описанием языка по Дженсен-Вирту.

2. Расширенный Паскаль {Extended Pascal} содержит расширения, затрагивающие модульное программирование {отдельная компиляция модулей, импорт-экспорт подпрограмм, интерфейсная часть и реализация} и дополнен рядом процедур и функций {прямой доступ к файлам, работа со строками и др.}.

3. Объектный Паскаль {Object Pascal} принят в 1993 г. Он поддерживает классы, обладающие свойствами и методами, наследование классов, переопределение методов у потомков {полиморфизм} и другие атрибуты объектно-ориентированного программирования.

С появлением компьютеров, Паскаль начал широко использоваться для программирования. Для операционной системы MS-DOS самое большое распространение приобрела реализация языка Паскаль фирмы Борланд под названием Турбо Паскаль.

Интегрированная оболочка, которая включает в себя редактор, компилятор, компоновщик и отладчик, вместе с интерактивной справочной системой превратили разработку программ на Паскале в простое и понятное практически каждому человеку дело. Но так было не всегда. Например, в начале восьмидесятых годов сначала в редакторе нужно было написать текст программы, затем однопроходный компилятор выдавал код на ассемблере, далее приходилось транслировать его в объектный код, компоновать с системными библиотеками и только после этого запускать программу. Поиск ошибок {без встроенного отладчика, который сейчас просто показывает вам строку c ошибкой} был делом, требующим терпения, и большого количества времени.

Когда возникла операционная система Windows, эта же фирма создала мощную среду программирования Delphi на основе существенно расширенного языка Паскаль {Object Pascal}.
Задача №1

program z1; {Курсовая работа задача №1}

const n1=20; {Разнамерность массива}

var a:array[1..n1,1..n1] of integer;

m,n,i,j,l,sm,b:integer; {Объявления массива и переменных}

begin

randomize;

writeln('Введите кол-во строк');

readln(m);

if (m<1) or (m>n1) then

begin

writeln('Количество строк должно быть меньше 20');

exit;

end;

writeln('Введите кол-во столбцов');


readln(n);

if (n<1) or (n>n1) then

begin

writeln('Количество столбцов должно быть меньше 20');

exit;

end;

for i:=1 to m do

for j:=1 to n do

a[i,j]:=random(20); {Заполнение массива случайными числами}

for i:=1 to m do {идем по строкам}

begin

sm:=0;

for j:=1 to n do );{Обнуляем сумму,проходим по столбцу}

sm:=sm+a[i,j];

a[i,n+1]:=sm; {Записываем сумму в отдельную строку}

end;

writeln('Исходная матрица:');

writeln('Сумма');

for i:=1 to m do

begin

for j:=1 to n+1 do

if j<=n then write(a[i,j]:4) {Сама матрица}

else write(a[i,j]:6); {Дополнительный столбец}

writeln;

end;

for i:=1 to m-1 do {Сортируем все строки матрицы по возрастанию}

for l:=i+1 to m do

if a[i,n+1]>a[l,n+1] then

for j:=1 to n+1 do

begin

b:=a[i,j];

a[i,j]:=a[l,j];

a[l,j]:=b;

end;

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

writeln('Сумма');

for i:=1 to m do

begin

for j:=1 to n+1 do

if j<=n then write(a[i,j]:4)

else write(a[i,j]:6);

writeln;

end;

readln

end.




Задача №2

Program z2; {Курсовая работа задача №2}

Const n=10;di=pi/4;

Var Y:array[1..n] of real;

k:byte;

z,i,x,p:real; {Объявления массива и переменных}

Begin

randomize;

write('vvedite x: ');readln(x);

writeln('Massiv Y');

For k:=1 to n do

Begin

Y[k]:=random(10)+1; {Заполнение массива случайными числами}

write(Y[k]:5:2);

End;

writeln;

i:=-pi;p:=1; {Присвоение i значение пи}

While i<=pi do

Begin

p:=p*sin(i+x); {Произведение }

i:=i+di;

End;

For k:=1 to n do

z:=z+y[k]*p; {Функция}

writeln('Summa p = ',z:0:2);

readln;

End.



Задача №3

Program z3; {Курсовая работа задача №3}

var

a: array[1..20,1..20] of integer;

n,m,i,j,imin,jmin,imax,jmax,x: integer;

{Объявления массива и переменных}
begin

randomize;

imin:=1; jmin:=1; imax:=1; jmax:=1; {Присвоение минимальных и максисальных значений еденице}

write('Введите размеры матрицы n, m: ');

readln(n,m);

writeln('Исходная матрица:');

for i:=1 to n do

begin

for j:=1 to m do

begin

a[i,j]:=random(200)+1; {Заполнение массива случайными числами}

write(a[i,j]:4);

if a[i,j]>a[imax,jmax] then

begin

imax:=i;

jmax:=j; {Максимальные значения}


end else

if a[i,j]then

begin

imin:=i;

jmin:=j; {Минимальные значения}

end;

end;

writeln;

end;

writeln('Минимум = a[',imin,',',jmin,'] = ',a[imin,jmin]);

writeln('Максимум = a[',imax,',',jmax,'] = ',a[imax,jmax]);

for j:=1 to m do

begin

x:=a[imax,j];

a[imax,j]:=a[imin,j];

a[imin,j]:=x; {Перестановка максимального и минимального значений }

end;

writeln('Полученная матрица:');

for i:=1 to n do

begin

for j:=1 to m do

write(a[i,j]:4);

writeln;

end;

end.



Заключение

Pascal - один из языков программирования, который помогает писать «структурированные» программы в таком виде, в котором структура программы должна непосредственно отражать структуру задачи. Эта особенность языка Pascal, а также его достаточная простота из-за интуитивной понятийности его конструкций, позволила языку завоевать прочное место среди языков программирования. Современным достижением программирования является признание преимущества структурированных программ.