Файл: Программа производственной практики технологическая (проектнотехнологическая).pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.01.2024
Просмотров: 1781
Скачиваний: 6
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
7
Производственная практика осуществляется на основе договоров с организациями, осуществляющих деятельность по профилю направления подготовки (далее - профильная организация) и может быть пройдена в:
‒ информационно-технологических, программно-обеспечивающих службах организаций различных отраслей, сфер и форм собственности;
‒ подразделения и учреждения, занимающихся информационной безопасно- стью, веб-программированием, созданием и обслуживанием визуально-коммуникативной среды, программного обеспечения и т.п.
Обучающиеся, совмещающие обучение с трудовой деятельностью, вправе прохо- дить производственную практику по месту трудовой деятельности в случаях, если профес- сиональная деятельность, осуществляемая ими, соответствует требованиям образователь- ной программы к проведению практики.
Также производственная практика может проводиться в структурных подразделе- ниях ЧОУВО «МУ им. С.Ю. Витте».
Обучающиеся направляются на практику на основании заявления (Приложение 1).
Обучающиеся в период прохождения практики: выполняют индивидуальные задания, предусмотренные программами практики;
– соблюдают правила внутреннего трудового распорядка;
– соблюдают требования охраны труда и пожарной безопасности
2.2. Индивидуальное задание на практику
В процессе прохождения практики обучающийся должен руководствоваться инди- видуальным заданием, которое получает от руководителя практики от Университета. При прохождении практики в профильной организации, индивидуальное задание должно быть согласовано с руководителем практики от профильной организации.
Индивидуальное задание представляет собой планирование работы обучающихся во время практики, направленной на формирование указанных компетенций, выполняемой во внеаудиторное время по заданию и при методическом руководстве преподавателя (Прило- жение 2).
В качестве заданий на практику студентам дается четыре задачи. Задания подобраны таким образом, чтобы при выполнении работы студенты могли приобрести практические навыки разработки программных продуктов для решения прикладных задача среднего уровня сложности. Среда разработки PyCharm, язык программирования - Python. Рекомен- дуется использование наиболее распространенных библиотек и модулей стандартной биб- лиотеки. Использование нестандартных библиотек возможно только после согласования с руководителем практики.
Формулировки заданий имеют общую и индивидуальную части. Индивидуализация заданий реализуется на основе уникального номера ID студента и его ФИО. После консуль- таций с руководителем практики от Университета выбираются библиотеки и составляются примерные алгоритмы решения каждого задания. Необходимо отметить, что используя воз- можности различных библиотек для Python возможны разные подходы к решению заданий курсовой работы. В процессе выполнения задач по согласованию с руководителем воз- можна конкретизация и уточнение формулировок исходных данных в задачах. Данные кор- ректировки обязательно должны быть отражены в отчете.
В процессе выполнения задач практики студенты должны:
– Изучить задачи на разработку программного продукта;
– Выполнить анализ и составить примерную стратегию решения каждого задания;
– Выбрать необходимые библиотеки для реализации предметных областей про- граммного продукта;
– Разработать алгоритмы и реализовать их в среде разработки с помощью выбран- ных библиотек
8
– Для отдельных заданий разработать графический интерфейс пользователя сред- ствами библиотек Tkinter, wxPython, PyQT или PySimpleGUI;
– Выбрать стратегию тестирования и разработать тесты;
– Выполнить тестирование и отладку;
– Подробно описать решение каждого задания, форматы входных и выходных фай- лов.
– Сформировать отчет по практике, привести листинг программного кода для каж- дого задания.
– Сформировать архив исходных текстов программ, входных и результирующих файлов.
Задание № 1
Работа с набо- рами данных
БЕЗ ГРАФИЧЕСКОГО ИНТЕРФЕЙСА (GUI) формулировка Во внешнем файле resourse_1.txt дан текст. Выведите все слова, встре- чающиеся в тексте, по одному на каждую строку, через пробел укажите количество повторений. Слова должны быть отсортированы по убыва- нию их количества появления в тексте, а при одинаковой частоте появ- ления — в лексикографическом порядке. Вывод должен осуществ- ляться в текстовый файл result_1.txt. При необходимости можно про- дублировать вывод в консоль.
Методические указания
После того, как вы создадите словарь всех слов, необходимо отсорти- ровать его по частоте встречаемости слова. Желаемого можно добиться, если создать список, элементами которого будут кортежи из двух эле- ментов: частота встречаемости слова и само слово. Например, [(2,
'hi'), (1, 'what'), (3, 'is')]
. Тогда стандартная сорти- ровка будет сортировать список кортежей, при этом кортежи сравнива- ются по первому элементу, а если они равны — то по второму. Знаки препинания не должны учитываться.
Программу сохранить под именем exercise_1.py
Входные дан- ные
Преподаватель вводит текст в текстовый файл resourse_1.txt (5-6 абза- цев) и сохраняет его. hi hi what is your name my name is bond james bond my name is damme van damme claude van damme jean claude van damme
Выходные данные
Выведите ответ на задание № 1 в текстовый файл result_1.txt.
Damme 4
Is 3
Name 3
Van 3
Bond 2 claude 2 hi 2 my 2 james 1 jean 1 what 1
9
Задание № 2
Разработка экспертной системы
С ГРАФИЧЕСКИМ ИНТЕРФЕЙСОМ (GUI) формули- ровка
Некоторый банк хочет внедрить систему управления счетами клиентов, поддерживающую следующие операции:
1. Пополнение счета клиента.
2. Снятие денег со счета.
3. Запрос остатка средств на счете.
4. Перевод денег между счетами клиентов.
5. Начисление процентов всем клиентам.
Методиче- ские указания
Необходимо реализовать такую систему. Первоначально у банка 1 кли- ент. Клиент(ы) банка идентифицируются именами (уникальная строка, не содержащая пробелов). Вам необходимо задать в качестве имени клиента – свою фамилию на английском языке с большой буквы. На вашу фамилию должен быть открыт счет с суммой равной вашему ID.
Ivanov 70121903
В отдельном поле должна быть предусмотрена возможность ввода про- стых команд, которые поддерживают следующие операции:
DEPOSIT name sum
Зачислить сумму sum на счет клиента name. Если клиента нет, то он созда- ется и на него заводится счет с ука- занной суммой.
WITHDRAW name sum
Снять сумму sum со счета клиента name. Если клиента, то счет созда- ется. Баланс при выполнении такой операции у вновь созданного клиента должен быть отрицательный.
BALANCE name
Узнать остаток средств на счету кли- ента name. Для каждого запроса
BALANCE программа должна выве- сти остаток на счету данного клиента.
Если же у клиента с запрашиваемым именем не открыт счет в банке, выво- дится сообщение «NO CLIENT».
Если пользователь не указал имя кли- ента – то выводится баланс всех су- ществующих клиентов.
TRANSFER name1 name2 sum
Перевести сумму sum со счета кли- ента name1 на счет клиента name2.
10
Если у какого-либо клиента, то он за- водится в системе и ему создается счет с переведенной суммой.
INCOME p
Начислить всем клиентам, у которых открыты счета, p% от суммы счета.
Проценты начисляются только кли- ентам с положительным остатком на счету, если у клиента остаток отрица- тельный, то его счет не меняется. По- сле начисления процентов сумма на счету остается целой, то есть начис- ляется только целое число денежных единиц. Дробная часть начисленных процентов отбрасывается.
ПРОГРАММА ДОЛЖНА ОБРАБАТЫВАТЬ ТЕКСТОВЫЕ КО-
МАНДЫ ИЗ ЛЕВОГО ПОЛЯ ТОЛЬКО ПОСЛЕ НАЖАТИЯ КНОПКИ
«Calculate». То есть, пользователь СНАЧАЛА вводит желаемые ко- манды, при этом каждая новая команда вводится с новой строки, а ПО-
ТОМ нажимает на кнопку «Calculate». Результат должен быть выведен в поле справа.
Количество команд, которые может ввести пользователь за один раз – не более 20. При необходимости следует предусмотреть прокрутку в поле. Пользователю допускается вводить «пустые строки» - несколько раз нажимать на кнопку «enter». При нажатии клавиши ввода «enter», фокус не должен переходить на кнопку «Calculate».
Формат и внешний вид окна определяет разработчик. Для «очистки» ле- вого и правого полей можно предусмотреть кнопку «Clear», при этом данные о ранее введенных клиентах не должны быть потеряны.
ВАЖНО:
1. Команды вводятся пользователем только большими буквами. Сама команда, имя клиента, суммы (числа) разделяются пробелами.
2. Предполагается, что пользователь такой системы грамотный и ко- манды с аргументами вводит без ошибок в рамках их вышесформули- рованного синтаксиса.
3. Как только для несуществующего ранее клиента проводится опера- ция пополнения (DEPOSIT), снятия (WITHDRAW) или перевода де-
нег (TRANSFER), он вносится в систему, ему заводится счет с указан- ным балансом. Все дальнейшие операции проводятся только с этим сче- том. Сумма на счету может быть как положительной, так и отрицатель- ной, при этом всегда является целым числом.
Программу сохранить под именем exercise_2.py
11
Входные дан- ные
Преподаватель вводит текст в текстовый файл resourse_2.txt (5-6 абза- цев) и сохраняет его.
Выходные данные
Выведите ответ на задание № 1 в текстовый файл result_2.txt.
Damme 4
Is 3
Name 3
Van 3
Bond 2 claude 2 hi 2 my 2 james 1 jean 1 what 1
Задание № 3
Разработка аналитической системы
С ГРАФИЧЕСКИМ ИНТЕРФЕЙСОМ (GUI) формулировка
Разработать калькулятор со стандартным и расширенным функциона- лом.
Стандартный функционал
1. Арифметические действия + - * /.
2. Возможность ввода отрицательного числа
3. Возведение в степень.
4. Извлечение квадратного корня.
5. Работа с памятью, состоящей из одной ячейки.
6. Должна быть кнопка сброса и кнопка «=» (равно).
Расширенный функционал
1. Наличие кнопки/меню перехода в расширенный режим
2. Возможность работы с несколькими ячейками памяти. Количе- ство ячеек памяти выбирается согласно методическим указа- ниям.
3. Отображение последовательности математических операций и цифр в n-строчном «дисплее», с возможностью «прокрутки».
Количество строк «дисплея» калькулятора выбирается согласно методическим указаниям.
4. Реализация «инженерных» функций расширенного режима.
Конкретный перечень функций выбирается согласно методиче- ским указаниям.
Методические указания
Необходимо разработать программу и GUI для реализации стандарт- ных функций калькулятора. Примерный вид внешнего интерфейса представлен на рисунке.
12
Конкретная компоновка элементов интерфейса, внешний вил, цветовая палитра, максимальное количество отображаемых цифр, число отобра- жаемых строк на «дисплее» калькулятора могут отличаться от пред- ставленного рисунка и должны согласовываться с руководителем кур- совой работы.
Функционал «инженерного» режима работы калькулятора добавляется при нажатии на кнопку перехода в расширенный режим, либо выбора соответствующего пункта меню.
Расширенный режим работы определяется внешним видом «цифро- вого дисплея», количеством ячеек памяти (кнопки M+, M-, MS, MR,
MS) и кнопками, отвечающими за дополнительные функции.
Количество строк «цифрового дисплея» должно определяться как последовательная сумма всех цифр ID студента. Суммирование от- дельных цифр числа должно осуществляться до получения однознач- ного числа, состоящей из 1-й цифры. Данный процесс рекомендуется реализовать с помощью рекурсивной функции. Для данной функции должна быть предусмотрена специальная кнопка
Например: обучающийся Иванов Иван Иванович, имеет ID 80121986
Сумма всех цифр равна:
13 8+0+1+2+1+9+8+6=35;
3+5=8
Следовательно, «цифровой дисплей» калькулятора должен иметь 8 строк.
Если после последовательного суммирования ID получилась цифра
«1», например, для ID=82121986:
8+2+1+2+1+9+8+6=37;
3+7=10 1+0=1
В этом случае количество строк «цифрового дисплея» должно быть равно 10.
Таким образом, в зависимости от ID число «цифровых строк» дисплея калькулятора может варьироваться от 2-х до 10.
Количество ячеек памяти калькулятора должно определяться как по- следовательная сумма последних 3-х чисел ID. Суммирование отдель- ных цифр числа должно осуществляться до получения однозначного числа, состоящей из 1-й цифры. Данный процесс также рекомендуется реализовать с помощью рекурсивной функции.
Например: обучающийся Иванов Иван Иванович, имеет ID 80121986
Сумма последних трёх цифр равна:
9+8+6=23;
2+3=5
Следовательно, должно быть предусмотрено 5 ячеек памяти для ра- боты с (M+, M-, MС, MR, MS).
14
Если после последовательного суммирования 3-х цифр ID получилась цифра «1», например, для ID=82121001:
0+0+1=1;
В этом случае количество ячеек памяти должно быть равно 2.
Таким образом, в зависимости от ID число ячеек памяти (и соответ- ствующих кнопок, реализующий данный функционал) калькулятора может варьироваться от 2-х до 9.
Дополнительные функции расширенного режима, которые должны быть реализованы определяются в соответствие с таблицей по первой букве Фамилии обучающегося
Первая буква фамилии
Наименова- ние функ- ции
Описание функции
А
Pi, sin,tan,exp, n!, Frac
Число Пи, синус, тангенс, экспонента, факториал; отсекает целую часть, остав- ляет дробную
Б asin, acos, atg, log_xy, n!
Арксинус, арккосинус, арктангенс, лога- рифм по основанию, факториал
В
//, ctg, 10
х
, asin, acos
Целочисленное деление, котангенс, 10 в степени х, арксинус, арккосинус
Г
F – E, y
√x, lg
10
переключает ввод чисел в экспоненциаль- ном представлении и обратно, y-ый ко- рень числа x, где y обычно является поло- жительным целым числом, десятичный логарифм
Д gcd(a, b); tanh, Ln, X
3
Возвращает наибольший общий делитель a и b; гиперболический тангенс, нату- ральный логарифм по основанию «e»; возвести в степень 3
Е hypot(x, y), isqrt(), Sinh,
Mod функция вычисляет гипотенузу треуголь- ника c катетами x и y; Возвращает цело- численный квадратный корень аргумента, округлённый вниз; гиперболический си- нус, вычислить остаток от деления одного числа на другое