- •1. Программирование линейных алгоритмов
- •2. Программирование разветвляющихся алгоритмов
- •3. Табулирование функций
- •3.1. Табулирование функции одной переменной
- •3.2. Табулирование кусочно-непрерывной функции
- •4. Работа с одномерными массивами
- •4.1. Вычисление сумм, количеств и произведений элементов массива
- •4.2. Выделение минимального и максимального элементов массива
- •4.3. Формирование новых массивов
- •4.4. Обработка упорядоченных массивов
- •4.5. Дополнительные задачи
- •5. Работа с двумерными массивами
- •5.1. Вычисление сумм, произведений и количеств элементов матрицы.
- •5.2. Выполнение вычислений в строках и столбцах матрицы.
- •5.3. Поиск строк и столбцов в матрице.
- •5.4. Дополнительные задачи
2. Программирование разветвляющихся алгоритмов
Задание 2.1.
Разработать интерфейс проекта, составить графическую схему алгоритма и программу вычисления функции y=f(x) в соответствии с видом функции, приведенном в таблице 2.1. Для ввода исходных данных, вывода исходных данных и результатов использовать только одну форму. Вывести условие задачи в многострочном текстовом поле Memo, исключив возможность его изменения на этапе выполнения. В программе предусмотреть вывод:
значения аргумента функции x;
вычисленного значения функции y;
номера формулы, по которой производилось вычисление функции (1, 2 или 3).
Исходные данные для отладки программы выбрать самостоятельно. Предусмотреть отладку программы для каждого интервала изменения функции и для каждой точки ветвления функции.
Таблица 2.1
Вариант |
Вид функции |
|||||
1 |
|
(1) (2)
(3) |
||||
2 |
|
(1) (2)
(3) |
||||
3 |
|
(1) (2)
(3) |
||||
4 |
|
(1) (2)
(3) |
||||
5 |
|
(1) (2)
(3) |
||||
6 |
|
(1) (2)
(3) |
||||
7 |
|
(1) (2)
(3) |
||||
8 |
|
(1) (2)
(3) |
||||
9 |
|
(1) (2)
(3) |
||||
10 |
|
(1) (2)
(3) |
||||
11 |
|
(1) (2)
(3) |
||||
12 |
|
(1) (2)
(3) |
||||
13 |
|
(1) (2)
(3) |
||||
14 |
|
(1) (2)
(3) |
||||
15 |
|
(1) (2)
(3) |
||||
16 |
|
(1) (2)
(3) |
||||
17 |
|
(1) (2)
(3) |
||||
18 |
|
(1) (2)
(3) |
||||
19 |
|
(1) (2)
(3) |
||||
20 |
|
(1) (2)
(3) |
||||
21 |
|
(1) (2)
(3) |
||||
22 |
|
(1) (2)
(3) |
||||
23 |
|
(1) (2)
(3) |
||||
24 |
|
(1) (2)
(3) |
||||
25 |
|
(1) (2)
(3) |
||||
26 |
|
(1) (2)
(3) |
||||
27 |
|
(1) (2)
(3) |
||||
28 |
|
(1) (2)
(3) |
||||
29 |
|
(1) (2)
(3) |
||||
30 |
|
(1) (2)
(3) |
||||
Задание 2.2.
Выполнить задание в соответствии со своим вариантом в таблице 2.2. Для ввода исходных данных, вывода исходных данных и результатов использовать только одну форму. Вывести условие задачи в многострочном текстовом поле Memo, исключив возможность его изменения на этапе выполнения.
Исходные данные для отладки программы выбрать самостоятельно так, чтобы проверить все возможные варианты выполнения программы.
Таблица 2.2
Вариант |
Задание |
|
1 |
Определить, в какой четверти или на какой оси координатной плоскости находится точка с координатами х, у |
|
2 |
Даны два числа неравных друг другу. Меньшее из них заменить их полусуммой, большее – их удвоенным произведением |
|
3 |
Даны три целых положительных числа. Если все они четные, каждое число уменьшить в два раза. Если хотя бы одно из них четное, увеличить каждое число на 20 %. Если четных чисел нет, оставить числа без изменения |
|
4 |
Даны три целых числа. Найти минимальное из них и прибавить минимальное значение к числам, отличным от минимального |
|
5 |
Даны три целых числа. Определить, могут ли они быть сторонами треугольника. Если могут, то определить какой это треугольник: равнобедренный, равносторонний или разносторонний |
|
6 |
Даны два угла (в градусах). Определить, существует ли треугольник с такими углами. Если да, то будет ли он прямоугольным |
|
7 |
Даны три числа. Если только одно из них положительное, то найти площадь квадрата со стороной, равной значению положительного числа. В противном случае вывести соответствующее сообщение |
|
8 |
Даны числа a, b. Если b = 0, то найти min (a, b), если b < 0, то найти max (a, b), в противном случае каждое число уменьшить на 20 % |
|
9 |
Даны два целых числа неравных друг другу. Большее из них увеличить на 50 %, меньшее заменить суммой заданных чисел |
|
10 |
Даны числа a, b, c, d. Найти min {max (a, b), max (c, d)} |
|
11 |
Даны два целых числа a, b. Найти вещественные корни уравнения ax2 + b = 0 или вывести сообщение об их отсутствии |
|
12 |
Даны числа a, b, c, d. Если a > b > c > d, то каждое число заменить наибольшим из всех чисел. Если a < b < c < d, то каждое число заменить его квадратом, в противном случае оставить числа без изменения |
|
Окончание табл. 2.2
Вариант |
Задание |
13 |
Даны числа a, b, c. Если все они равны нулю, вывести об этом сообщение. Если среди чисел нет нулей, найти и вывести их произведение, в противном случае нули заменить суммой двух других чисел |
14 |
Даны числа a, b, c. Вычислить max (a + b + c, abc) · min (a, b, c) |
15 |
Определить, где находится точка с координатами х, у: на окружности радиуса r с центром в начале координат, внутри круга радиуса r или вне его |
16 |
Даны числа a, b, c, d. Если ни одно из чисел a, b, c не равно d, то найти max(d – a, d – b, d – c) |
17 |
Даны три целых числа a, b, c. Найти вещественные корни уравнения ax2 + bx + c = 0 или вывести сообщение об их отсутствии |
18 |
Определить правильность даты, заданной тремя целыми числами (день, месяц, год) |
19 |
Даны три числа. Найти сумму минимального и максимального среди них |
20 |
Даны числа a, b, c, d. Найти max {min(a, b), min(c, d)} |
21 |
Даны три целых положительных числа. Если все они нечетные, каждое число увеличить в два раза. Если хотя бы одно из них нечетное, оставить числа без изменения, если нечетных чисел нет, увеличить каждое число на 50 % |
22 |
Даны два целых числа неравных друг другу. Большее из них уменьшить на 30 %, меньшее заменить произведением заданных чисел |
23 |
Даны три числа. Если все они отрицательные, каждое число увеличить на 40 %. Если хотя бы одно из них отрицательное, уменьшить каждое число в два раза. Если отрицательных чисел нет, оставить их без изменения |
24 |
Даны три числа a, b, c. Если все они положительны, вычислить площадь треугольника со сторонами a, b и c. Если среди них есть хотя бы одно отрицательное число, найти сумму чисел |
25 |
Даны числа a, b, c. Вычислить min(a + b + c, abc) · max (a, b, c) |
26 |
Даны числа a, b, c, d. Если a < b < c < d, то каждое число заменить наименьшим, если a > b > c > d, то каждое число уменьшить на 40 %, в противном случае оставить числа без изменения |
27 |
Даны числа a, b. Если a < 0, то найти max (a, b). Если a = 0, то найти min (a, b), в противном случае каждое число увеличить на 50 % |
28 |
Даны числа a, b, c. Если среди них нет положительных чисел, вывести об этом сообщение. Если все они положительные, найти и вывести их сумму, в противном случае положительные числа уменьшить на 20 % |
29 |
Даны числа a, b, c, d. Если ни одно из чисел a, b, c не равно d, то найти min(a – d, b – d, c – d) |
30 |
Даны числа a, b, c. Найти произведение минимального и максимального из них |
