Это старая версия Информатика/Aрхив/2022/11Д-2 за 20.11.2021 11:56 под редакцией DenisKirienko.
11 Д-2
Как поступать в вуз в 2022 году?Первое полугодие: Qt
Конспекты уроков по работе с Qt
Установщик для Windows. При установке выберите «Qt 6.1 for desktop development», и вы получите минимально работающий комплект Qt 6.1. Подробнее смотрите в инструкции по установке. Для установки в Linux лучше пользоваться пакетами из дистрибутива вашей системы, можно использовать версию 5 Qt.
Документация на Qt
Вход в тестирующую систему
Таблица результатов
20 ноября (8)
Пример с урока
Кривая Коха должна отрисовываться методом paintEvent. Виджет имеет слот, обновляющий значение числа итераций. Этот слот должен изменить значения члена класса, хранящего число итераций, и вызвать для виджета метод repaint() для обновления содержимого.
Приложение имеет элемент управления, посылающий сигнал об изменении количества итераций, связанный с данным слотом.
Размер окна приложения XxY определяется константами в начале программы, например:
X = 500
Y = 200
При изменении этих констант должны меняться размеры окна и виджета. Между тем метод repaint() для виджета должен использовать для определения размеров виджета не константы, а методы типа width() и height().
Кривая (именно кривая, а не нижняя линия кривой) должна размещаться в центре окна и целиком помещаться в окне, при этом быть максимально возможного размера.
7 ноября (7)
Пример с урокаСоздайте окно приложения и нарисуйте внутри виджета кривую Коха порядка N. Значение числа итераций должно определяться константой в одном месте кода. Например:
const int N = 5;
Кривая должна размещаться в центре окна и целиком помещаться в окне. Кривая должна «смотреть вверх».
При рисовании QPainter нужно передавать действительные координаты (так кривая будет выглядеть лучше), это делается так:
QPainter::drawRect(QPointF(x1, y1), QPointF(x2, y2))
16 октября (5)
Функциональность приложения. Хранение таблицы результатов лучших игроков (угадавших за минимальное число ходов). Должно храниться пять лучших результатов. При удачном окончании игры (если игрок будет добавлен в таблицу результатов), приложение запрашивает имя игрока (это удобно делать при помощи InputDialog), сохраняет его в файле с лучшими результатами. Должна быть возможность просмотра лучших результатов (можно при помощи MessageBox). Выдача лучших результатов – в порядке неубывания числа ходов, использованных при отгадывании.Программа должна корректно работать как при наличии, так и при отсутствии таблицы результатов. Если файла с результатами не существует, то его нужно создать. Чтобы проверить корректность открытия файла можно использовать метод is_open у файлового потока.
9 октября (4)
Функциональность приложения – полноценный игровой режим с началом новой игры и подсчётом числа ходов.В окне две кнопки «Угадать» и «Сдаться». Также ведется подсчет числа попыток, за которое было угадано число. Не учитывается в качестве попытки: ввод некорректного числа, ввод числа, совпадающего с тем числом, которое было введено последним перед этим.
При нажатии на кнопку «Угадать» идет проверка числа и выводится сообщение о результате проверки. Если в результате проверки было угадано задуманное число, то выводится сообщение об этом, выводится число ходов и на кнопке «Сдаться» текст меняется на «Новая игра», а нажатия на кнопку «Угадать» игнорируются (можно сделать кнопку неактивной). После нажатия на кнопку «Новая игра» задумывается новое число, текст кнопки меняется на «Сдаться» и все начинается заново.
При нажатии на кнопку «Сдаться» выводится задуманное число, после чего пользователю предлагается начать новую игру нажатием на кнопку «Новая игра».
Слова «быки» и «коровы» должны склоняться по правилам русского языка, например, «1 бык 2 коровы»
После начала новой игры информация о предыдущей игре из окна приложения должна быть убрана.
2 октября (3)
Реализация игры Быки и коровы.Функциональность приложения. После запуска программы компьютер генерирует случайное 4-значное число (все цифры различны, начинается не с нуля). Число выводится на стандартный вывод (в cout), в отладочных целях. Главное окно приложения содержит поле ввода (QLineEdit) для ввода задуманного числа, кнопку «Проверить» (QPushButton) и строчку для вывода сообщения (QLabel). При нажатии на кнопку производится проверка введенного числа, и либо выводится сообщение о том, что число некорректно, либо выводится количество быков и коров для введенного числа. Сообщения выводятся путем изменения текста у объекта QLabel.
Все надписи должны быть на русском языке. Для этого используйте среду QtCreator, она будет сохранять файлы в кодировке UTF-8.
26 сентября (2)
Пример с урокаЗадание. Добавить в приложение три кнопки: увеличение значения на 1, уменьшения на 1 и сброса значения. Нажатие на эти кнопки должно приводить к изменению значения в классе MyCounter и всех элементах управления на экране (LineEdit, SpinBox, Slider).
18 сентября (1)
Пример с урокаЗадание 0. Установить дома Qt и QtCreator, сделать скриншот запущенной среды QtCreator и запущенного приложения, использующего библиотеку Qt. Скриншот сохранить в формате JPEG и сдать в тестирующую систему.
Задание 1. Создать приложение, содержащее четыре кнопки, связать их с разными слотами главного окна приложения (нельзя использовать слот hide). Приложение должно иметь приличный вид, надписи на кнопках должны быть понятными и соответствовать выполняемым действиям.
Документация на слоты класса QWidget
Требования к проектам, сдаваемых в систему:
- Проект должен быть сжат при помощи архиватора zip.
- Необходимо архивировать каталог с проектом, а не только файлы внутри него.