1-й семестр |
Неделя | Тема | Примеры заданий |
1 | Знакомство с системой программирования Delphi (консольный режим). Структура программы. Основные стандартные типы данных. Оператор присваивания. Выражения. Процедуры ввода - вывода. Разработка программ линейной структуры. | -
Ввести два целых числа. Вывести результаты выполнения над ними 6-и арифметических действий (+ , - , * , / , DIV, MOD). -
Ввести символ. Определить его код по таблице ASCII. Используя значение кода в качестве величины радиуса, вычислить длину окружности, площадь круга и объем шара. -
Ввести целое пятизначное число. Вычислить кубический корень из произведения чисел, соответствующих его значащим цифрам. -
Определить площадь треугольника по заданным координатам его вершин и его углы. -
По заданным коэффициентам a1,a2,b1,b2 и правым частям c1,c2 найти решение системы двух линейных уравнений в предположении, что ее определитель не равен 0. -
Присвоить символьным переменным с1, с2, с3 соответственно левую, среднюю и правую цифры целого трехзначного числа k. -
Определить площадь и периметр правильного n – угольника, вписанного в окружность радиуса R и описанного около нее. Сравнить полученные данные с площадью круга и длиной окружности радиуса R. -
Треугольник в пространстве задан координатами своих вершин A(x,y,z), B(u, v, w), C(r, p, q). Найти периметр и площадь треугольника. Определить скалярное произведение векторов . -
Задано пятизначное число a. Проверить, является ли оно палиндромом. |
2 | Операторы: условный, составной и выбора. Логические операции. Разработка программ разветвляющейся структуры. | -
Ввести три числа. Определить и вывести наименьшее из них. Если оно отрицательное, то возвести его в квадрат и вывести. -
Вычислить значения y по одной из формул: при x<=0; при 0<x<=1; y = lg(x) при x>1. -
Разработать программу, которая для двух введенных чисел позволяет выполнять одно из четырех арифметических действий (использовать оператор выбора). -
Определить площадь закрашенных участков, если точка с координатами x,y располагается внутри них. -
Написать программу, имитирующую работу калькулятора. Калькулятор должен иметь арифметическую и функциональную часть. Работа калькулятора осуществляется следующим образом. Вводится вещественное число а. Вводится знак арифметической операции (+,-,*,/) или буква F. Если введен знак операции, то вводится значение вещественной переменной b и выполняется нужная операция. Если же введен символ функциональной части F, то должна вводиться первая буква вычисляемой функции, например s или S соответствуют функции Sin(a). -
Записать выражение x=a b c с помощью условных операторов. В этом выражении x, a, b, c – логические переменные. Операции OR и AND не использовать. -
Даны три точки . Определить, расположены ли они на одной прямой. Если нет, то вычислить угол . -
Дано натуральное число n<101, являющееся возрастом человека в годах. Вывести для этого числа надпись «год», «года» или «лет». Например, 2 года, 56 лет, 34 года и т.д. |
3 | Операторы цикла (с известным и неизвестным числом повторений). Разработка программ циклической структуры. | -
Протабулировать функцию y=x* sin(x) в диапазоне изменения х от А до В с шагом Н (A,B и H вводятся с клавиатуры). Использовать разные операторы цикла. -
Вычислить факториал введённого целого числа. Использовать разные операторы цикла. -
Вычислить сумму членов ряда с точностью до члена ряда по абсолютной величине, меньшего ε (ε – малое вводимое число). -
Вводится целое n и вещественные числа x1,y1 , x2,y2, … , xn, yn . Рассматривая пары xi,yi как координаты точки на плоскости, определить минимальный радиус круга с центром в начале координат, в котором разместятся все введенные точки. -
Найти так называемое «машинное эпсилон» для разных типов вещественных данных Delphi (single и т.д.), т.е. найти такое минимальное не равное нулю число, которое после прибавления его к 1.0 еще дает результат, отличный от 1.0 -
Получить таблицу значений для x, изменяющегося в диапазоне с шагом . |
4 | РУБЕЖНЫЙ КОНТРОЛЬ | Операторы, выражения, программы различной структуры – 10(6) баллов. |
5 | Использование типовых приемов программирования на примере обработки одномерных массивов (ввод, вывод, преобразование, создание, вычисление суммы и произведения, максимума и минимума, сортировка, поиск элементов и т.д.). | -
Ввести массив из целых чисел A[N], где N<=10 – размерность массива (вводятся по запросу). Найти сумму и произведение его элементов, а также максимальный элемент. Вывести на экран массив и найденные значения. -
Ввести массив из целых чисел A[N], где N<=10 – размерность массива. Из его отрицательных элементов создать другой массив. Вывести на экран оба массива. Если отрицательных элементов нет, вывести соответствующее сообщение. -
В массиве А после каждого отрицательного элемента вставить элемент с заданным значением. -
В массиве А поставить элемент с максимальным значением перед элементом с минимальным значением. Порядок следования остальных элементов не должен меняться (в упрощенном варианте можно поставить этот элемент на первое или на последнее место). -
В одномерном массиве целых чисел найти наибольший и наименьший элементы и поменять их местами. -
Упорядочить одномерный массив целых чисел по возрастанию суммы цифр каждого числа. -
Заданы два упорядоченных по возрастанию массива целых чисел с числом элементов n1 и n2. Слить их в один (третий) массив, также упорядоченный по возрастанию. |
6 | Разработка и отладка приложений для решения типовых задач (обработка одномерных и двумерных массивов, обработка числовых рядов, вычисление интегралов т.п.). | -
Ввести массив из целых чисел A[N,M], где N<=10, M<=20 – размерности массива (вводятся по запросу). Вывести массив в виде матрицы. Создать и вывести массив из элементов матрицы, которые больше среднего значения элементов матрицы. -
Ввести массив из целых чисел A[N,M], где N<=10, M<=20 – размерности массива (вводятся по запросу). Вывести массив в виде матрицы. Вывести отдельно столбец матрицы, произведение элементов которого минимально. -
Ввести массив из целых чисел A[N,N], где N<=10 – размерность массива (вводится по запросу). Вывести массив в виде матрицы. Вывести отдельно элементы матрицы, расположенные над главной диагональю. -
Получить матрицу В из матрицы А путем удаления k-го столбца. -
Расположить столбцы матрицы в порядке возрастания значений элементов k-ой строки. -
Передвинуть на одну позицию по часовой стрелке элементы матрицы, расположенные в первой строке и в верхней части главной и побочной диагоналей. -
Найти наибольший и наименьший элементы под (над) главной (побочной) диагоналями матрицы, включая (не включая) элементы самой диагонали. -
Заполнить квадратную матрицу последовательными натуральными числами, начиная с 1 до n*n, совершая обход по спирали от верхнего левого угла к центру матрицы. |
7 | Организация подпрограмм. Функции. | -
Ввести два массива из целых чисел A1[N1] и A2[N2] , где N1<=10, а N2<=5 – размерности массивов (вводятся по запросу). Определить минимальный элемент которого из них больше. Использовать функцию. -
Разработать функцию, определяющую площадь треугольника по координатам его вершин. Использовать её в программе для вычисления площади выпуклого 5-угольника (координаты его вершин вводятся). -
Разработать функцию, определяющую максимальный элемент побочной диагонали квадратной целочисленной матрицы. Использовать её в программе для обработки двух введённых массивов А1[3,3] и А2[4,4]. Вывести массивы в виде матриц и найденные элементы. -
Вывести на экран таблицу значений функции для x, изменяющегося в диапазоне с шагом . Функция оформляется в виде подпрограммы-функции. -
Задан массив, элементами которого являются произвольные целые числа (положительные и отрицательные). Преобразовать их, изменив порядок следования цифр в их значениях на обратный. Использовать функцию. -
В массиве целых чисел найти элемент с наибольшей суммой цифр, используя функцию для отыскания суммы цифр числа. -
На плоскости заданы n точек. Найти треугольник, имеющий наибольшую площадь из всех треугольников, которые можно построить на этих точках. Использовать функцию. 8. Заполнить случайным образом матрицу размером n x m последовательными без повторений числами Фибоначчи |
8 | РУБЕЖНЫЙ КОНТРОЛЬ | Одномерные и двумерные числовые массивы – 20(12) баллов. |
9 | Процедуры. Параметры подпрограмм. | -
Ввести массив из целых чисел A[N], где N<=10 – размерность массива (вводятся по запросу). С помощью одной процедуры найти в нём максимальный и минимальный элементы, а с помощью другой – упорядочить по убыванию. Вывести исходный, упорядоченный массивы и найденные элементы. -
Разработать процедуру, вычисляющую корни х1 и х2 квадратного уравнения ах2+вх+с=0 для введённых значений коэффициентов а, в и с (а≠0 и дискриминант положителен). Использовать её в программе для двух введённых наборов коэффициентов а1, в1, с1 и а2, в2, с2. -
Разработать процедуру, меняющую местами k-ю и m-ю строки целочисленной матрицы (k и m вводятся по запросу). Использовать её в программе для обработки двух введённых массивов А1[3,4] и А2[4,3]. Вывести исходные и преобразованные массивы в виде матриц. Для ввода и вывода массивов использовать процедуры. -
Составить процедуру для перемещения элементов квадратной матрицы, расположенных в первом столбце, первой строке и на побочной диагонали, на одну позицию против часовой стрелки. Использовать разработанную процедуру для перемещения указанных элементов на k позиций. -
Составить функцию, которая представлена в виде функционального ряда Составить процедуру для решения методом половинного деления уравнения -
Составить процедуру для вычисления определенного интеграла по формуле трапеций с автоматическим выбором шага. Применить процедуру для вычисления интегралов и . 7. Найти матрицу , если степень матрицы определяется по формуле |
10 | Работа с символьными и строковыми данными (поиск, замена, удаление, вставка символов в строках, преобразование строк) с использованием подпрограмм. | -
Ввести строку из букв. Поменять все буквы «а» на букву «А» и вывести. Вывести строку в обратном порядке. Упорядочить буквы в строке по алфавиту и вывести. -
Ввести простое предложение (без знаков препинания внутри, слова разделены одним пробелом, в конце строки один из знаков – «.», «!», «?»). Подсчитать количество слов начинающихся и заканчивающихся на одинаковую букву. Использовать подпрограмму. -
Ввести простое предложение. Заменить в нём одно из слов (по запросу) на новое и вывести. Если запрашиваемого слова нет, вывести соответствующее сообщение. Использовать подпрограмму. -
Определить строчную букву латинского алфавита, которая чаще всего встречается в строке произвольной длины. -
Строка произвольной длины состоит из слов, отделенных друг от друга пробелом. Записать эти слова в массив строк так, чтобы каждое слово являлось элементом массива. Упорядочить элементы полученного массива по алфавиту. -
Преобразовать строку произвольной длины, удалив в ней все повторения строчных букв латинского алфавита. -
Строка произвольной длины состоит из слов, отделенных друг от друга пробелом. Записать эти слова в новую строку, изменив порядок их следования на обратный. -
Написать процедуру, которая помещает первые вхождения букв в заданной строке в другую строку. Написать программу, в которой процедура применяется для обработки строк, вводимых пользователем. -
Сделать бегущую на экране строку. |
11 | Работа с записями. Обработка массивов записей с использованием подпрограмм. | -
Ввести массив записей (не более 20-и) с полями – «фамилия», «оценка». Вывести на экран. Упорядочить массив по алфавиту и вывести. Определить средний балл. -
Ввести массив записей (не более 5-и) с полями – «наименование продукта», «цена», «количество» и «срок годности». Вывести на экран. По введённой дате вывести список испорченных продуктов и подсчитать убыток. Если нет испорченных продуктов, вывести соответствующее сообщение. Использовать подпрограмму. -
Ввести массив записей (не более 10-и) с полями – «фамилия сотрудника», «стаж работы», «оклад». Вывести на экран. Вывести в алфавитном порядке данные тех сотрудников, чей оклад ниже среднего по предприятию. Тому из малооплачиваемых, чей стаж максимальный, увеличить оклад в 2 раза. Вывести обновленный список всех сотрудников. Использовать подпрограмму. -
Задан массив записей, которые содержат фамилию человека, год рождения и пол. Переписать в новый массив фамилии лиц мужского пола 1982 – 1984 года рождения. -
Задан массив записей, полями которых являются координаты точки. Определить площадь минимального круга с центром в ближайшей к началу координат точке, в котором расположатся все заданные точки. -
Задан массив записей, которые содержат фамилию человека и рост. Расположить их по росту. Не нарушая упорядоченности внести в упорядоченный список лиц, данные которых вводятся с клавиатуры по дополнительному запросу. Найти человека, рост которого наиболее близок к среднему росту представленных в списке. -
Создать массив записей с полями: фамилия студента, баллы за экзамен по 4-м дисциплинам. Выдать фамилию студента, средний балл которого наиболее близок к среднему баллу группы. -
Создать массив записей с полями: фамилия, специальность. Выдать специальность, по которой имеется наибольшее количество сотрудников. |
12 | РУБЕЖНЫЙ КОНТРОЛЬ | Обработка строк и записей – 20(12) баллов. |
13 | Типизированные файлы. Процедуры и функции для создания и обработки файлов. | -
Создать типизированный файл из нескольких целых чисел. Вывести его содержимое на экран. Заменить один из элементов файла (по запросу его номера) на новый. Вывести содержимое изменённого файла. -
Создать типизированный файл, элементы которого – значения функции на интервале изменения x от А до В с шагом Н (А<B, А>0 и Н – вводятся по запросу). Вывести содержимое файла на экран. Переписать из него во второй типизированный файл элементы, начиная с N-го по M-й (N и M – вводятся по запросу). Вычислить значение среднего арифметического этих элементов и записать его в конец второго файла, содержимое которого вывести на экран. Использовать подпрограмму. -
Создать типизированный файл записей (поля – «марка автомобиля» и его «цена»). Переписать из него в другой типизированный файл записи в порядке возрастания цены. Вывести на экран содержимое обоих файлов. Использовать подпрограмму. -
В файле вещественного типа после компонента с максимальным значением поставить новый компонент с заданным значением. -
В файле вещественного типа упорядочить все компоненты по возрастанию их значений. -
Результаты предварительных соревнований по бегу содержатся в виде записей в типизированном файле. Полями являются фамилия спортсмена и его результат (время забега). Удалить из файла спортсменов с результатами ниже квалификационного. -
В типизированный файл поместить информацию о сотрудниках организации в виде: фамилия, год рождения. Удалить из файла юбиляров (возраст оканчивается на 0 или 5), дописав их в конец файла в том же порядке, в каком они представлены в файле. Задачу решить с использованием хотя бы одной процедуры. -
В типизированном файле содержатся квадратные матрицы размером 2 x 2. Просматривая попарно все матрицы, найти такие две матрицы, определитель произведения которых имеет наибольшее значение. -
Упорядочить типизированный файл фамилий по алфавиту. Вспомогательный массив не использовать. |
14 | Текстовые файлы и их особенности. Использование текстовых файлов для ввода – вывода числовых данных. | -
Создать текстовый файл из нескольких строк символов. Вывести его содержимое на экран. В строке под номером k (по запросу) подсчитать количество цифр. Полученное значение записать в конец файла и вывести содержимое изменённого файла на экран. -
Создать с помощью текстового редактора (например, «Блокнот») файл, содержащий несколько чисел. Разработать программу, которая выводит на экран содержимое файла и вычисляет значение среднего арифметического чисел из этого файла. Использовать подпрограмму. -
Записать в первый текстовый файл несколько записей (поля – название горы и её высота). Переписать из первого во второй текстовый файл записи о горах, высота которых больше 3000 м. Найти в текстовом файле гору с минимальной высотой. Использовать подпрограмму. -
В файле задан текст. Записать этот текст в другой файл, выполнив контекстную замену слова. Заменяемое и заменяющее слова вводятся с клавиатуры. -
Создать в файле текст, содержащий несколько предложений, которые заканчиваются точкой. Переписать этот текст в другой файл, отформатировав его так, чтобы в каждой строке нового файла либо содержалось n символов, если в ней отсутствует точка, либо она заканчивалась бы точкой. -
Текстовый файл представляет собой совокупность строк, состоящих из слов. Слова отделены друг от друга пробелом. Переписать этот текст в другой, поменяв местами первое слово каждой строки с последним. (Определить строку, в которой наибольшее количество заглавных букв). -
В текстовый файл поместить информацию о сотрудниках организации в виде: фамилия, год рождения. Переписать в конец файла в алфавитном порядке фамилии юбиляров (возраст оканчивается на 0 или 5) и их возраст в заданном пользователем году -
Создать n текстовых файлов с разным количеством строк. Вывести на экран их имена в порядке возрастания количества строк в файлах. -
В текстовом файле находятся две квадратные матрицы с их размерами в строго заданном виде: Размер матриц 3 Матрица 1 Матрица 2 3 4 5 2 0 3 2 5 0 3 5 1 1 2 4 4 1 8 Найти произведение матриц, и результат дописать в тот же файл, снабдив заголовком «Произведение матриц 1 и 2». |
15 | Создание модулей пользователя. Структура модуля. Использование подпрограмм по работе с файлами и данными структурированного типа в составе модуля. | -
Разработать функцию, вычисляющую произведение четных элементов одномерного числового массива, и процедуру, сортирующую этот массив по возрастанию, и поместить их модуль. Использовать этот модуль в программе, обрабатывающей два массива А1[4] и А2[5]. -
Разработать программу, определяющую что длиннее: гипербола y=1/x или парабола y=x2 в диапазоне изменения x от A до B с шагом H (В>A, H<B-A). Вычисление длины линии реализовать в подпрограмме, которую поместить в модуль. Использовать процедурный тип. -
Разработать программу, содержащую меню из четырёх пунктов: -
Создание типизированного файла записей (фамилия, номер телефона). -
Вывод содержимого файла на экран. -
Изменение номера у абонента с заданной фамилией (по запросу). -
Завершение работы. Первые три пункта реализовать в процедурах, которые поместить в модуль. -
Найти площадь криволинейного треугольника, образованного в результате пересечения трех функций. Для отладки программы выбрать следующие три функции: и рассмотреть треугольник в первом квадранте. Для решения задачи создать и поместить в модуль процедуры вычисления интеграла (методом трапеций) и корня трансцендентного уравнения (методом половинного деления). В процедурах использовать процедурный тип. -
Создать текстовый файл, который содержит n матриц заданных размеров. Расположить в текстовом файле матрицы в порядке возрастания содержащихся в них количеств простых чисел. Для решения задачи использованный типизированный файл матриц. Разместить в модуле процедуру для упорядочения одномерных массивов и функцию булевского типа для определения является ли целое число простым. -
Сформировать текстовый файл, содержащий несколько предложений. Найти числа - палиндромы и дописать их в конец файла. Для решения задачи разработать процедуру разделения строки на слова, функцию, определяющую, является ли слово числом и функцию, определяющую палиндром. Все подпрограммы поместить в модуль. |
16 | РУБЕЖНЫЙ КОНТРОЛЬ | Обработка файлов. Модули – 20(12) баллов. |
17 | ЗАЧЕТ |
2-й семестр |
1 | Понятие объекта и класса. Объектно-ориентированное программирование и визуальное проектирование в Delphi. Обработка символьных, строковых и числовых данных Компоненты TLabel, TEdit, TButton, TPanel. Обработка строк и чисел. Функция InputBox, процедура ShowMessage. | -
Ввести предложение. Определить в нём самое длинное слово и слово, последнее по алфавиту. -
Ввести два числа. Обеспечить выполнение основных четырёх арифметических действий. Учесть некорректный ввод чисел и невозможность деления на ноль. -
Разработать программу - кнопочный калькулятор. -
Задача об определении температуры, заданной в градусах Цельсия, в шкалах Реомюра и Фаренгейта. -
Решение квадратного уравнения ax2+bx+c=0 (с проверками коэффициента а, дискриминанта). -
Найти площадь треугольника по координатам его вершин на плоскости. -
Две окружности заданы своими радиусами R1, R2 и координатами их центров на плоскости O1(x1, y1), O2(x2, y2). Выдать сообщение о том, пересекаются, не пересекаются или касаются друг друга эти окружности. |
2 |
3 | Обработка одномерных массивов чисел, строк и записей. Компоненты TMemo, TListBox. | -
Ввести числовой массив. На место первого элемента записать среднее арифметическое его элементов, а на место последнего – среднее геометрическое. Вывести исходный и изменённый массивы. -
Ввести в поле ввода список фамилий. Вывести в другом поле этот список, упорядоченный по алфавиту. Найти самую короткую фамилию. -
Ввести массив записей (поля – «фамилия футболиста», «название клуба», «количество забитых мячей»). Вывести список фамилий футболистов запрашиваемого клуба. Найти самого результативного футболиста. -
Преобразовать целочисленный массив, расположив его элементы в порядке возрастания сумм цифр их значений. Исходный и преобразованный массивы отображаются в Memo1 (в виде строк или в виде столбцов). -
С использованием метода Add свойства Items создать в компоненте TListBox массив строк (фамилий). Предусмотреть режимы вставки (Insert), удаления (Delete), сортировки в прямом и в обратном направлении. -
В одномерном массиве целых чисел найти цифру, которая встречается чаще всего. -
Упорядочить одномерный массив по возрастанию. Выдать полученный массив на экран, указав рядом с каждым элементом в скобках его порядковый номер в исходном массиве -
Создать список фамилий с именами и номерами телефонов. Предусмотреть добавление новых строк, удаление выделенных строк, корректировку строк, сортировку по фамилиям и именам. |
4 | РУБЕЖНЫЙ КОНТРОЛЬ | Одномерные массивы чисел, строк и записей – 20(12) баллов. |
5 | Работа с таблицами. Компонент TStringGrid. Обработка двумерных массивов. | -
Создать таблицу с данными о нескольких деталях, содержащую: «Наименование детали», «Номер детали» и «Массу детали». Найти самую тяжелую деталь. -
Создать таблицу с данными о горах, содержащую: «Название горы», «Высота горы». Перенести данные о всех горах высотой более 5000 метров в другую таблицу. Найти среди гор второй таблицы самую низкую. -
Ввести двумерный массив чисел размерностью не более 5 строк на 10 столбцов (по запросу). Вывести его в виде матрицы в таблице. Упорядочить строки матрицы по убыванию и вывести изменённый массив в другой таблице. -
Разместить на форме два компонента TStringGrid и меню. В колонках таблицы должны отражаться следующие данные: фамилия студента, индекс группы и три оценки (целые числа). Активизация пунктов меню должна обеспечивать размещение данных в таблице, обработку данных таблицы, очистку таблиц и закрытие приложения. При активизации пункта «Обработка» в компоненте StringGrid2 должны быть представлены индексы групп и количество неуспевающих студентов в них. -
Указать в матрице местоположение элементов, являющихся числами Фибоначчи и одновременно простыми. -
Разместить в таблице фамилии студентов, номера групп, успеваемость по 4-м дисциплинам в баллах. Вывести по запросу: -
номер группы с наивысшим баллом; -
фамилии студентов – отличников (неуспевающих); -
средний балл студента по его фамилии. -
Разместить в таблице фамилии, имена, пол и год рождения сотрудников. Вывести фамилии всех юбиляров на текущую дату (использовать системное время) или фамилии всех мужчин или женщин заданного возраста |
6 |
7 | Обработка двумерных массивов. | -
Ввести двумерный массив чисел размерностью не более 5 строк на 10 столбцов (по запросу). Вывести его в виде матрицы в таблице. Вычислить суммы элементов в каждом столбце матрицы и вывести их в порядке возрастания. -
Ввести двумерный массив чисел размерностью не более 5 строк на 5 столбцов (по запросу). Вывести его в виде матрицы в таблице. В каждой строке матрицы поменять местами максимальный элемент с элементом побочной диагонали и вывести изменённый массив в другой таблице. -
Ввести двумерный массив чисел размерностью не более 5 строк на 5 столбцов (по запросу). Вывести его в виде матрицы в таблице. Поменять местами максимальный и минимальный элементы главной диагонали и вывести изменённый массив в другой таблице. -
Разместить на форме два компонента TStringGrid и меню (или четыре кнопки). В ячейках таблицы StringGrid1 должны отображаться элементы целочисленной матрицы. Активизация пунктов меню (кнопок) должна обеспечивать заполнение ячеек исходной таблицы, обработку матрицы, очистку таблиц и закрытие приложения. При активизации пункта «Обработка» в компоненте StringGrid1 должна появиться дополнительная колонка, в которой должны быть представлены элементы соответствующих строк, значения которых наиболее близки к средним арифметическим соответствующих строк, а в компоненте StringGrid2 должны быть представлены строки исходной матрицы, среднее арифметическое в которых больше заданного числа, которое вводится функцией InputBox. Значения элементов матрицы задаются случайными числами. Подпрограммы заполнения матрицы, нахождения искомых элементов должны размещаться в модуле пользователя. -
Найти произведение двух матриц. Первый и второй сомножитель в произведении определяет пользователь. Использовать три компонента TStringGrid. -
Поменять местами строки матрицы, в которых находятся наибольший и наименьший элементы матрицы. Представить результат в новой таблице. -
Заданы две квадратные матрицы одинакового размера. Провести взаимный обмен элементов матриц, расположенных на одинаковых местах в правом треугольнике между диагоналями. Результат представить в новых таблицах. |
8 | РУБЕЖНЫЙ КОНТРОЛЬ | Двумерные массивы. Таблицы – 30(18) баллов. |
9 | Обработка текстовых файлов. Компоненты TOpenDialog, ТSaveDialog, TMainMenu. Обработка типизированных файлов. | -
Разработать программу, содержащую меню, позволяющее: -
Создавать, открывать и сохранять текстовый фал из нескольких строк – предложений. -
Находить в файле самое короткое предложение. -
Находить в файле само длинное слово. -
Определять сколько раз в файле встречается запрашиваемое слово. -
Завершать работу программы. -
Разработать программу, содержащую меню, позволяющее: -
Создавать, открывать и сохранять типизированный фал из записей (поля – «марка автомобиля», «год выпуска» и «цена») -
Добавлять, удалять и редактировать записи. -
Выводит данные об автомобилях запрашиваемого года выпуска. -
Находить в файле самый дешевый автомобиль. -
Завершать работу программы. -
Разместить на форме меню и компонент TMemo. В строках редактора должны отображаться следующие данные: фамилия студента, индекс группы и три оценки (целые числа). Каждое значение начинается с фиксированной позиции. Активизация пунктов меню режима «Файл» должна обеспечивать сохранение данных в текстовом файле (опции «сохранить» и «сохранить как»), загрузку данных из текстового файла (опция «открыть») и размещение их в Memo и выход из приложения. Выбор имени файла осуществляется с использованием стандартных диалогов. При активизации режима «Обработка» из открытого файла должны быть считаны данные и в компоненте Memo представлены фамилии отличников. -
В текстовом файле, найти слова, которые начинаются с прописной или строчной гласной (согласной) буквы, слова – числа, слова – палиндромы. Переместить эти слова в другой файл в алфавитном порядке по возрастанию (убыванию). -
Создать типизированный файл записей типа: фамилия, год рождения, пол, специальность, стаж работы. Переместить в другой файл фамилии людей заданного возраста, специальности и т.д., расположив их в алфавитном порядке. -
В текстовом файле записана программа на языке Pascal. Проверить правильность расстановки служебных слов begin и end (регистр символов произволен), правильность расстановки скобок в выбранной строке. |
10 |
11 | Многооконные и многомодульные приложения. | -
Разработать программу, содержащую меню, позволяющее: -
Создавать и выводить одномерный массив чисел (в основном окне). -
Вычислять сумму четных элементов массива (в основном окне). -
Сортировать массив по возрастанию или по убыванию и выводить (в 1-м дополнительном окне). -
Выводить справочную информацию о программе (во 2-м дополнительном окне). -
Завершать работу программы. Вычисление суммы и сортировки оформить в виде подпрограмм, которые поместить в отдельный дополнительный модуль. -
Разработать программу, содержащую меню, позволяющее: -
Создавать, открывать и сохранять текстовый фал из нескольких строк, содержащих фамилию и имя (в основном окне). -
Находить в тексте заданное имя (InputBox, ShowMessage). -
Сортировать строки текста в алфавитном или в обратном порядке (в основном окне). -
Выводить отдельно список фамилий или список имён (в 1-м дополнительном окне). -
Выводить информацию об авторе программы (во 2-м дополнительном окне). -
Завершать работу программы. В дополнительный модуль поместить процедуру, удаляющую лишние пробелы и вызываемую из основного модуля и из 1-го дополнительного модуля. -
Приложение, обеспечивающее для функции f(x), выбираемой из заданного набора (компонент TComboBox), вычисление в произвольном диапазоне значений аргумента[a,b],разбиваемом на N интервалов, и представление в табличном виде: -
в произвольных сочетаниях значений самой функции, приближенных значений ее первой и второй производной и накапливаемых значений интеграла на соответствующих значениях аргумента; -
приближения корней уравнения f(x)=0; -
приближения экстремумов f(x) и значений функции в них. F(x)=Sin(z)*Sh(z*x)+Sh(z)*Sin(z*x); F(x)=Sin(z*x)*Sh(z)-Sh(z*x)*Sin(z); ( уравнения собственных форм колебаний). Значения z выбираются из заданного списка в компоненте TComboBox. -
Разработать программу для работы с файлами, в которых содержится информация о работниках предприятия. Файл анкетных данных, файл продвижений по службе, файл предыдущих мест работы и должностей и др. Обеспечить возможность добавления новых данных, удаления и корректировки данных, подбора сотрудников по заданным критериям, сортировку подборки по разным признакам и др. |
12 | РУБЕЖНЫЙ КОНТРОЛЬ | Многооконные и многомодульные приложения – 30(18) баллов. |
13 | Графика в Delphi. Построение и преобразование изображений. Компоненты TImage, TShape. Свойство Canvas. Графика в Delphi. Движение. Компонент TTimer. | -
Используя различные методы рисования графических примитивов (линия, прямоугольник, круг, эллипс, дуги и т.д.), изобразить дом (автомобиль, корабль, самолёт, автобус, бабочку, рыбу, жука, кошку и т.п.) и подписать рисунок. Выполнить линейные преобразования (перенос, масштабирование, поворот) с ними. -
Изобразить один из вариантов анимации: -
Подпрыгивающий и вращающийся разноцветный мяч. -
Уменьшающийся в размере (тающий) снеговик, под которым появляется лужа. -
Два разноцветных круга, произвольно движущихся по прямоугольному полю и отскакивающих друг от друга и от границ этого поля. -
Часы, с циферблатом и движущимися стрелками. -
Спутник, стартующий с Земли, облетающий Луну (по эллиптической траектории) и возвращающийся обратно. -
Колебательное движение маятника. Маятник представляет собой нить, на конце которой - вращающееся колесо со спицами. -
Движение по диагонали экрана треугольника с одновременным его вращением вокруг одной из вершин. -
Движение планет солнечной системы, сталкивающихся с произвольно перемещающимися по системе телами. |
14 |
15 | Графика в Delphi. Построение графиков функций. | -
Разработать программу, позволяющую строить график функции (например, y=sin(x)) в диапазоне изменения x от А до В (В>A - вводятся по запросу). Поле вывода графика покрыто координатной сеткой, а на осях системы координат подписаны значения аргумента и функции. -
Разработать программу, позволяющую строить на одном поле графики двух функции (например, y=sin(x) и y=2cos(x)) в одном и в разных масштабах. Использовать процедурный тип. -
В дополнение к задаче 11.3 построить в новом окне график функции, которая представляет собой отношение выбранной из заданного списка функции к ее максимальному значению. -
Построение графика функций с бесконечными разрывами (1/x, tg(x), sin(x)/x и др.). |
16 | РУБЕЖНЫЙ КОНТРОЛЬ | Графика в Delphi – 20(12) баллов. |
17 | ЗАЧЕТ |