- •Учебно-методическое пособие
- •Маршрутная карта изучения дисциплины по Модулю 1
- •1. Логические и арифметические основы эвм
- •Системы счисления
- •1.1. Десятичная система счисления
- •1.2. Двоичная система счисления
- •1.3. Восьмеричная и шестнадцатеричная системы счисления
- •1.4. Перевод чисел из любой системы счисления в десятичную
- •1.5. Перевод чисел из десятичной системы счисления в любую другую
- •Вопросы для самоконтроля
- •Методические указания для выполнения практического задания №1. «Системы счисления»
- •Приложение 1. Таблица вариантов заданий
- •2. Алгебра логики
- •2.1. Логические операции
- •Инверсия
- •2.2. Нормальные формы
- •Конъюнктивная нормальная форма
- •Дизъюнктивная нормальная форма
- •3. Применение средств алгебры логики для описания функционирования устройств компьютера
- •3.1. Логические схемы
- •Пример решение логических задач средствами алгебры логики
- •Методические указания для выполнения практического задания №2. «Алгебра логики». Построение таблиц истинности.
- •Пример построения логических схем
- •Методические указания для выполнения практического задания №3. «Алгебра логики». Построение логических схем.
- •Приложение 2. Таблица вариантов заданий
- •4. Индивидуальное задание. Модуль 1. «Построение логических схем по заданным булевым выражениям»
- •Приложение 3. Таблица вариантов индивидуального задания
- •Приложение 4. Титульный лист идз
- •Маршрутная карта изучения дисциплины по Модулю 2
- •5. Введение в алгоритмизацию
- •6. Знакомство со средой Турбо Паскаль
- •6.1. Общие сведения
- •6.2. Запуск Турбо-Паскаля на выполнение
- •6.3. Назначение функциональных клавиш системы Турбо-Паскаль
- •6.4. Работа с текстовым редактором Турбо-Паскаля
- •Клавиши перемещения курсора
- •Работа с блоками текста
- •7. Основы алгоритмизации
- •7.1. Алгоритм
- •7.2. Алгоритмические структуры
- •8. Программирование на языке Pascal
- •8.1. Алфавит языка
- •8.2. Арифметические выражения и правила их записи
- •Знаки операций
- •Операции div и mod
- •8.3. Типы данных
- •Целые типы
- •Логический тип
- •8.5. Структура программы на языке Паскаль
- •8.6. Описательная часть программы
- •8.7. Исполнительная часть программы
- •8.10. Комментарии в программе
- •Пример программы линейной структуры
- •Вопросы для самоконтроля
- •8.11. Методические указания для выполнения практического задания №4. «Следования»
- •Приложение 5. Таблица вариантов заданий
- •9. Ветвления
- •9.1. Операторы условия и перехода
- •Логический оператор
- •Операции отношения
- •Логические операции
- •9.2. Оператор выбора
- •Пример программы разветвленной структуры
- •Вопросы для самоконтроля
- •9.3. Методические указания для выполнения практического задания №5. «Ветвления»
- •Приложение 6. Таблица вариантов заданий
- •10. Циклические вычислительные процессы
- •10.1. Оператор цикла с параметром
- •10.2. Оператор цикла с постусловием
- •10.3. Оператор цикла с предусловием
- •10.4. Вложенные циклы
- •10.5. Оператор прерывания цикла
- •Пример программы циклической структуры
- •Вопросы для самоконтроля
- •10.6. Методические указания для выполнения практического задания №6. «Циклы»
- •Приложение 7. Таблица вариантов заданий
- •11. Операции с индексированными переменными
- •11.1. Массивы одномерные
- •11.2. Описание массивов
- •Ввод элементов массива
- •Вывод элементов массива
- •11.3. Обработка одномерных массивов
- •Пример программы обработки одномерного массива
- •Вопросы для самоконтроля
- •11.4. Методические указания для выполнения практического задания №7. «Операции с индексированными переменными»
- •Приложение 8. Таблица вариантов заданий
- •12. Двумерные массивы
- •12.1. Матрицы
- •12.2. Описание двумерного массива
- •Ввод элементов двумерного массива
- •Вывод элементов двумерного массива
- •12.3. Обработка двумерных массивов
- •Пример программы обработки двумерного массива
- •Вопросы для самоконтроля
- •12.4. Методические указания для выполнения практического задания №8. «Матрицы»
- •Приложение 9. Таблица вариантов заданий
- •13. Подпрограммы
- •13.1. Функции и процедуры
- •Структура программы, содержащей процедуру (функцию)
- •13.2. Процедуры
- •13.3. Вложенные процедуры Директива forward
- •13.4. Функции
- •Пример программы с использованием подпрограмм
- •Вопросы для самоконтроля
- •Методические указания для выполнения практического задания №9. «Подпрограммы»
- •Приложение 10. Таблица вариантов заданий
- •14. Обработка строк текста
- •14.3. Строковые переменные
- •14.4. Функции обработки строковых переменных
- •14.5. Процедуры обработки строковых переменных
- •14.6. Примеры обработки строковых переменных
- •Вопросы для самоконтроля
- •15. Структурированные типы данных
- •Пример программы использования массива записей
- •Вопросы для самоконтроля
- •Методические указания к выполнению индивидуального задания по Модулю 2. «Массивы записей»
- •Приложение 11. Таблица вариантов индивидуального задания
Пример программы обработки одномерного массива
Задача.
Задан одномерный массив целых чисел. Найти количество нечетных чисел среди элементов массива
2. Таблица идентификаторов
№ |
Наименование переменной |
Обозначения в программе |
1 |
Имя массива |
a |
2 |
Размер массива |
n |
3 |
Индекс массива |
i |
4 |
Количество нечетных чисел |
kol |
3. Листинг программы
program lab5;
uses
crt;
var
a: array [1…100] of integer;
n, i,kol : integer;
begin
clrscr;
writeln ('Введите размер массива n<=100');
readln (n);
writeln ('Введите элементы массива');
for i:=1 to n do
readln (a[ i ]);
kol:=0;
for i:=1 to n do
if odd(a[ i ]) then kol:=kol+1;
writeln(‘Количество нечетных = ’, kol);
readln;
end.
Вопросы для самоконтроля
Что такое массив?
Будут ли сохранены данные массива в памяти компьютера после окончания работы программы?
Что такое индекс массива?
Какого типа должны быть переменные, являющиеся индексами массива?
Как можно задавать размер массива?
Может ли реальное количество элементов в массиве быть меньше, чем указано при описании?
Может ли реальное количество элементов в массиве быть больше, чем указано при описании?
11.4. Методические указания для выполнения практического задания №7. «Операции с индексированными переменными»
Цель работы: Ознакомиться со способом хранения однотипной информации в поименованном наборе, массиве,
Задание:
В приложении 8 выбрать вариант задания.
Выполнить практическое задание №7, используя пример программы обработки одномерного массива.
Составить блок-схему алгоритма.
Написать программу и отладить ее по заранее подготовленному тесту.
Оформить задание в тетради для практических работ.
Результат выполнения программы предъявить преподавателю.
Ответить на вопросы самоконтроля.
Защитить выполненную работу у преподавателя.
Приложение 8. Таблица вариантов заданий
Вариант
|
Задание |
1 |
Даны натуральное n, целые числа а1, … , аn, каждое из которых отлично от нуля. Если в массиве отрицательные и положительные элементы чередуются ( +, - ,+ , - … или -, +, -, +, …), то ответом должен служить исходный массив. Иначе получить все отрицательные элементы массива, сохранив порядок их следования. |
2 |
Даны натуральное n и действительные числа a1, … , an (n - четное). Получить max (a1+ an, a2+ an-1, … , an/2+ a(n/2)+1). |
3 |
Даны натуральное число n, действительные числа a1, … , an. Найти максимальный среди отрицательных элементов имеющих четные индексы. |
4 |
Даны натуральное n, действительные числа a1, … , an. Получить числа в1, в2, … , вn, где вi – среднее арифметическое всех элементов массива а1, … , аn, кроме аi (i = 1, 2, … , n). |
5 |
Даны натуральное n, действительные числа a1, … , an. Если в результате замены отрицательных элементов массива a1, … , an их квадратами элементы будут образовывать неубывающую последовательность, то получить сумму элементов исходного массива; в противном случае получить их произведение. |
6 |
Даны натуральное n, m, целые числа a1, … , an, b1, … , bm. Найти сумму тех элементов массива a1, … , an, индексы которых совпадают со значением элементов массива b1, … , bm.
|
7 |
Даны натуральное n, действительные числа a1, … , an (все числа попарно различны). Поменять в этом массиве местами наибольший и наименьший элементы. |
8 |
Даны натуральное n, действительные числа a1, … , an. Получить преобразованный массив, заменяя a i нулями, если aiне равно max (a1, … , an), и заменяя a i единицей в противном случае (i = 1, 2, … , n). |
9 |
Даны натуральное n, действительные числа a1, … , an (все числа попарно различны). Поменять в этом массиве местами наименьший и последний элементы. |
10 |
Даны натуральное n, действительные числа a1, … , an, b1, … , bn. Получить новый массив с1, … , сn, каждый элемент которого сi = max (ai, bi), i = 1, 2, … , n.
|
11 |
Даны натуральное n, действительные числа a1, … , an, b1, … , bn. Преобразовать b1, … , bn по правилу: если ai < 0, то bi увеличить в 10 раз. Иначе bi заменить нулем, i = 1, 2, … , n. |
12 |
Даны натуральное n, действительные числа a1, … , an. Требуется умножить элементы массива a1, … , an на квадрат ее наименьшего элемента, если ai 0. И на квадрат ее наибольшего члена, если ai < 0. |
13 |
Даны натуральное n, действительные числа a1, … , an. Вычислить сумму тех элементов массива, индексы которых являются степенями двойки (1, 2, 4, 8, 16, …). |
14 |
Даны натуральные n, m, действительные числа a1, … , an, b1, … , bm. Элементы каждого из массивов упорядочены по не убыванию. Объединить элементы этих двух массивов в один массив с1, … , сn + m так, чтобы они снова оказались упорядочены по не убыванию. |
15 |
Даны натуральные n, m, действительные числа a1, … , an и b1, … , bm. Найти наименьший среди элементов a1, … , an, который не входит в b1, … , bm. |
16 |
Даны натуральные n, целые числа a1, … , an. Найти сумму неповторяющихся элементов массива. |
17 |
Даны натуральные n, целые числа a1, … , an. Наименьший элемент массива a1, … , an заменить целой частью среднего арифметического всех элементов, остальные элементы оставить без изменения. Если в массиве несколько элементов со значением min (a1, … , an), то заменить последний по порядку. |
18 |
Даны натуральные n, целые числа a1, … , an. Преобразовать массив по правилу: все отрицательные элементы перенести в его начало, а все остальные в конец, сохраняя исходное взаимное расположение как среди отрицательных, так и среди остальных элементов. |
19 |
Даны натуральные n, действительные числа a1, … , an (n - четное). Получить min (a1 * an, a2 * an-1, … , a[n/2] * a[n/2]+1). |
20 |
Даны натуральные n, действительные числа a1, … , an. Преобразовать массив, расположив элементы в обратном порядке. |
21 |
Даны натуральное n, действительные числа a1, … , an. Все элементы массива с четными номерами, предшествующие первому по порядку элементу со значением max (a1, … , an), умножить на max (a1, … , an). |
22 |
Даны натуральное n, целые числа a1, … , an. Найти сумму квадратов тех элементов массива, которые по модулю больше максимального элемента. |
23 |
Даны натуральное n, действительные числа a1, … , an. Если в результате замены отрицательных элементов массива a1, … , an их квадратами элементы будут образовывать неубывающую последовательность, то получить сумму элементов исходного массива; в противном случае получить их произведение. |
24 |
Даны натуральное n, действительные числа a1, … , an. Найти максимальный элемент массива среди отрицательных элементов, имеющих четные индексы. |
25 |
Даны натуральное n, действительные числа a1, … , an. Получить преобразованный массив, заменяя ai нулями, если aiне равно max (a1, … , an), и заменяя ai единицей в противном случае. |
26 |
Даны натуральное n, действительные числа a1, … , an (все числа попарно различны). Поменять в этом массиве местами наименьший и наибольший элементы. |
27 |
Даны натуральное n, действительные числа a1, … , an. Вычислить сумму тех элементов массива, индексы которых являются степенями двойки (1, 3, 9, 27, …). |
28 |
Даны натуральное n, действительные числа a1, … , an. Если в результате замены отрицательных элементов массива a1, … , an их квадратами элементы будут образовывать невозрастающую последовательность, то получить произведение элементов исходного массива; в противном случае получить их сумму. |
29 |
Даны натуральное число n, действительные числа a1, … , an. Найти максимальный элемент среди отрицательных элементов имеющих нечетные индексы. |
30 |
Даны натуральное n, действительные числа a1, … , an. Найти произведение индексов отрицательных элементов массива. |