
- •230701 Прикладная информатика (по отраслям)
- •Содержание
- •Требования к минимуму содержания основной профессиональной образовательной программы по специальности 080802 Прикладная информатика (по отраслям)
- •Рабочая программа
- •Пояснительная записка
- •Тематический план учебной дисциплины
- •Содержание учебной дисциплины
- •Тема 1.4. Составление алгоритмов с помощью блок-схем
- •Тема 1.5. Методы и правила надежного программирования. Способы конструирования программ
- •Раздел IV. Процедуры и функции.
- •Тема 4.1. Подпрограммы
- •Тема 4.2. Параметры и аргументы, связь формальных и фактических параметров
- •Раздел V. Программирование рекурсивных алгоритмов
- •Тема 5.1. Рекурсивные процедуры и функции
- •Тема 5.2. Примеры рекурсивного программирования
- •Раздел VIII. Ввод и вывод информации: текстовые файлы
- •Тема 8.1. Файлы и их виды
- •Тема 8.2. Оперирование текстовыми файлами.
- •Раздел IX. Структурированный тип записи
- •Тема 9.1. Записи и их описание
- •Тема 9.2. Использование таблиц с разнотипными полями. Записи.
- •Раздел X. Модульное программирование
- •Тема 10.1. Методы работы с модулями. Стандартные модули языка Pascal.
- •Тема 10.2. Создание модульных программ
- •Критерии оценок
- •Литература
- •Теоретический курс Основные понятия языка Состав языка
- •Алфавит и лексемы
- •Константы
- •Имена, ключевые слова и знаки операций
- •Типы данных
- •Классификация типов
- •Стандартные типы данных Логические типы
- •Целые типы
- •Вещественные типы
- •Символьный тип
- •Порядковые типы
- •Приведение типов
- •Линейные программы
- •Переменные
- •Выражения
- •Структура программы
- •Оператор присваивания
- •Процедуры ввода-вывода
- •Ввод с клавиатуры
- •Вывод на экран
- •Операторы ветвления
- •Условный оператор if
- •Оператор варианта case
- •Операторы цикла
- •Цикл с предусловием while
- •Цикл с постусловием repeat
- •Цикл с параметром for
- •Рекомендации по использованию циклов
- •Процедуры передачи управления
- •Оператор перехода goto
- •Перечисляемый тип данных
- •Интервальный тип данных
- •Массивы
- •Двумерные массивы
- •Операции
- •Процедуры и функции для работы со строками
- •Множества
- •Операции над множествами
- •Текстовые файлы
- •Бестиповые файлы
- •Компонентные файлы
- •Прямой доступ
- •Совместимость типов
- •Совместимость по присваиванию
- •Подпрограммы
- •Процедуры
- •Функции
- •Глобальные и локальные переменные
- •Виды параметров подпрограмм
- •Параметры-значения
- •Параметры-переменные
- •Параметры-константы
- •Открытые массивы и строки
- •Параметры процедурного типа
- •Рекурсивные подпрограммы
- •Описание модулей
- •Использование модулей
- •Стандартные модули Паскаля
- •Модуль System
- •Модуль Crt
- •Модули Dos и WinDos
- •Модуль Graph
- •Модуль Strings
- •Задания для самостоятельной работы студентов
- •1. Знакомство с интегрированной средой программирования pascal
- •1. Общие положения
- •Начало работы
- •Интерфейс ide
- •Комбинации клавиш
- •2. Подготовка текста программы
- •5. Компиляция
- •5.1. Ошибки времени компиляции
- •6. Пробный запуск программы на выполнение
- •6.1. Ошибки времени выполнения программы
- •7. Запуск программы на исполнение
- •8. Завершение работы
- •9. Практическое задание
- •2. Организация работы программ линейной структуры
- •1. Управление режимами вывода данных на экран дисплея
- •1.1. Управление положением курсора на экране монитора
- •1.2. Стандартный модуль crt. Подключение модулей с помощью Uses. Процедура очистки экрана дисплея ClrScr. Функция ReadKey
- •1.3. Процедуры работы с цветом (TextColor,TextBackground)
- •2. Практическое задание – решение задач линейной структуры
- •3. Решение задач с условием
- •3. Составной оператор
- •Практическое задание – решение задач с условием
- •4. Решение задач на множественный выбор
- •5. Организация циклов с помощью оператора for
- •1.Особенности циклов
- •2. Оператор цикла с параметром (со счетчиком) for ... Do
- •3. Вложенные циклы
- •2.1. Структура вложенных циклов
- •6. Организация циклов с помощью оператора while
- •7. Организация циклов с помощью оператора repeat
- •8. Организация программ с использованием процедур
- •1. Общие положения
- •2. Описание процедуры, оператор процедуры
- •2.1. Формальные и фактические параметры
- •2.2. Параметры-значения и параметры-переменные
- •2.3. Область действия имен
- •2.4. Процедуры без параметров
- •3. Массив в процедуре
- •9. Организация программ с использованием функций
- •10. Организация программ с использованием рекурсий
- •1. Особенности рекурсии
- •11. Решение задач на обработку элементов одномерного массива
- •1. Стандартные операции с массивами
- •12. Решение задач на обработку элементов двумерного массива
- •1. Многомерные массивы
- •2. Ввод-вывод двумерного и многомерного массива
- •3. Стандартные (типовые) задачи на двумерных массивах
- •4. Практическое задание - решение задач с использованием массивов
- •13. Решение задач по обработке символьных данных
- •1. Таблица кодирования символов
- •Б азовая таблица кодировки ascii
- •2. Запись символов, специальные и управляющие символы
- •3. Операции отношения
- •4. Встроенные функции
- •14. Решение задач по обработке строковых данных
- •1. Внутреннее представление строки
- •2. Операции над строками
- •3. Строковые встроенные функции
- •4. Примеры использования процедур и функций
- •5. Практическое задание
- •Методические указания
- •15. Решение задач по обработке множественного типа
- •1. Описание множественного типа
- •2. Присваивание значений переменным множественного типа
- •3. Операции над множествами
- •3.6. Нахождение элемента во множестве
- •3.7. Приоритеты операций при работе с множествами
- •4. Практическое задание
- •16. Решение задач по обработке структурированного типа - запись
- •1. Описание записи
- •2. Обращение к элементу записи
- •3. Оператор присоединения
- •4. Практическое задание
- •Образцы контрольных работ
- •Контрольно-измерительные материалы
3.7. Приоритеты операций при работе с множествами
1) *
2) +,-
3) In, =,<>,<=,>=
В группы объединены операции равного приоритета. При этом последовательность выполнения операций одного приоритета определяется порядком их появления в выражении. Для изменения порядка выполнения используются круглые скобки.
Задача 1
Менеджер компьютерного магазина-салона регулярно получает информацию о технике, которую привозят на склады А, В, С. Русским названиям изделий поставлены номера 1-9, английским - имена tl - t9. Английские имена описаны с помощью перечислимого типа tovary. Составить программу, которая дает информацию об изделиях, имеющихся в наличии на складах А или В, но которых нет на складе С.
Program Lab15_l ;
Uses Crt;
Type tovary = (tl, t2, t3, t4, t5, t6, t7, t8, t9);
Const A : Set Of tovary = [tl, t3, t4, t5 ,t6 ,t9];
В : Set Of tovary = [tl, t2, t3, t5, t6, t8 ,t9];
С : Set Of tovary = [t3, t5, t6, t8];
Var tovar : tovary;
Begin
ClrScr;
WriteLn ('У нас такие товары:');
For tovar : = tl To t9 Do
If tovar In A + В - С Then
Case Ord (tovar) + 1 of
1 : WriteLn ('Компьютеры Dell Dimension');
2 : WriteLn ('Компьютеры IBM PC 300');
3 : WriteLn ('Компьютеры Celebriis XL, QL');
4 : WriteLn ('Принтеры Epson LX, LQ');
5 : WriteLn ('Принтеры HP LJ 5L');
6 : WriteLn ('Сканер Epson GT9000');
7 : WriteLn ('Дисковод CD-ROM');
8 : WriteLn ('Дискеты Verbatim 1.44Mb');
9 : WriteLn ('Дискеты Polaroid 1.44Mb')
End;
WriteLn;
WriteLn ('Мы ждем вас');
ReadLn;
End.
Протокол работы программы:
У нас такие товары:
Компьютеры Dell Dimension 2
Компьютеры IBM PC 300
Принтеры Epson LX, LQ
Дискеты Polaroid 1.44Mb
Мы ждем вас
В разделе типов задается список объектов (товаров), определяющий базовый тип (tovary), на основе которого построены множественные типы А, В, С. Исходные значения (перечень товаров, имеющихся в наличии) в множества А, В, С занесены с помощью типизированной константы. Далее в цикле перебираем все товары и по номеру товара (функция ORD) и, используя операцию включения In печатаем информацию об изделиях, имеющихся в наличии на складах А или В, но которых нет на складе С.
Задача 2
Дано натуральное число n (n <=100), определяющее возраст человека (в годах). Дать для этого числа наименование «год», «года» или «лет», например: 1 год, 24 года, 90 лет.
Program Lab15_2;
Uses Crt;
Var n: 1..100;
Begin
ClrScr;
Write ('Введите возраст');
ReadLn (n);
GoToXY (WhereX + 20, WhereY - 1);
If n in [ 11 .. 14] Then Write ('лет')
Else
Case n Mod 10 Of
1 : WriteLn ('год');
2 .. 4 : WriteLn ('года');
0, 5 ..9: WriteLn ('лет');
End;
ReadLn;
End.
Протокол работы программы:
Введите возраст 25 лет.
Искомые наименования зависят от остатка, полученного при делении числа п на 10. Исключение составляют числа 11, 12, 13, 14. Используем оператор ветвления If в полной форме, в одной из ветвей которого учитываем исключение с помощью оператора включения In. В другой ветви Else используем оператор выбора Case. Условие n In [11..14] истинное {True), если п является элементом множества [11, 12, 13, 14], оно заменяет составное условие (п> 10) and (n < 15).
Задача 3
В заданном множестве В удалить все числа, кратные 2.
Program Lab15_3;
Uses Crt;
Var B : Set Of 0.25;
i : byte;
Begin
ClrScr;
For i : = 1 To 25 Do
If (i In B) And (i Mod 2 = 0)
Then В : = В - [i];
{блок печати множества В}
For i : = 1 to 25 Do
If i In В Then Write (i: 3);
End.
Задача 4
Ввести строку символов и сформировать из нее множество Lat, содержащее латинские буквы из входной строки;
Program Lab15_4;
Uses Crt;
Var Lat : Set Of 'A'..'Z';
C, i: Char;
Begin
ClrScr;
ReadLn;
Lat : = []
Write ('Введите строку');
Repeat
Read (C);
If С In ['A'.. 'Z ']
Then Lat: = Lat + [C];
Until Eoln;
{Вывод множества Lat}
WriteLn ('Латинские буквы');
For I : = ' A ' To ' Z ' Do
If i In Lat Then Write (i: 2);
End.
Протокол работы программы. Введите строку: 45AFYB. Латинские буквы. А В F Y