Практическое задание №22
Тема: Ветвления на Паскале. 
Программирование диалога с компьютером

1 уровень сложности	
1. Дано целое число А. Если значение А > 0, то необходимо увеличить его  на единицу. Написать программу для решения этой задачи. Программа должна иметь дружественный интерфейс. Протестировать программу для A=5, A=-4, A=0.

2. Дано целое число А. Если значение А < 0, то необходимо удвоить его. Написать программу для решения этой задачи. Программа должна иметь дружественный интерфейс. Протестировать программу для A=6, A=-10, A=0.

3. Дано целое число А. Если значение А <> 0, то необходимо уменьшить его на 4. Написать программу для решения этой задачи. Программа должна иметь дружественный интерфейс. Протестировать программу для A=2, A=-1, A=0.

4. Дано целое число А. Если значение А > 0, то необходимо увеличить его  на единицу, иначе уменьшить на 1. Написать программу для решения этой задачи. Программа должна иметь дружественный интерфейс. Протестировать программу для A=3, A=0, A=-12.

5. Дано целое число А. Если значение А = 0, то необходимо увеличить его  на 3, иначе присвоить А значение равное 0. Написать программу для решения этой задачи. Программа должна иметь дружественный интерфейс. Протестировать программу для A=0, A=-1, A=8.

6.  Даны два действительных числа X и Y. Если X>Y, то вычислить произведение этих чисел, иначе их сумму. Программа должна иметь дружественный интерфейс. Протестировать программу на трёх различных тестах (X>Y, X=Y и X<Y).

2 уровень сложности	
1. Даны два действительных числа X и Y, не равные друг другу. Заменить меньшее из этих чисел половиной их суммы, а большее – их удвоенным произведением. Программа должна иметь дружественный интерфейс.

2. Точка А задана координатами X,Y. Написать программу, которая выводит слово «Принадлежит», если точка принадлежит  заштрихованной области (см. рисунок 1)  и «Не принадлежит» в противном случае. Программа должна иметь дружественный интерфейс. Протестировать программу для точек (1.5,2), (0,0), (-1.5, 1),  (1,-1.2), 
(-2,-1).

Рис.1

3. Точка А задана координатами X,Y. Написать программу, которая выводит слово «Принадлежит», если точка принадлежит  заштрихованной области (см. рисунок 2)  и «Не принадлежит» в противном случае. Программа должна иметь дружественный интерфейс. Протестировать программу для точек (2.5, 2), (1,1), (0,0), (1,0), (2,-1).

Рис.2

4. Точка А задана координатами X,Y. Написать программу, которая выводит слово «Принадлежит», если точка принадлежит  заштрихованной области (см. рисунок 3)  и «Не принадлежит» в противном случае. Программа должна иметь дружественный интерфейс. Протестировать программу для точек (0,0.8), (0,0), (-1.5,1), (1,1.5), 
(-2,-1).

Рис.3

5. Составить на Паскале программу определения минимума из трёх чисел без использования логических операций. Программа должна иметь дружественный интерфейс (ввод данных осуществляться в режиме диалога). Протестировать программу на следующих исходных данных:
а) 2    5    1
б) 0   -2    8
в) -4   5    10

6. Разработать программу для подсчета количества отрицательных чисел среди целых чисел a, b, c. Программа должна иметь дружественный интерфейс.  Протестировать программу для всех возможных случаев (когда количество отрицательных чисел равно 0, 1, 2 и 3).

3 уровень сложности	
1. Составить на Паскале программу, которая по введённому номеру месяца выводит название времени года. При написании программы использовать логические операции. При неверном вводе месяца должно выдаваться сообщение об ошибке ввода и программа должна прекращать свою работу. Программа должна иметь дружественный интерфейс. Протестировать программу на всех целых числах от 0 до 13. 

2. Треугольник задан длинами сторон А, В, С. Написать программу, определяющую, существует ли данный треугольник. Для решения этой задачи использовать сложные логические условия. Программа должна иметь дружественный интерфейс. Протестировать программу для следующих исходных данных:
а) A=3, B=4, C=5
б) A=1, B=1, C=1
в) A=0, B=4, C=5
г) A=-3, B=6, C=5
д) A=2, B=1, C=8

3. Разработать программу для отыскания  max(min(a,b), min(c,d)),  не используя сложные логические условия и вложенные ветвления. Числа a,b,c,d - целые. Программа должна иметь дружественный интерфейс. Протестировать программу для следующих исходных данных:
а) a=4 b=5 c=6 d=9
б) a=2 b=1 c=6 d=9
в) a=2 b=1 c=8 d=4
г) a=12 b=1 c=6 d=9

4. Точка А задана координатами X,Y. Написать программу, которая выводит слово «Принадлежит», если точка принадлежит  заштрихованной области (см. рисунок 4)  и «Не принадлежит» в противном случае. Программа должна иметь дружественный интерфейс. Протестировать программу для точек (0,0), (1,0), (1.5,1), (-1,1.5), (-2,-1), (2,-1), (1,-1), (-1,1).

Рис. 4

5. Точка А задана координатами X,Y. Написать программу, которая выводит слово «Принадлежит», если точка принадлежит  заштрихованной области (см. рисунок 5)  и «Не принадлежит» в противном случае. Программа должна иметь дружественный интерфейс. Протестировать программу для точек (0,0), (1.5,1), (2,1), (1,-1), (-0.5,-0.2), (-2,-1),  (-1,-2), (-1,1), (-3, 1).

Рис.5

6. Точка А задана координатами X,Y. Написать программу, которая выводит слово «Принадлежит», если точка принадлежит  заштрихованной области (см. рисунок 6)  и «Не принадлежит» в противном случае. Программа должна иметь дружественный интерфейс. Протестировать программу для точек (0,0), (2,2), (0.5,0.5), (0.5,-1.5), 
(-0.5,0.5), (-2,-1), (-1,-2), (-1,1), (2, 0).

Рис.6