- •Введение
- •1 Цели и задачи дисциплины
- •2 Методы и технологии разработки алгоритмов и программ
- •2.1 Сущность структурного программирования
- •2.1.1 Базовые управляющие структуры
- •2.1.2 Дополнительные управляющие структуры
- •2.2 Сущность процедурного программирования
- •2.3 Сущность модульного программирования
- •2.4 Сущность объектно-ориентированного программирования
- •3 Методические указания к выполнению лабораторных работ
- •Лабораторная работа №1 Работа с файлами в интегрированной среде программирования
- •Лабораторная работа №2 Отладка и тестирование программы
- •Текст программы
- •Лабораторная работа №3 Поразрядные логические операции
- •Варианты индивидуальных заданий
- •Пример решения для варианта задания вида:
- •Пример программы
- •Лабораторная работа №4 Поиск экстремума
- •Варианты индивидуальных заданий
- •Пример схемы алгоритма и текста программы определения экстремума для варианта задания вида:
- •Пример программы
- •Лабораторная работа №5 Определение принадлежности точки выделенным областям на плоскости
- •Варианты индивидуальных заданий
- •Пример схемы алгоритма и текст программы определения местоположения точки на плоскости для варианта задания вида:
- •Текст программы
- •Лабораторная работа №6 Многовариантные вычисления по ключу
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №7 Циклические вычисления на заданное число повторений.
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №8 Циклические вычисления с заданной точностью
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №9 Обработка одномерных массивов
- •Варианты индивидуальных заданий
- •Пример программы
- •Лабораторная работа №10 Обработка двумерных массивов
- •Варианты индивидуальных заданий
- •Пример программы
- •4 Методические указания к выполнению контрольных работ
- •Контрольная работа №1 Преобразование чисел из одной системы счисления в другие
- •Варианты индивидуальных заданий
- •Пример выполнения задания
- •Контрольная работа №2 Арифметические операции в двоичной, восьмеричной и шестнадцатеричной системах счисления
- •Варианты индивидуальных заданий
- •Пример выполнения задания
- •Библиографический список
Пример программы
Program ObrMas;
{Последовательный поиск и перестановка местами
минимального и максимального элементов в массиве
Входные данные: k - количество элементов в массиве,
M - массив из целых чисел.
Выходное данное: M - преобразованный массив.}
Const
R=10; {Размер массива}
Type
TInd=1..R; {Тип индекса элемента массива}
TElem=Integer; {Тип элемента массива}
TMas=Array [TInd] Of TElem; {Тип массив}
Var
k,i,nmin,nmax:TInd; {1..R}
M:TMas; {Исходный и преобразованный массив}
min,max:TElem; {Текущие значения минимума и максимума}
Begin
{$R+} {Установка режима контроля индекса элемента}
Write('Задайте количество элементов не более ',R,': ');
ReadLn(k);
{Ввод массива}
Write('Введите ',k,' целых чисел одной строкой:');
For i:=1 To k
Do Read(M[i]); {Ввод элемента массива}
{Поиск минимума и максимума в массиве}
min:=M[1];
nmin:=1; {Начальные установки минимума}
max:=M[1];
nmax:=1; {Начальные установки максимума}
For i:=2 To k {Перебор элементов массива}
Do If M[i]<min {Сравнение элемента с минимумом}
Then Begin
min:=M[i]; {Текущий минимум}
nmin:=i {Номер минимального элемента}
End
Else If M[i]>max {Сравнение элемента с максимумом}
Then Begin
max:=M[i]; {Текущий максимум}
nmax:=i {Номер максимального элемента}
End;
{Перестановка местами минимума и максимума}
M[nmin]:=max;
M[nmax]:=min;
{Вывод массива}
WriteLn('Массив после перестановки:');
For i:=1 To k
Do Write (M[i],' '); {Вывод элемента массива}
WriteLn;
End.
Лабораторная работа №10 Обработка двумерных массивов
Цель лабораторной работы: изучение структурной организации массивов и способов доступа к их элементам; совершенствование навыков процедурного программирования на языке Турбо Паскаль задач обработки массивов.
Задание на программирование: используя технологию процедурного программирования разработать программу обработки двумерных массивов в соответствии с индивидуальным заданием.
Порядок выполнения работы:
1) Получить у преподавателя индивидуальное задание и выполнить постановку задачи: сформулировать условие, определить входные и выходные данные, их ограничения.
2) Разработать математическую модель: описать с помощью формул и рисунков структуру массивов и процесс их преобразования.
3) Построить схему алгоритма решения задачи.
4) Составить спецификации необходимых подпрограмм: создания матрицы, вывода матрицы, обработки матрицы и др.
5) Составить программу на языке Турбо Паскаль.
6) Входные данные вводить с клавиатуры по запросу.
7) Выходные данные выводить на экран с пояснениями.
8) Проверить и продемонстрировать преподавателю работу программы на полном наборе тестов, в том числе с ошибочными входными данными. Входные и выходные массивы должны выводиться в одном и том же формате.
9) Оформить отчет о лабораторной работе в составе: постановка задачи, математическая модель, схема алгоритма решения, текст программы, спецификация подпрограмм, контрольные примеры.
