Задания для 11Б1 и 11Б3 класса
Как поступать в вузы в 2015 году?
Второе полугодие
Пучка, Аляпин, Боровков, Бурцева, Ибраева, Корженкова, Оревкова, Щепинова
Система компьютерной алгебры Maxima
Все остальные:
Подготовка к ЕГЭ
Первое полугодие
PySide: документация, установка и т.д.
Вход в систему
Таблица результатов
Турнир стратегий быки и коровы
8-13 декабря (12)
Пример с урока
Функционал приложения:
Наличие не менее трех фракталов. Масштабирование фрактала при помощи колеса мыши. Перемещение фрактала внутри окна при помощи мыши. Изменение размеров окна.
Требования к масштабированию:
1. Все три операции (перемещение фрактала мышью, изменение масштаба про помощи колеса, изменение размеров окна должны происходить "гладко", то есть не должно быть резких скачков изображения при последовательных применений разных операций).
2. Масштаб изображения меняется только при движении колесом мышью. При изменении размеров окна масштаб фрактала не меняется.
3. При движении колеса мыши масштаб меняется таким образом, что точка, расположенная в центре окна, остается неподвижной (вариант, который тоже принимается – неподвижной остается точка, на которую указывает мышь).
4. При изменении размеров окна масштаб не меняется, а изображение перемещается таким образом, чтобы точка, которая была в центре окна, продолжала оставаться в центре окна.
1-6 декабря (11)
Разные фракталы
Реализовать приложение, рисующее минимум три из перечисленных фракталов. Функционал приложения:
а) выбор типа фрактала при помощи элемента управления типа QRadioButton или QComboBox
б) выбор глубины рекурсии фрактала при помощи элемента управления
в) автоматическое масштабирование фрактала при изменении размеров окна приложения.
24 ноября – 29 ноября (10)
Пример с урока
Окно приложения должно содержать SpinBox, управляющий количеством итераций кривой Коха. Размеры кривой Коха должны меняться при изменении размеров окна. Сама кривая Коха должна быть максимального размера, допустимого для данного размера окна и располагаться в центре окна.
17 ноября – 22 ноября (9)
Пример с урока
Кривая Коха должна отрисовываться методом PaintEvent. Размер кривой Коха определяется размерами виджета. Количество итераций определяется private-членом класса виджета. Виджет имеет слот, обновляющий значение числа итераций. Приложение имеет элемент управления, посылающий сигнал об изменении количества итераций.
10 ноября – 15 ноября (8)
Пример с урока
Задание: в виджете размером XxY нарисовать кривую Коха порядка n.
Значения X, Y, N определяются константами в начале программы, например:
X = 500 Y = 200 N = 5
25 октября – 30 октября (6)
Классная работа – перекрестное тестирование.
18 октября – 24 октября
Функциональность приложения – есть два режима игры: человек отгадывает число и компьютер отгадывает число. Необходимо реализовать процесс отгадывания числа компьютером (алгоритм должен быть достаточно эффективным). Компьютер также должен произодить контроль корректности всех ответов пользователя, если пользователь дал противоречивые ответы, компьютер должен сообщить об этом.
11 октября – 17 октября (5)
Функциональность приложения. Хранение таблицы результатов лучших игроков (угадавших за минимальное число ходов). Должно храниться несколько лучших результатов. При удачном окончании игры приложение запрашивает имя игрока (это удобно делать при помощи InputDialog), сохраняет его в файле с лучшими результатами. Должна быть возможность просмотра лучших результатов (можно при помощи MessageBox).
Пример использования InputDialog для ввода строки
Если файла с результатами не существует, то его нужно создать. Для этого нужно открывать файл под обработкой исключений и перехватывать исключение FileNotFoundError.
Пример реализации открытия файла с перехватом исключения
4 октября – 10 октября (4)
Функциональность приложения. В окне две кнопки "Угадать" и "Сдаться". Также ведется подсчет числа попыток. Не учитывается в качестве попытки: ввод некорректного числа, ввод числа, совпадающего с тем числом, которое было введено последним перед этим.
При нажатии на кнопку "Сдаться" выводится задуманное число и игра начинается заново.
При нажатии на кнопку "Угадать" идет проверка числа и выводится сообщение о результате проверки. Если в результате проверки было угадано задуманное число, то выводится сообщение об этом, выводится число ходов и на кнопке "Сдаться" текст меняется на "Новая игра", а нажатия на кнопку "Угадать" игнорируются (можно сделать кнопку неактивной). После нажатия на кнопку "Новая игра" задумывается новое число, текст кнопки меняется на "Сдаться" и все начинается заново.
27 сентября – 3 октября (3)
Реализация игры Быки и коровы.
Функциональность приложения. После запуска программы компьютер генерирует случайное 4-значное число (все цифры различны, начинается не с нуля). Число выводится на стандартный вывод. Главное окно приложения содержит поле ввода (QLineEdit) для ввода задуманного числа, кнопку "Проверить" (QPushButton) и строчку для вывода сообщения (QLabel). При нажатии на кнопку производится проверка введенного числа, и либо выводится сообщение о том, что число – некорректно, либо выводится количество быков и коров для введенного числа. Сообщения выводятся путем изменения текста у объекта QLabel.
20-26 сентября (2)
Задание. Добавить в приложение три кнопки: увеличение значения на 1, уменьшения на 1 и сброса значения.
13-19 сентября (1)
Задание 0. Установить дома PySide, сделать скриншот запущенной среды Wing IDE и запущенного приложения, испоользующего библиотеку PySide. Скриншот сохранить в формате JPEG и сдать в тестирующую систему.
Задание 1. Создать приложение, содержащее четыре кнопки, связать их с разными слотами главного окна приложения или других элементов, находящихся в главном окне. Приложение (файл на языке питон) сдать в тестирующую систему.
Документация на слоты класса QWidget