«Основы алгоритмизации и программирования»
1. Дайте понятие алгоритма. Перечислите типы алгоритмов, дайте краткую характеристику каждому типу, приведите примеры. Языки низкого и высокого уровня, приведите примеры, в чем сходство и в чем отличие языков.
2. Опишите структуру программного модуля, перечислите все разделы, что описываем, приведите примеры. Разделы описаний, дайте описание, приведите примеры, какие типы данных используются в программировании на Паскале.
3. Перечислите основные функции Turbo Pascal, дайте им краткую характеристику, приведите примеры.
4. Перечислите операторы ввода-вывода, приведите примеры их записей, дайте понятие форматированного вывода. Дайте определение оператор присваивания, каким образом работает.
5. Какие существуют типы переменных языка Turbo Pascal, приведите примеры.
6. Условный оператор IF: определение, запись, алгоритм выполнения, вложенный оператор, в каких случаях и в каких алгоритмах используем.
7. Логические операции: перечислите данные операции, в каких типах алгоритмов используются, примеры использования.
8. Оператор выбора Case: определение, запись, алгоритм выполнения, вложенный оператор, в каких случаях и в каких алгоритмах используем.
9. Операторы организации циклов While, Repeat: определение, запись, алгоритм выполнения, вложенный оператор, в каких случаях и в каких алгоритмах используем.
10. Оператор организации циклов For: определение, запись, алгоритм выполнения, вложенный оператор, в каких случаях и в каких алгоритмах используем.
11. Операторы прерывания Halt, Exit, Break. Оператор Goto: дайте определения данных операция, когда их целесообразно использовать, в каких случаях данные операции недопустимы, когда их можно и каким образом обойти. Приведите примеры использования данных операторов.
12. Типы данных, определяемые пользователем, какие это типы, приведите примеры, в каком разделе описываются, на основе каких типов базируются. Интервальный и перечисляемый типы: определение, описание данных типов, пример использования.
13. Массивы: определение, описание, какие типы массивов вы знаете, каким образом построить многомерный массив. Работа с массивами: какие операции можно выполнять, последовательность действий при работе с массивами, приведите примеры..
14. Множества: определение, описание, работа с множествами, примеры множеств.
15. Строковые переменные: дайте определение, приведите описание. Перечислите функции для работы со строковыми переменными, что данные функции выполняют, какие входные и какие выходные параметры у данных функций, приведите примеры.
16. Записи. Определение, описание, работа с записями. Примеры работы с записями.
17. Сортировка и поиск информации: определение, в каких случаях используется сортировка. Методы внутренней сортировки: перечислите методы сортировки которые вы знаете, опишите алгоритм работы сортировок, приведите примеры.
18. Файловые переменные: дайте определение файла, на каких типах данных он может строиться. Текстовые, типизированы и нетипизированные файлы: определение, описание, какие процедуры и функции можно использовать при работе со всеми типами файлов.
19. Процедуры и функции для работы с файловыми переменными: перечислите данные процедуры и функции, приведите их описание и назначение, область действия данных функций. Приведите пример с использованием процедур и функций для работы с файлами.
20. Подпрограммы-функции: дайте определение, каким образом описываются, каким образов вызываются, какие типы данных используются, с какими параметрами работаем. Приведите пример.
21. Подпрограммы-процедуры: дайте определение, каким образом описываются, каким образов вызываются, какие типы данных используются, с какими параметрами работаем. Приведите пример.
22. Создание библиотечного модуля пользователя: дайте определение, каким образом описываются, каким образов вызываются, какие типы данных используются, с какими параметрами работаем. Приведите пример.
23. Рекурсивные программы. Прямая и косвенная рекурсия: дайте определение, каким образом описываются, каким образов вызываются, какие типы данных используются, с какими параметрами работаем. Приведите пример.
24. Идея метода поиска в графе в глубину
25. Идея метода поиска в графе в ширину.
26. Матричное представление графа. (Виды матриц).
27. Постановка задачи о нахождении кратчайшего пути.
28. Идея алгоритма Дейкстры.
29. Динамические структуры данных. Очереди, стек, кольца: дайте определение, в каких случаях используются, каким образом описываются, какие основные действия, процедуры и функции используются при работе с данными динамическим структурами.
30. Конструктор и деструктор. Виртуальные функции. Дайте определение, в каких случаях и в какой последовательности данные конструкции используются.
31. Алгоритмы на графах: дайте определение графа, дайте основные определения для работы с графами, какие типы графов существуют, приведите примеры. Представление графа в памяти компьютера: дайте определение основных матриц, их характеристику, описание. Составьте произвольный граф и по нему составьте основные матрицы.
32. Объект. Определение, описание, свойства.
33. Наследование, инкапсуляция, полиморфизм.
34. Особенности разработки программ под Windows. Введение в Delphi.
35. Компоненты страницы Additional, их назначение, свойства, примеры применения.
36. Компоненты MainMenu, PopupMenu, Label, Edit, Memo страницы Standart, их назначение, свойства, примеры применения.
37. Компоненты Button, checkBox, RadioButton, ListBox, ComboBox страницы Standart, их назначение, свойства, примеры применения.
38. Компоненты ScrollBar, GroupBox, RadioGroup, Panel страницы Standart, их назначение, свойства, примеры применения.
39. Компоненты BitBtn, SpeedButton, MaskEdit страницы Additional, их назначение, свойства, примеры применения.
40. Компоненты StringGrid, DrawGrid, Image страницы Additional, их назначение, свойства, примеры применения.
41. Компоненты Shape, Scrollbox, Chart страницы Additional, их назначение, свойства, примеры применения.
42. Сравнительный анализ компонент Button, Edit, Scroll страниц Standart и Additional, их назначение, свойства, примеры применения.
43. Компоненты страницы Timer, PaintBox, MediaPlayer System, их назначение, свойства, примеры применения.
44. Компоненты ImageList,, RichEdit, Hotkey страницы Win32, их назначение, свойства, примеры применения.
45. Компоненты TabControl, PageControl, DateTimePicker, MonthCalendar страницы Win32, их назначение, свойства, примеры применения.
46. Свойства Canvas, их назначение, свойства, примеры применения.
47. Графические и мультимедийные возможности Delphi, их назначение, свойства, примеры применения.
48. Компоненты страниц Data Access, Data Control и BDE, их назначение, свойства, примеры применения.
49. Создание справочной системы: перечислите этапы создания справки.
50. Создание установочного диска: перечислите этапы создания диска/
51. Компоненты MainMenu, PopupMenu, Label, Edit, Memo страницы Standart.
52. Компоненты Button, checkBox, RadioButton, ListBox, ComboBox страницы Standart.
53. Компоненты ScrollBar, GroupBox, RadioGroup, Panel страницы Standart.
54. Компоненты BitBtn, SpeedButton, MaskEdit страницы Additional.
55. Компоненты StringGrid, DrawGrid, Image страницы Additional.
56. Компоненты Shape, Scrollbox, Chart страницы Additional.
57. Сравнительный анализ компонент Button, Edit, Scroll страниц Standart и Additional.
58. Компоненты страницы System
59. Компоненты ImageList,, RichEdit, Hotkey страницы Win32
60. Компоненты TabControl, PageControl, DateTimePicker, MonthCalendar страницы Win32
61. Компоненты Timer, PaintBox, MediaPlayer страницы System
62. Свойства Canvas.
63. Создание справочной системы: перечислите этапы создания справки.
64. Создание установочного диска: перечислите этапы создания диска.
65. Работа с контейнером OLE
66. Создание собственных компонент с использованием ActiveX
Примеры задач к экзаменационным билетам по дисциплине «Основы алгоритмизации и программирования».
1. Дана матрица размером m×n. Найти количество строк, не содержащих ни одного нулевого элемента. И максимальное из чисел, встречающихся в матрице более одного раза.
2. Дана матрица размером m×n. Определить число столбцов, не содержащих ни одного нулевого элемента. Характеристикой матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с ростом характеристики.
3. Дана матрица размером m×n. Определить количество столбцов, содержащих хотя бы один нулевой элемент. Номер строки, в которой находится самая длинная серия одинаковых элементов.
4. Дана матрица размером m×n. Найти произведение элементов в тех строках, которые не содержат отрицательных элементов. Максимум среди сумм элементов диагоналей, параллельных главной диагонали матрицы.
5. Дана матрица размером m×n. Найти сумму элементов в тех столбцах, которые не содержат отрицательных элементов. Минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы.
6. По введенному номеру дня недели вывести название дня недели.
7. По введенному номеру месяца вывести название месяца.
8. По введенному номеру месяца вывести название сезона.
9. По введенному времени вывести название части суток.
10. По введенному номеру месяца вывести знак зодиака.
11. Написать программу, проверяющую, хорошо ли пользователь умеет складывать в уме числа. Программа должна 10 раз запросить два числа (слагаемых); вывести их на экран; предложить ввести сумму этих чисел; проверить, правильна ли эта сумма; вывести на экран соответствующее сообщение («Правильно», «Неправильно»); вывести количество правильных и неправильных ответов.
12. Вычислить и вывести на экран в виде таблицы значения функции, заданной с помощью ряда Тейлора, точностью Е.
§
§
§
§
§
§
13. Написать программу для расчета значения функции. Значения аргументов вводятся с клавиатуры.
1.
2.
14. Написать программу вычисления площади кольца. Программа должна проверять правильность ввода исходных данных (радиус отверстия не может быть больше радиуса кольца).
15. Написать программу решения квадратного уравнения. Программа должна осуществлять ввод коэффициентов и проверять правильность ввода данных (первый коэффициент не должен быть равен нулю).
16. Написать программу вычисления стоимости скидки. При цене покупки больше 1000 руб. скидка составляет 10%, при цене покупки больше 15000 руб. скидка – 15%.
17. Дано целое число N (> 1), являющееся числом Фибоначчи: N = FK (определение чисел Фибоначчи F1 = 1, F2 = 1, FK = FK–2 + FK–1, K = 3,..). Найти целое число K — порядковый номер числа Фибоначчи N.
18. Написать программу вычисления функции F(x,y), разбив основную функцию на несколько вспомогательных. Каждую вспомогательную функцию оформить в виде отдельной подпрограммы.
§
§
§
22. Вычислить значения функции для N заданных значений А и Х. Выдать полученные значения Y на печать в виде таблицы.
19. Вычислить наибольшее целое N, удовлетворяющее условию
20. Найдите и выдайте на экран значение разности между максимальным и минимальным значением функции y=f(x) на интервале от a до b с шагом h. Исходные данные a,b,h ввести с клавиатуры.
21. Даны целые числа A и B (A < B). Вывести все целые числа от A до B включительно; при этом число A должно выводиться 1 раз, число A + 1 должно выводиться 2 раза и т. д.
22. Разработать программу для нахождения и выдачи на экран значения суммы. Значения переменной n ввести с клавиатуры.
·
23. Описать функцию IsSquare(K) логического типа, возвращающую True, если целый параметр K (> 0) является квадратом некоторого целого числа, и False в противном случае. С ее помощью найти количество квадратов в наборе из 10 целых положительных чисел.
24. Описать функцию RootsCount(A, B, C) целого типа, определяющую количество корней квадратного уравнения A•x2 + B•x + C = 0 (A, B, C — вещественные параметры, A ≠ 0). С ее помощью найти количество корней для каждого из трех квадратных уравнений с данными коэффициентами. Количество корней определять по значению дискриминанта: D = B2 – 4•A•C.
25. Написать приложение Windows, которое выполняет анимацию изображения.
Создать меню с командами: Show picture, Choose, Animate, Stop, Quit.
Команда Quit завершает приложение.
При выборе команды Show picture в центре экрана рисуется объект, состоящий из нескольких графических примитивов.
При выборе команды Choose открывается диалоговое окно, содержащее:
□ поле ввода типа TEdit с меткой Speed для ввода скорости движения объекта;
□ группу Direction из двух переключателей (Up-Down, Left-Right) типа TRadi oGroup для выбора направления движения;
□ кнопку типа TButton.
По команде Animate объект начинает перемещаться в выбранном направлении до края окна и обратно с заданной скоростью, по команде Stop — прекращает движение.
26. Создать меню с командами: Input, Calc, Exit.
При выборе команды Input открывается диалоговое окно, содержащее:
□ три поля ввода типа TEdit;
□ группу из двух флажков («периметр», «площадь») типа TCheckBox;
□ кнопку типа TButton (свойство Default имеет значение true). Обеспечить возможность:
□ ввода длин трех сторон треугольника;
□ выбора режима с помощью флажков: подсчет периметра и (или) площади треугольника.
При выборе команды Calc открывается диалоговое окно с результатами.
27. В Delphi сформируйте массив из 10 чисел. Упорядочите массив по убыванию, используя метод «пузырька».
28. В Delphi написать программу БЛОКНОТ
Создать форму следующего вида. Реализовать открытие и сохранение текстового файла (использовать компонент RichEditили Мемо). Реализовать работу пунктов меню «Правка» - настройку шрифта и фона компонента RichEdit. Добавить возможность выбора работы с текстовым или графическим файлом (с помощью радиокнопок) – загрузка и сохранение соответствующего файла. Предусмотреть следующие фильтры для открытия и сохранения файлов:.rtf,.txt,.dat,.bmp,.jpg. По умолчанию сохранять текстовые файлы в формате.txt, графические -.bmp. Реализовать возможность выбора применения настроек шрифта ко всему тексту или к выделенному фрагменту (с помощью радиокнопок). Добавить на форму компоненты, отображающие дерево каталогов одного из дисков на вашем ПК и список файлов данного каталога (желательно искомого типа). Реализовать открытие выбранного таким образом файла.
29. Написать программу с использованием OLE-контейнера. В программе должно открываться одно из приложений Microsoft Office. Программа должна предусмотреть открытие, сохранение документа.
30. В Delphi реализовать приложение, для нахождения и выдачи на экран значения суммы. Значения переменной n ввести с клавиатуры. Результат выводится в через компонент Label.
31. Реализуйте работу с базой данных в Delphi.
Разработать приложение «Рынок строительных материалов», состоящее из двух таблиц, позволяющее:
- Работать со «справочниками» (добавление, редактирование, удаление записей, попробуйте прописать через кнопки);
- Добавлять в таблицу записи;
- Отображать по выбранной группе все его составляющие.
Для добавления информации используйте дополнительную форму, которая будет вызываться через пункты меню или через кнопку.
МЕТОДИЧЕСКИЕ УКАЗАНИЯ
и задания для выполнения домашней контрольной работы №1