ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 06.11.2023
Просмотров: 25
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Министерство науки и высшего образования Российской Федерации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Федеральное государственное бюджетное образовательное учреждение | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
высшего образования | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«Саратовский государственный технический университет имени Гагарина Ю.А.» | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Институт Энергетики | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Кафедра «Электроэнергетика и электротехника» | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Направление 13.03.02 «Электроэнергетика и электротехника» | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
КОНТРОЛЬНАЯ РАБОТА | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
по дисциплине | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Информатика | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
наименование дисциплины по учебному плану | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
на тему: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
«Язык программирования PASCAL.ABC» | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
наименование темы/вариант | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Студент (-ка) | Иванов Иван Иванович | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Фамилия, имя, отчество студента | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
курса | 1 | группы | б1-ЭЛЭТз11 | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
№ зач. кн. | 212813 | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | | | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Оценка | | « | | » | | 20 | 23 | г. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (цифрой и прописью) | | | | (дата) | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Преподаватель: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
доцент, к.т.н. | | | | /В.В.Ермолаева/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
должность, ученая степень, уч. звание | | подпись | | Инициалы Фамилия | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| | | | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Саратов – 2023 |
РЕФЕРАТ
Контрольная работа состоит из пояснительной записки, выполненной в текстовом редакторе Microsoft Office Word 2010, на 21 страницах машинописного текста.
Целью контрольной работы является освоение языка программирования Паскаль и системы программирования PascalABC.NET. Для достижения цели производится анализ постановки задачи, составление алгоритма решения задачи с помощью блок - схемы, разработка и отладка программного кода, получение результатов работы программы при различных исходных данных, что позволяет сделать вывод о корректности алгоритма и кода программы.
Задачами работы являются составление алгоритмов и программ различных видов: для работы с двумерными массивами, разветвляющимися алгоритмами, для обработки строк, для работы с циклическими алгоритмами, выполняемыми с фиксированным числом повторений или до выполнения заданного условия.
В задании 1 рассматриваются алгоритмы работы с двумерными массивами (матрицами) с помощью арифметических циклов с фиксированным числом повторений.
В задании 2 приводятся расчеты вычисления функции на заданном интервале изменения аргумента с заданным шагом изменения аргумента. Вид функции меняется в зависимости от значения аргумента.
В задании 3 рассматривается сравнение строковых переменных.
В задании 4 приводятся расчеты вычисления объема конуса, заданного основанием и высотой.
В задании 5 приводятся расчеты вычисления суммы ряда для заданного количества членов ряда. Вычисления проводятся с помощью циклического алгоритма.
В задании 6 производится нахождение корней функции с помощью метода деления отрезка пополам. При вычислении производится выдача промежуточных результатов работы алгоритма.
В заключении приводятся основные результаты, полученные в ходе выполнения контрольной работы.
Задание 1 вариант 12
Изменить матрицу, заменив каждый отрицательный элемент, лежащий выше главной диагонали, его абсолютной величиной. Найти также сумму элементов главной диагонали.
Блок-схема программы task_1:
Текст программы task_1 на языке Паскаль:
{Задание №1 Вариант №12
Изменить матрицу, заменив каждый отрицательный элемент,
лежащий выше главной диагонали, его абсолютной величиной.
Найти также сумму элементов главной диагонали}
{Константы и переменные}
const
Dim_A = 20;{Максимальная размерность матрицы}
var
N: Integer; {Размерность матрицы}
A: Array[1..Dim_A, 1..Dim_A] of Real;{Матрица из действительных элементов}
S: Real;{Сумма гл. диагонали}
I, J: Integer;{Параметры циклов}
{ Основная программа}
begin
Writeln('Задание №1');
Writeln('Вариант №12');
Writeln('----------------------------------');
{Ввод размерности матрицы}
Write('Размерность матрицы=');
Readln(N);
if N > Dim_A Then N := Dim_A;
{Ввод элементов матрицы и нахождение ср. арифм. гл. диагонали}
S := 0;
for I := 1 To N Do
for J := 1 To N Do
begin
Write('Элемент ', I, '-', J, '=');
Readln(A[I, J]);
if I = J Then S := S + A[I, J];
end;{For J}
{Вывод матрицы на экран по строкам}
Writeln('Введена матрица:');
Writeln('----------------------------------');
for I := 1 to N Do
begin
for J := 1 To N Do
Write(A[I, J]:6:2, ' ');
Writeln;
end;{For I}
{Замена отр. эл-тов выше гл. диагонали}
for I := 1 To N Do {Цикл по всем строкам}
for J := I + 1 To N Do {Цикл по элементам ниже гл. диагонали}
if A[I, J] < 0 Then A[I, J] := Abs(A[I, J]);
{Выдача результатов}
Writeln('Измененная матрица:');
Writeln('----------------------------------');
for I := 1 to N Do
begin
for J := 1 To N Do
Write(A[I, J]:6:2, ' ');
Writeln;
end;{For I}
Writeln('Сумма эл-тов гл. диагонали=', S:9:2);
Writeln('Нажмите Enter для завершения');
Readln;
end.
Результаты работы программы task_1:
-
Матрица 5х5. Элементами матрицы являются положительные и отрицательные числа.
.
-
Матрица 4х4 с положительными элементами.
.
Задание 2 вариант 12
g(x) = , для x[-0,1;5], hx = 0,39
Блок-схема программы task_2:
Текст программы task_2 на языке Паскаль:
{Задание №2 Вариант 12
Вычислить значения функции на интервале [-0.1..5]
с шагом 0.39}
{Описание переменных}
var
X: Real; {Аргумент}
XN, XK: Real;{Границы отрезка}
Hx: Real; {Шаг}
F: Real; {Функция}
NF: Integer;{Номер формулы для функции}
{Основная программа }
begin
Writeln('Задание №2 Вариант №12');
Writeln('-----------------------------------');
Write('Начало отрезка(-0.1)=');
Readln(XN);
Write('Конец отрезка(5)=');
Readln(XK);
Write('Шаг изменения аргумента(0.39)=');
Readln(Hx);
Writeln('Значения функции на интервале [', XN:6:2, '..', XK:6:2, '] c шагом ', Hx:6:2);
Writeln('-----------------------------------');
X:=XN;
while X <= XK Do {Цикл пока X<=XK}
begin
if X > 3
Then begin F := X + 1 / X; NF := 1; end
Else begin F := X * X + 1; NF := 2; end;
Writeln('X=', X:6:2, ' F(X)=', F:9:6, ' Формула N', NF); {Вывод значения аргумента и функции}
X := X + Hx;{Переход к следующему значению аргумента}
end;{While}
Writeln('-----------------------------------');
Writeln('Нажмите Enter для завершения');
Readln;
end.
Результаты работы программы task_2:
Задание 3 вариант 12
Написать программу, в которой:
-
запрашивается номер школы, которую закончил студент; -
сравнивается введенная информация со значением строковой переменной (заданным в программе),; -
выводится на экран сообщение (совпал или не совпал номер школы).
Блок-схема программы task_3:
Текст программы task_3 на языке Паскаль:
{Задание №3 Вариант №12
Написать программу, в которой:
a. запрашивается номер школы, которую закончил студент;
b. сравнивается введенная информация со значением строковой переменной (заданным в программе),;
c. выводится на экран сообщение (совпал или не совпал номер школы).
}
{Описание переменных}
var
S_Sravn,{Строка для сравнения}
S_School: String;{Вводимая строка}
{Основная программа}
begin
Writeln('Задание №3 Вариант №12');
Writeln('-------------------------------');
Write('Введите номер школы для сравнения==>');
Readln(S_Sravn);
Writeln('Задан номер школы ', S_Sravn);
repeat{Бесконечный цикл ввода строки для сравнения}
Write('Введите номер школы (пустая строка - завершение)==>');
Readln(S_School);
if S_School = '' Then Break;{Введена пустая строка, завершаем}
Write('Номер школы ', S_School);
if S_School <> S_Sravn Then Write(' не ');
Writeln(' совпадает с ', S_Sravn);
until False;{Конец цикла ввода строки}
Writeln('Нажмите Enter для завершения');
Readln;
end.
Результаты работы программы task_3:
В программе производится ввод номера школы для сравнения.
Затем в цикле производится ввод строки
, в которой содержится номер школы.
Введенная строка сравнивается с заданной строкой.
Завершение цикла ввода строки – пустая строка.
Задание 4 вариант 12
Написать программу для нахождения объёма конуса по основанию и высоте. Считаем, что основание конуса задано радиусом окружности R, высота конусаh.
Объем конуса вычисляется как
где S – площадь основания, вычисляемая по формуле
S=πR2
Блок-схема программы task_4:
Текст программы task_4 на языке Паскаль:
{Задание №4 Вариант №12
Написать программу для нахождения объёма конуса по основанию и высоте.}
{Описание переменных}
var
R: Real; {Радиус основания}
H: Real; {Высота конуса}
S: Real;{Площадь основания}
V: Real;{Объем конуса}
{Основная программа}
begin
Writeln('Задание №4 Вариант №12');
Writeln('-------------------------');
Write('Радиус основания R=');
Readln(R);
Write('Высота H=');
Readln(H);
{Вычисление площади основания}
S := Pi * R * R;
Writeln('Площадь основания=', S:9:2);
{Вычисление объема}
V := S / 3 * H;
Writeln('Объем конуса=', V:9:3);
Writeln('-------------------------');
Writeln('Нажмите Enter для завершения');
Readln;
end.
Результаты работы программы task_4:
Задание 5 вариант 12
Написать программу для нахождения значения переменной S по формуле:
Выражение представляет из себя сумму n членов ряда, n член ряда представляет выражение n2.
Сумма может быть вычислена в цикле с фиксированным числом повторений n.
Блок-схема программы task_5:
Текст программы task_5 на языке Паскаль:
{Задание №5 Вариант №12
Написать программу для нахождения значения переменной S по формуле:
S=1+2^2+...+n^2}
{Описание переменных}
var
N: Integer; {Значение N}
I: Integer;{Параметр цикла}
S: Double;{Сумма ряда. Может быть большим числом}
{Основная программа}
begin
Writeln('Задание №5 Вариант №12');
Writeln('-------------------------');
Write('Введите N=');