Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Информатика. Часть 2

Покупка
Новинка
Артикул: 845865.01.99
Доступ онлайн
194 ₽
В корзину
Практикум содержит теоретический материал и практические задания по выполнению и защите лабораторных работ. В каждой работе рассмотрен пример алгоритма решения задачи на языке программирования Pascal, представлен перечень контрольных вопросов. Пособие содержит примеры оформления программного продукта и требования к оформлению отчетной документации, формирует основы навыков программирования на языках высокого уровня. Практикум разработан в соответствии с требованиями ФГОС ВПО по направлению подготовки 44.03.05 «Педагогическое образование» (с двумя профилями подготовки) (одним из профилей является «Информатика»), по направлениям, базирующимся на информатике: «ИС», «ИВТ», «ПО(ИВТ)», «ПМИ», «ИБ». Предназначен для студентов вышеперечисленных направлений и профилей подготовки. Рекомендовано также слушателям программ дополнительного профессионального образования соответствующего направления подготовки.
Алтухова, С. О. Информатика. Часть 2 : практикум / С. О. Алтухова, З. А. Кононова. - 2-е изд., доп. и перераб. - Липецк : ЛГПУ имени П. П. Семёнова-Тян-Шанского, 2024. - 97 с. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2178161 (дата обращения: 24.11.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
 
 
 
 
 
 
 
С.О. Алтухова, З.А. Кононова 
 
 
 
ИНФОРМАТИКА 
 
Практикум  
Часть 2 
Издание 2-е, дополненное и переработанное 
 
 
 
 
 
 
 
Липецк  
 2024 
 


 
МИНИСТЕРСТВО ПРОСВЕЩЕНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ 
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ 
УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ 
«ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ  
ИМЕНИ П.П. СЕМЕНОВА-ТЯН-ШАНСКОГО» 
 
Институт естественных, математических и технических наук 
Кафедра информатики, информационных технологий и защиты информации 
 
 
 
 
 
 
 
С.О. Алтухова, З.А. Кононова 
 
 
ИНФОРМАТИКА 
 
Практикум 
 
Часть 2 
 
 
 
Издание 2-е, дополненное и переработанное 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Липецк  
 2024 
 
 


 
УДК 004.43 
ББК 32.973.3 
А52 
Рекомендовано к печати  
кафедрой информатики, информационных 
технологий и защиты информации  
ЛГПУ имени П.П. Семенова-Тян-Шанского. 
Протокол № 5 от 08. 02.2024 г. 
 
     Алтухова, С.О. Информатика: практикум / С.О. Алтухова, З.А. Кононова. 
– Издание 2-е, дополненное и переработанное – Липецк: ЛГПУ имени  
П.П. Семенова-Тян-Шанского, 2024. – Ч. 2. – 100 с. 
 
Практикум содержит теоретический материал и практические задания по 
выполнению и защите лабораторных работ. В каждой работе рассмотрен пример алгоритма решения задачи на языке программирования Pascal, представлен 
перечень контрольных вопросов. Пособие содержит примеры оформления программного продукта и требования к оформлению отчетной документации, формирует основы навыков программирования на языках высокого уровня. Практикум разработан в соответствии с требованиями ФГОС ВПО по направлению 
подготовки 44.03.05 «Педагогическое образование» (с двумя профилями подготовки) (одним из профилей является  «Информатика»), по направлениям, базирующимся на информатике: «ИС», «ИВТ», «ПО(ИВТ)», «ПМИ», «ИБ». Предназначен для студентов вышеперечисленных направлений и профилей подготовки. Рекомендовано также слушателям программ дополнительного профессионального образования соответствующего направления подготовки. 
 
 
 
УДК 004.43 
ББК 32.937.3 
                                                                               А52 
Рецензенты: 
С.В. Мицук, канд. ф.-м. наук, доцент кафедры ИИТиЗИ,  
ФГБОУ ВО «Липецкий государственный педагогический  
университет имени П.П. Семенова-Тян-Шанского»; 
Е.В. Клейменова, канд. пед. наук, доцент кафедры гуманитарных и  
естественнонаучных дисциплин, Липецкий филиал РАНХиГС 
 
 
 
 
© ФГБОУ ВО «Липецкий государственный педагогический университет имени  
П.П. Семенова-Тян-Шанского», 2024 
© С.О. Алтухова, 2024 
© З.А. Кононова, 2024 


ОГЛАВЛЕНИЕ 
 
 
ПРЕДИСЛОВИЕ 
.......................................................................................................... 4 
1. ТРЕБОВАНИЯ К ОФОРМЛЕНИЮ ОТЧЕТА ..................................................... 5 
ПО ЛАБОРАТОРНОЙ РАБОТЕ 
................................................................................ 5 
2. ПОРЯДОК ЗАЩИТЫ ЛАБОРАТОРНОЙ РАБОТЫ 
........................................... 5 
3. ЛАБОРАТОРНЫЕ РАБОТЫ ................................................................................. 6 
Лабораторная работа №7 «Двумерные массивы. Сортировка и поиск» ............... 6 
ТЕОРЕТИЧЕСКАЯ ЧАСТЬ .................................................................................... 6 
ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №7 
................................................... 23 
Контрольные вопросы для защиты лабораторной работы №7 ......................... 25 
Лабораторная работа №8 «Подпрограммы» 
........................................................... 26 
ТЕОРЕТИЧЕСКАЯ ЧАСТЬ .................................................................................. 26 
ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №8 
................................................... 37 
Контрольные вопросы для защиты лабораторной работы №8 ......................... 39 
Лабораторная работа №9 «Записи и множества» .................................................. 40 
ТЕОРЕТИЧЕСКАЯ ЧАСТЬ .................................................................................. 40 
ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №9 
................................................... 52 
Контрольные вопросы для защиты лабораторной работы №9 ......................... 54 
Лабораторная работа №10 «Файлы» ....................................................................... 55 
ТЕОРЕТИЧЕСКАЯ ЧАСТЬ .................................................................................. 55 
ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №10 
................................................. 67 
Контрольные вопросы для защиты лабораторной работы №10 ....................... 71 
Лабораторная работа №11 «Графика» .................................................................... 72 
ТЕОРЕТИЧЕСКАЯ ЧАСТЬ .................................................................................. 72 
ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №11 
................................................. 86 
Контрольные вопросы для защиты лабораторной работы №11 ....................... 86 
Лабораторная работа № 12 «Модули пользователя» ............................................ 87 
ТЕОРЕТИЧЕСКАЯ ЧАСТЬ .................................................................................. 87 
ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТЕ №12 
................................................. 93 
Контрольные вопросы для защиты лабораторной работы №12 ....................... 93 
СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ ................................................... 94 
 СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ………………………………..94 
 
 
 
 
 
 
 
3 
 


 
 
ПРЕДИСЛОВИЕ 
Дисциплины «Информатика» является профилирующей дисциплиной в 
системе компьютерной подготовки студентов 1-2 курсов направления подготовки 44.03.05 «Педагогическое образование» (профили «Информатика и математика», «Информатика и дополнительное образование в области робототехники и конструирования», «Информатика и дополнительное образование в области цифровых образовательных ресурсов», «Математика и информатика») и 
других профилей, связанных с информатикой. 
Цель курса – изучить основы программирования на языке Pascal, познакомиться с новейшими системами и технологиями программирования, которые 
позволят в дальнейшем быстро осваивать вновь появляющиеся системы программирования и создавать с их помощью прикладное программное обеспечение для организации, проведения учебно-воспитательного процесса и других 
сфер человеческой деятельности, а также развивать свои навыки программирования.  
Настоящее издание носит характер методических указаний. Оно позволяет глубоко освоить технологию процедурного программирования, сформировать навыки создания законченного программного продукта, включающего в 
себя: 
- постановку задачи; 
- разработку блок-схемы алгоритма решения задачи; 
- реализацию алгоритма с использованием принципов модульного программирования. 
Задания, представленные в практикуме, взяты из книг, включенных в 
список используемой литературы [3-7]. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4 
 


 
 
1. ТРЕБОВАНИЯ К ОФОРМЛЕНИЮ ОТЧЕТА  
ПО ЛАБОРАТОРНОЙ РАБОТЕ 
 
Отчет по каждой лабораторной работе должен содержать следующую 
информацию: 
1. Название лабораторной работы. 
2. Содержание задания Вашего варианта. 
3. Описание структуры данных: входные и выходные данные, их тип, 
диапазон допустимых в данной задаче значений. 
4. Блок-схему алгоритма решения задачи. 
5. Код программы. 
6. Контрольный пример. 
 
2. ПОРЯДОК ЗАЩИТЫ ЛАБОРАТОРНОЙ РАБОТЫ 
 
Порядок выполнения лабораторных работ осуществляется в соответствии 
с индивидуальным заданием (вариантом, номер которого определяет преподаватель) во время, отведенное для индивидуальной самостоятельной работы студентов в соответствии с расписанием. 
Студент набирает и отлаживает программу и демонстрирует преподавателю правильность работы программы путем проверки ее контрольным примером. Преподаватель визирует в отчете отлаженную программу и допускает студента до защиты лабораторной работы. 
Защита лабораторной работы осуществляется в устной форме по контрольным 
вопросам, представленным в конце каждой работы. 
 
 
 
 
 
5 
 


 
3. ЛАБОРАТОРНЫЕ РАБОТЫ 
 
Лабораторная работа №7 «Двумерные массивы. Сортировка и поиск» 
 
ТЕОРЕТИЧЕСКАЯ ЧАСТЬ 
 
Двумерный массив трактуется как одномерный массив, тип элементов 
которого также является одномерным массивом. Таким образом, двумерный 
массив – это массив массивов. Представляется такой массив в виде прямоугольной таблицы или матрицы (рис. 1). 
 
 
 
 
 
 
столбцы  
 
 
 
 
 
 
1 
2 
3 
… 
n 
 
 
 
 
 
1 
 X11 
X12 
X13 
… 
X1n 
2 
 X21 
X22 
X23 
… 
X2n 
3 
 X31 
X32 
X33 
… 
X3n 
 строки 
…  
… 
… 
… 
… 
… 
m  Xm1 Xm2 Xm3 
… 
Xmn 
 
5 
-1 
7 
ЭЛЕМЕНТЫ 
11 
12 
13 
-10 
0 
5 
X 
ИМЯ МАССИВА 
21 
22 
23 
3 
2 
4 
ИНДЕКСЫ 
31 
32 
33 
 
 
 
 
 
 
 
 
 
 
 
Рисунок 1– Представление двумерного массива 
 
 
Таким образом, каждый элемент двумерного массива однозначно определяется именем массива и индексами (номерами строки и столбца этого элемента 
в массиве).  
 
 
 
 
 
6 
 


 
Примеры объявлений двумерных массивов: 
 
Type tm=Array [1..10, 1..100] of real; 
Const n=6, m=10; 
Var  
       Arr1, Arr2: tm; 
       Arr3: Array [1..n, 1..m] of integer; 
       Arr4: Array [0..10, 1..20] char; 
 
Для обращения к отдельному элементу массива указывается  имя этого 
массива и номер элемента, заключенный в квадратные скобки. Например, (см.: 
рис.1) X[2,1] (будет получено значение -10) или А[3,3] (значение 4). 
 
 
 
Матрица, в которой количество строк и столбцов одинаковое, 
называется 
квадратной 
матрицей 
и 
обозначается                 
матрица n × n. 
 
 
 
Главная и побочная диагонали при работе с  
квадратными матрицами 
 
Главная диагональ квадратной матрицы n × проходит с верхнего левого 
угла матрицы (элемент 1,1) до правого нижнего угла матрицы (элемент n,n) 
(рис. 2 а). 
Побочная диагональ квадратной матрицы n × n проходит с нижнего левого угла матрицы (элемент n,1) до правого верхнего угла матрицы (элемент 1,n) 
(рис 2 б). 
 
 б) 
X11 
X12 
X13 
… 
X1n 
X11 
X12 
X13 
… 
X1n 
X21 
X22 
X23 
… 
X2n 
X21 
X22 
X23 
… 
X2n 
X31 
X32 
X33 
… 
X3n 
X31 
X32 
X33 
… 
X3n 
… 
… 
… 
… 
… 
… 
… 
… 
… 
… 
Xn1 
Xn2 
Xn3 
 
Xnn 
Xn1 
Xn2 
Xn3 
 
Xnn 
а) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Рисунок 2 – Диагонали квадратной матрицы 
(а – главная диагональ, б – побочная диагональ) 
 
 
 
 
7 
 


 
Некоторые алгоритмы работы с двумерными массивами 
 
1. Заполнение двумерного массива случайными числами и вывод его на 
экран в виде матрицы 
 
var 
   x: array[1..100,1..100] of integer; 
   i,j,n,m: integer; 
   begin 
      randomize; 
      write('Введите количество строк '); 
      readln(n); 
      write('Введите количество столбцов '); 
      readln(m); 
      for i:=1 to n do                    // цикл для перебора всех строк 
      begin 
           for j:=1 to m do              // цикл для перебора всех столбцов 
           begin 
              x[i,j]:=random(10);      // ввод случайным образом элемента, стоящего  
                                                      // в i -й строке и j -м столбце 
              write(x[i,j]:4);               // печать элементов, стоящих в i -й строке матрицы                    
                                                      // в одной экранной строке, при этом для вывода  
                                                      // каждого элемента отводится 4 позиции 
           end; 
           writeln;                            // прежде, чем сменить номер строки в матрице,  
                                                     // необходимо перевести курсор на начало новой  
                                                     // экранной строки 
      end; 
  end. 
 
2. Отсортировать каждую строку двумерного массива по возрастанию 
значений элементов. 
 
const m=3; n=5; 
var x:array[1..m,1..n] of integer; 
   i,j,k:byte; 
   a:integer; 
begin 
randomize; 
{Заполнение двумерного массива случайными числами} 
for i:=1 to m do 
begin 
8 
 


 
     for j:=1 to n do 
     begin 
        x[i,j]:=random(10); 
        write(x[i,j]:4); 
     end; 
writeln; 
end; 
{Сортировка массива методом пузырька} 
for i:=1 to m do 
      for j:=1 to n-1 do 
         for k:=j+1 to n do 
            if x[i,j]>x[i,k] then 
            begin 
               a:=x[i,j];            // a – буферная переменная, в которой хранится значение  
                                         // текущего элемента массива 
               x[i,j]:=x[i,k];     // текущий элемент заменяется значением следующего 
               x[i,k]:=a;           // значением следующего элемента становится значение  
                                         // буферной переменной 
            end; 
writeln('Сортировка: '); 
for i:=1 to m do 
begin 
      for j:=1 to n do 
         write(x[i,j]:4); 
writeln; 
end; 
end. 
 
Схематично замену значений двух переменных можно представить следующим образом: 
 
X1 
-10 
X2 
5 
а 
 
Исходное состояние: 
 
 
 
 
 
 
 
 
 
 
 
 
Процесс перестановки: 
1 шаг 
 
 
 
 
 
X1 
-10 
X2 
5 
а 
-10
 
 
 
 
 
X1 
5 
X2 
5 
а 
-10
 
 
 
 
  
2 шаг  
 
 
 
 
 
 
 
 
 
 
 
 
3 шаг 
 
 
 
 
 
 
X1 
5 
X2 
-10 
а 
-10
 
 
 
 
 
  
9 
 
 
 
 
 


Доступ онлайн
194 ₽
В корзину