1. “Путешествующая парабола”. Написать программу, рисующую координатные оси с началом координат в центре экрана и строящую параболу y=x2. В правом нижнем углу экрана выводится формула, описывающая график функции в виде: y = a(x + b)2 + c.
Далее программа ожидает нажатия следующих клавиш и выполняет соответствующую работу. Клавиши R (вправо), L (влево), D (вниз), U (вверх) вызывают смещение вершины параболы на единицу в указанном направлении и изменение формулы. По оси Ox перемещение от –30 до +30. По оси Oy перемещение от –20 до +20.
Клавиша “+” вызывает изменение коэффициента a на +0.1.
Клавиша “–” вызывает изменение коэффициента a на –0.1.
Коэффициент a изменяется от –1 до +1.
При перемещении параболы или изменении коэффициента a формула также изменяется.
Нажатие клавиши “ESC” (код 27) завершает работу программы.
2. Отношения. Заданы выражения вида a @ b (количество которых меньше или равно 30), связывающие величины a и b, где a и b — любые строчные буквы латинского алфавита (возможно совпадающие), а @ — одно из шести отношений <, <=, =, <> (не равно), >=, >. В различных выражениях одни и те же буквы могут повторяться. Если введенные выражения противоречивы, то нужно сообщить об этом, иначе по двум заданным буквам написать наиболее точное выражение, связывающее их, или указать, что отношения, связывающие эти величины, неизвестны.
Технические требования
Каждое выражение вводится в отдельной строке.
Пример 1
Выражения: a < b, y >= x, a <= b, b = x, x = b, z <= z.
Первая заданная буква: y, вторая заданная буква: a.
Ответ: y > a.
Пример 2
Выражения: a < b, b < c, a = c.
Ответ: Противоречивые данные.
3. “Головоломка”.
Квадрат размером 5 * 5 вдоль линий сетки разбили на несколько фигурок. Написать программу, которая определяет, можно ли переложить часть фигурок так, чтобы снова образовался квадрат размером 5 * 5. При перекладывании не разрешается поворачивать или переворачивать фигурки.
Технические требования
Входные данные — символьная матрица размером 5 * 5. Каждая буква в матрице означает идентификатор фигурки, содержащей соответствующую клетку. Идентификаторами являются заглавные буквы латинского алфавита от A до Y. Программа должна выдавать другой способ составления квадрата размером 5 * 5, либо сообщение, что это невозможно.
Пример входных данных | Пример выходных данных | ||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
4. “Строчки”. Заданы две символьные строки A и B. Требуется вычислить, сколькими способами можно получить строку B из строки A, вычеркивая некоторые символы. Например, если строки A и B имеют соответственно вид Самарина Ирина и Сара, то искомое число равно 7, для строк aaabbbbccc и abc это число равно 36.
Задание: напишите программу, находящую требуемое число способов.