
- •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. Стандартные (типовые) задачи на двумерных массивах
В стандартной матричной задаче может потребоваться:
получить новую матрицу (ввести матрицу) по заданному правилу;
найти какую-либо величину, используя элементы данной матрицы;
преобразовать матрицу требуемым образом;
определить, обладает ли матрица (ее один или несколько элементов, строка, столбец) указанным свойством;
выполнить ту или иную операцию над матрицей (матрицами).
Задача 2 иллюстрирует использование вложенных циклов при вычислении двойных сумм.
Задача 2
Вычислить:
.
{$N +, Е}
PROGRAM Lab12_2;
Uses Crt;
var
sum: extended;
i, j : 1..100;
begin
ClrScr;
sum : = 0;
Textcolor (LighlRed);
For i:=1 to 100 do
For j:=1 to 50 do
Sum:=sum+1/(1+sqr(j));
WriteLn (' Сумма равна ', sum);
ReadKey;
End.
Пояснения к задаче 2
Заданная сумма sum суть:
1/(1 + 12) + 1/(1 + 22) + ... + 1/(1 + 502) + 1/(2 + 12) + 1/(2 + 22) + ... + 1/(2 + 502) + 1/(100 + 12) + 1/(100 + 22) + ... + 1/(100 + 502);
sum содержит 100 * 50 = 5 000 слагаемых, поэтому тип переменной, где будет копиться сумма sum, объявим extended , иначе, если объявить Real, будет переполнение.
В программе идет перебор всех значений по индексу i, который меняется от 1 до 100 (внешний цикл), и перебор всех значений по индексу j, который меняется от 1 до 50 (внутренний цикл). Обратите внимание, что до входа в цикл начальное значение суммы приравнивается к нулю (sum : = 0).
4. Практическое задание - решение задач с использованием массивов
Методические указания
Определить алгоритм решения задачи, записать намеченный алгоритм в виде блок-схемы программы.
Подобрать контрольный пример.
Организовать ввод (вывод) исходных данных массива, вывод результатов вычислений, используя разные способы ввода информации в массив: клавиатуру, датчик случайных чисел, сложные константы в блоке Const.
Приступить к написанию программы в ИСП.
Вариант 1
Составить алгоритм, который строит последовательность из 10 случайных чисел, запоминает ее и выводит на экран.
При предоставлении работнику ежегодно оплачиваемого отпуска в п трудовых дней ему начисляются отпускные следующим образом: вычисляется средняя зарплата за последние 12 месяцев, которая делится на 25,4 и умножается на n. Построить алгоритм, запрашивающий необходимые данные и печатающий размер выплаты для n = 12, n = 24, n = 36.
В целочисленной таблице размером в 7 строк и 7 столбцов найти:
а) число нулевых элементов, расположенных в нечетных строках;
б) число элементов, равных (-1), расположенных в четных строках.
Вариант 2
В одномерном массиве заменить все элементы с нулевыми значениями на единицу.
Имеются данные о ценах на десять видов товаров. Определить номер самого дорогого товара, который намерен приобрести покупатель, имеющий заданную сумму денег.
Просуммировать элементы строк матрицы размером 4*3. Результат получить в одномерном массиве размером 4.
Вариант 3
Заполнить массив А[1 : 10] случайными числами, вывести на печать содержимое элементов массива с нечетными индексами.
В таблицу занесена последовательность из 10 чисел, взятых в промежутке от -5 до 5. Найти:
а) наименьший член последовательности;
б) наименьший из положительных членов;
в) наибольшее из всевозможных попарных произведений.
Заданы матрица размером N * N и число К. Разделить элементы К-й строки на диагональный элемент, расположенный в этой строке.
Вариант 4
В заданном массиве В[1 : 6] найти индекс элемента, равного числу Р. Предусмотреть случай, когда такого элемента не будет.
Найти сумму элементов одномерного массива размером 4. Разделить каждый элемент исходного массива на полученное значение. Результат получить в том же массиве. Напечатать в одной строке.
В матрице А[1 : X, 1 : R] найти количество элементов, которые по модулю меньше заданного числа Т.
Вариант 5
В массиве А[1 : 10] поменять местами элементы 2 и 7.
Решить уравнение ах = b для пяти пар значений а и b, заданных в виде двух массивов. Результат поместить в массив X.
Из предложенного одномерного массива длины N сформировать двумерный массив так, чтобы первая строка нового массива содержала четные по номеру элементы исходного массива, а вторая - нечетные (предусмотреть случай нечетности N).
Вариант 6
Заполнить линейный массив из N элементов числами от -15 до 15 и вывести на экран сумму всех его отрицательных элементов.
В массиве А [ 1:10] определить:
а) количество элементов, которые меньше -3;
б) номер первого такого элемента (если он есть);
в) номер последнего такого элемента.
Массив А[1 : N, 1 : М] содержит два одинаковых элемента. Требуется напечатать их индексы.
Вариант 7
В произвольном одномерном массиве поменять местами элементы в парах «элемент с нечетным номером - элемент с четным номером» (дополнительные массивы не использовать).
В таблице из 20 чисел, лежащих в промежутке от -50 до 50, заменить все отрицательные числа на их абсолютные значения.
Дан массив действительных чисел Р [1 : N, 1 : М]. Найти сумму значений элементов её строк.
Вариант 8
Задан одномерный массив А [1 : М], состоящий только из нулей и единиц. Проверить, строго ли они чередуются.
В массиве А [1 : 25] найти максимальное и минимальное отношения элементов массива А [i] / A [i +1].
Даны два двумерных логических массива М1[1 : 3,1 : 3] и М2[1 : 3,1 : 3], (т. е. состоящие из 1, обозначающей истину, и 0, обозначающего ложь). Получить двумерные массивы К1 [1 : 3, 1 : 3] и К2 [1 : 3, 1 : 3] в результате следующих действий:
а) К1 [i, j] = Ml [i, j] и M2 [i, j] - через операцию логического умножения;
б) К2 [i, j] = Ml [i, j] или M2 [i, j] - через операцию логического сложения. На печать выдать исходные массивы Ml и М2, массивы К1 и К2, число единиц в массивах К1 и К2.
Вариант 9
Заполнить массив А[1 : 10]; А[1] = 1, А[2] = 2. Каждый следующий элемент определяется из соотношения A[n] = (А[n - 1] + А[n - 2])/n. Вывести получившуюся последовательность на экран.
Найти среднее значение элементов заданного массива размером М. Преобразовать исходный массив, вычитая из каждого элемента среднее значение.
Заполнить прямоугольную таблицу размером в 5 строк и 3 столбца случайными целыми числами. Предусмотреть вывод этой таблицы на экран и найти:
а) сумму всех элементов таблицы;
б) сумму тех элементов, которые без остатка делятся на 2;
в) сумму элементов, имеющих нечетную сумму индексов.
Вариант 10
Сформировать таблицу значений в соответствии с формулами:
а) A[ij = S + М - i (при четном i); A[i] = С - М - i (при нечетном i);
б) B[i] = S - М - i (при четном i); B[i] = С + М - i (при нечетном i);
в) P[i] = A[i] + B[i],
где i изменяется от 1 до 100; С, М, S - заданные числа.
Переставить элементы одномерного массива в обратном порядке. Нового массива не заводить.
В массиве В[1 : X, 1 : R] найти количество элементов, которые по модулю меньше заданного числа Т.
Вариант 11
Построить таблицу В, состоящую из элементов таблицы А [1 : 75], имеющих четные индексы.
В течение 12 часов абонент набирает номер телефона (один набор в час). Установление связи отмечается цифрой 1, отказ - цифрой 0. Определить:
а) число наборов до первого отказа;
б) максимальное число успешных наборов между двумя любыми отказами.
Дана матрица целых чисел. Заменить отрицательные элементы на -1, положительные на 1, нулевые оставить без изменения.
Вариант 12
Запрашивается таблица из чисел и выясняется, содержит ли она прогресии:
а) арифметическую;
б) геометрическую.
Для данного одномерного массива указать индексы тех его элементов, сумма которых равна заданному числу (если такие есть).
Матрицу А [1 : N, 1 : N] заполнить датчиком случайных чисел. Вычислить след матрицы.
Вариант 13
Для целочисленного массива А[1 : 15] определить, является ли сумма его элементов четным числом. Вывести на печать «ДА» или «НЕТ».
В таблице из 20 чисел, лежащих в промежутке от -50 до 50, заменить все отрицательные числа на их абсолютные значения.
Матрица В[1 : Т, 1 : Т) содержит два одинаковых элемента. Напечатать их индексы.
Вариант 14
Вычислить среднее геометрическое элементов массива А [1 : N], имеющих четные индексы.
Задан массив X размером 5. Вычислить значения функции у = 0,5lnх при значениях аргумента, заданных в массиве X, и поместить их в массив Y. Напечатать результат (массивы X и Y) в виде двух столбцов.
Из массива А[1 : М, 1 : М] сформировать одномерный массив В, «развернув» его по столбцам (по строкам).
Вариант 15
Ввести таблицу оценок за контрольную работу по геометрии. Найти среднее арифметическое оценок. Найти среднее геометрическое. Какое значение больше?
Вычислить сумму и разность двух заданных одномерных массивов размером 5. Результат напечатать в виде двух параллельных столбцов.
Просуммировать элементы столбцов заданной матрицы размером А [I : N, 1 : М]. Результат получить в одномерном массиве размером 3.