Это старая версия Информатика/Архив/2021/11В за 31.10.2020 10:50 под редакцией DenisKirienko.
Просмотр кода страницы 11 В страница
**!!В субботу, 11:00 (третий урок) - общее занятие для всего класса в Zoom!!** Физика у всего класса будет в 13:00 Zoom: https://us02web.zoom.us/j/3815812552 Код доступа: номер кабинета информатики, где у нас занятия ((Поступление2021 Как поступать в вуз в 2021 году?)) Дома на псевдоканикулах - делать задания "Быки и коровы" (**два** новых задания). Личные консультации - по запросу. Почта: file:/DenisKirienko/myemail.png Телеграм: @dkirienko Маттермост: @dk ==Первое полугодие: Qt + ~PySide2== ((/Информатика/PySide2 PySide2 - установка, документация)) ((http://server.179.ru/cgi-bin/new-client?contest_id=1131&locale_id=1 Вход в тестирующую систему)) ((http://server.179.ru/ejudge/stand/mp/stand.php?contest=1131 Таблица результатов)) ===31 октября (6)=== Функциональность приложения - есть два режима игры: человек отгадывает число и компьютер отгадывает число. Необходимо реализовать процесс отгадывания числа компьютером (алгоритм должен быть достаточно эффективным). Компьютер также должен производить контроль корректности всех ответов пользователя, если пользователь дал противоречивые ответы, компьютер должен сообщить об этом (сразу же после того, как набор ответов стал противоречивым) и отказаться угадывать дальше. Это задание может быть реализовано и сдано без хранения таблицы результатов (отдельно от задания 6). ===24 октября (5)=== Функциональность приложения. Хранение таблицы результатов лучших игроков (угадавших за минимальное число ходов). Должно храниться пять лучших результатов. При удачном окончании игры (если игрок будет добавлен в таблицу результатов), приложение запрашивает имя игрока (это удобно делать при помощи ((https://doc.qt.io/qtforpython/PySide2/QtWidgets/QInputDialog.html InputDialog))), сохраняет его в файле с лучшими результатами. Должна быть возможность просмотра лучших результатов (можно при помощи ((https://doc.qt.io/qtforpython/PySide2/QtWidgets/QMessageBox.html MessageBox))). Выдача лучших результатов – в порядке неубывания числа ходов, использованных при отгадывании. ((https://u.pcloud.link/publink/show?code=XZmTqpXZUH6eeuuh4cRei8bcDonRqSsVPomy Пример использования ~InputDialog для ввода строки)) Программа должна корректно работать как при наличии, так и при отсутствии таблицы результатов. Если файла с результатами не существует, то его нужно создать. Как проверить корректность открытия файла? Можно использовать модуль os. Можно открывать файл под обработкой исключений и перехватывать исключение ~FileNotFoundError. ((https://u.pcloud.link/publink/show?code=XZFTqpXZC7eTr0mfMopOONGNF5coVROwbmmy Пример реализации открытия файла с перехватом исключения)) ===3 октября (4)=== Функциональность приложения. В окне две кнопки "Угадать" и "Сдаться". Также ведется подсчет числа попыток. Не учитывается в качестве попытки: ввод некорректного числа, ввод числа, совпадающего с тем числом, которое было введено последним перед этим. При нажатии на кнопку "Угадать" идет проверка числа и выводится сообщение о результате проверки. Если в результате проверки было угадано задуманное число, то выводится сообщение об этом, выводится число ходов и на кнопке "Сдаться" текст меняется на "Новая игра", а нажатия на кнопку "Угадать" игнорируются (можно сделать кнопку неактивной). После нажатия на кнопку "Новая игра" задумывается новое число, текст кнопки меняется на "Сдаться" и все начинается заново. При нажатии на кнопку "Сдаться" выводится задуманное число, после чего пользователю предлагается начать новую игру нажатием на кнопку "Новая игра". После начала новой игры информация о предыдущей игре из окна приложения должна быть убрана. ===3 октября (3)=== Реализация игры ((http://goo.gl/2UwG03 Быки и коровы)). Функциональность приложения. После запуска программы компьютер генерирует случайное 4-значное число (все цифры различны, начинается не с нуля). **Число выводится на стандартный вывод - функцией print, в отладочных целях**. Главное окно приложения содержит поле ввода (~QLineEdit) для ввода задуманного числа, кнопку "Проверить" (~QPushButton) и строчку для вывода сообщения (~QLabel). При нажатии на кнопку производится проверка введенного числа, и либо выводится сообщение о том, что число некорректно, либо выводится количество быков и коров для введенного числа. Сообщения выводятся путем изменения текста у объекта ~QLabel. ===26 сентября (2)=== ((http://u.pc.cd/U0nctalK Пример с урока)) Задание. Добавить в приложение три кнопки: увеличение значения на 1, уменьшения на 1 и сброса значения. Нажатие на эти кнопки должно приводить к изменению значения в классе ~MyCounter и всех элементах управления на экране (~LineEdit, ~SpinBox, ~Slider). ===19 сентября (1)=== ((https://u.pcloud.link/publink/show?code=XZ14e5XZy3hDH98ptl7KkFkpiEHx6YG4D6e7 Пример с урока)) Задание 0. Установить дома ~PySide2, сделать скриншот запущенной среды Wing IDE или ~PyCharm и запущенного приложения, использующего библиотеку ~PySide2. Скриншот сохранить в формате JPEG и сдать в тестирующую систему. Задание 1. Создать приложение, содержащее четыре кнопки, связать их с разными слотами главного окна приложения (нельзя использовать слот hide). Приложение должно иметь приличный вид, надписи на кнопках должны быть понятными и соответствовать выполняемым действиям. Приложение (файл на языке питон) сдать в тестирующую систему. ((https://doc.qt.io/qtforpython/PySide2/QtWidgets/QWidget.html#slots Документация на слоты класса QWidget))