Программирование массивов
Программирование строк
Программирование подпрограмм
Основные операции для списков.
Программирование с использованием классов
Побитовые операции.
Программы с модулями.
8 КОНТРОЛЬ ЗНАНИЙ СТУДЕНТОВ
Виды контроля | |
Текущий контроль | Индивидуальная проверка теоретических знаний при сдаче студентами лабораторных работ |
Итоговый контроль | Зачет по дисциплине |
Задания для самоконтроля
1. Написать фрагмент программы, формирующий сумму и произведение.
2. Сформировать символьный массив, состоящий из случайно сгенерированных строчных букв латинского алфавита.
3. Найти наибольший общий делитель двух целых чисел a и b, используя операцию целочисленного деления mod.
4. Организовать завершение бесконечного цикла repeat until для удержания экрана.
5. Организовать цикл for, в котором индекс цикла убывает.
6. Организовать цикл while, который может досрочно завершаться без использования оператора goto.
7. Организовать любой итерационный процесс ( последующее значение выражается через предыдущее ) с помощью цикла repeat ... until.
8. Сформировать и распечатать двумерную матрицу.
9. Преобразовать символьный массив в строку.
10. Преобразовать строку в символьный массив.
11. Найти длину строки, не используя функцию Length.
12. С помощью цикла repeat... until и процедуры val организовать ввод целого числа, длинного целого числа или вещественного числа с контролем и повтором.
13. Использовать оператор case для исключения из строки лишних пробелов между словами.
14. Посчитать сумму всех цифр строки.
15. Записать массив из строк в текстовый файл.
16. В двоичном файле произвести обмен наибольшего элемента и первого элемента.
17. Составить фрагмент программы, формирующий массив из случайно сгенерированных чисел, с оператором goto.
18. Составить фрагмент программы, формирующий массив из случайно сгенерированных чисел, без оператора goto.
19. Распечатать все элементы множества строчных латинских букв в алфавитном порядке.
20. Сформировать множество из элементов символьного массива.
21. Написать функцию, которая возвращает сумму цифр числа, входящего в функцию в виде формального параметра.
22. Написать функцию, которая число с инвертированными цифрами числа, входящего в функцию в виде формального параметра.
23. Написать функцию, которая возвращает сумму первой и последней цифр числа, входящего в функцию в виде формального параметра.
24. Написать процедуру, печатающую для данной обыкновенной дроби десятичную дробь с заданным количеством знаков после запятой.
25. Написать процедуру, которая возвращает сформированную в ней квадратную матрицу заданного порядка.
26. Используя известную сортировку прямым выбором, применить ее только к отрицательным членам массива, оставляя остальные на своих местах.
27. Используя известную сортировку прямым обменом, применить ее к элементам массива таким образом, чтобы на нечетных шагах элементы собирались слева, а при четных - справа.
28. Привести пример использования вложенных операторов with.
29. Используя операторы GotoXY и ClrEol, в многовариантной задаче организовать ввод и вывод данных в одно и тоже место экрана.
30. Используя функцию readkey, получить таблицу кодировки для символов клавиатуры.
31. Используя функцию readkey, организовать движение прямоугольника в графическом режиме монитора.
32. Используя функцию readkey, организовать движение прямоугольника в текстовом режиме монитора.
33. Вывести на экран в графическом режиме работы монитора вычисленную таблицу значений функции.
34. Написать процедуру, которая печатает двоичное представление произвольного числа без использования строк или массивов.
35. Составить модуль, который содержит одну функцию.
36. Не изменяя положения указателя, но последовательно его разыменовывая, прочитать число из 5 узла списка, считая, что количество узлов не меньше 5.
37. Составить функцию, которая возвращает числовое значение из узла списка с заданным порядковым номером.
38. Написать процедуру распечатки двунаправленного списка, как слева направо, так и справа налево.
39. Используя идею быстрой сортировки расположить отрицательные элементы массива в обратной последовательности, оставив остальные на своих местах.
40. Написать процедуру, которая переименовывает все внешние файлы указанной группы.
41. Написать процедуру, которая удаляет все внешние файлы указанной группы.
42. Написать процедуру, которая дает возможность просматривать все файлы указанной группы.
9 УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ
РАБОЧЕЙ ПРОГРАММЫ
Список литературы
Основная литература
1. лгоритмы + структуры данных = программы. - М., Мир, 1985.- 406с.
2. Алгоритмы и структуры данных. – М., Мир, 1989. - 360с.
3. Язык программирования Turbo Pascal 6.0. – М.: Унитех, 1992. - 298с.
4. . Программирование в Turbo Pascal 7.0 и Delphi. – СПб.: BHV – Санкт - Петербург, 1997. - 240с.
5. . Turbo Pascal: практикум. – СПб.: Питер, 2002. - 256с.
6. , . Программирование в интегрированной среде Турбо-Паскаль. Справочное пособие. – Минск, Беларусь, 1992. - 240с.
7. Сборник упражнений по языку Паскаль. – М.: Наука, 1989. - 160с.
8. Программирование на языке Паскаль: задачник / под ред. – СПб.: Питер, 2002. - 192с.
9. Turbo Pascal 7.0.: Учебное пособие. – М.: Нолидж, 1997.-580с. -336с.
10. . Задачник по программированию. – СПб.: Питер, 2002. - 192с.
Дополнительная литература
11. , Хопкфорт Дж. Э., Ульман Дж. Д. Структуры данных и алгоритмы. – М.: Издательский дом “Вильямс”, 2001. - 384с.
12. Бентли Дж. Жемчужины программирования. – СПб.: Питер, 2002. - 304с.
13. Окулов в алгоритмах. – М.: БИНОМ. Лаборатория знаний, 2004. - 341с.
14. , , Мельников алгоритмов обработки данных. – СПб.: БХВ-Петербург, 2003. - 192с.
15. , Боресков компьютерной графики. – М.: ДИАЛОГ-МИФИ, 1993. - 138с.
Список авторских методических разработок
1. Динамические схемы для иллюстрации простых и улучшенных методов сортировки: приложения на языке Java, иллюстрирующие сортировки
- прямыми включениями,
- бинарными включениями,
- прямым выбором,
- прямым обменом,
- шейкерную сортировку,
- сортировку Шелла,
- пирамидальную сортировку,
- быструю сортировку.
2. Иллюстрация рекурсивных алгоритмов: задача о ханойских башнях с графической реализацией, задача о расстановки 8 ферзей с графической реализацией.
II МЕТОДИЧЕСКИЕ РЕКОМЕНДАЦИИ ПО ИЗУЧЕНИЮ УЧЕБНОЙ ДИСЦИПЛИНЫ
семестр 3:
1. Для быстрого освоения практического программирования необходимо освоить преобразование типов Особенное внимание следует уделить функциям trunс и round для преобразования вещественного к целому, операциям div и mod для решения задач в области целых чисел, функция chr, преобразующая целое в символьное и функция ord, преобразующее символьное в целое.
2. После изучения операторов ввода (read, readln) и вывода (write, writeln) можно составлять тестовые программ для изучения преобразований типов.
3. После освоения оператора цикла for можно составлять программы по вычислению сумм и произведений.
4. После освоения оператора цикла while можно составлять циклы с заранее неизвестным числом повторений и решать задачи о выделении цифр произвольного числа.
5. После освоения цикла repeat... until можно организовать повторный ввод исходных данных и решать задачи с итерационными схемами.
6. Условный оператор if и оператор множественного выбора case позволяют реализовать ветвления программы, когда при выполнении разных условий выполняются разные группы операторов.
7. Использование массивов позволяет реализовывать многие логические алгоритмы. При работе с массивами необходимо освоить процесс их формирование, ввод и вывод, в том числе вывод двумерного массива в виде матрицы.
8. Освоение строк позволит обрабатывать тексты. Следует обратить внимание на инициализацию строки, на определение реальной длины строки, на отличие строки от символьного массива и также освоить функции обработки строк: Length, Insert, Delete, Copy, Pos и функции Val преобразования строки в целое или вещественное число и функции Str преобразования вещественного или целого числа в строку.
9. Работу с внешними файлами необходимо начать с открытия и закрытия файла (текстового или двоичного), далее научиться читать данные из одного файла и записывать их в другой файл (для завершения цикла while использовать логическую функцию eof). При таком подходе остается добавить в цикл обработку каждого числа. Причем данная обработка не связана с темой “Файлы”, а основана на ранее полученных знаниях.
10. При включении в программу оператора goto необходимо сделать обоснование его использования, а если есть возможность, то заменить оператор goto альтернативной конструкцией.
11. Использование множеств в программе для ряда задач делает их решение более простым. Альтернативой решения таких задач является реализация неочевидного логического алгоритма.
12. Только небольшие программы могут быть составлены без подпрограмм. Даже небольшая задача может быть разделена на подзадачи, каждой из которых ставится в соответствие подпрограмма. В языке Паскаль - это функция или процедура. Следует уделить внимание изучению их различия и сходства. Обратить внимание на различные виды формальных параметров. Необходимо научиться возвращать вычисленные значения через формальные параметры, используя как процедуру, так и функцию.
13. При изучении простых методов сортировки массивов (сортировка прямыми включениями, сортировка бинарными включениями, сортировка прямым выбором, сортировка прямым обменом) следует обратить на разнообразие алгоритмов, реализованных в рамках двух вложенных циклов.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 |


