60.16K
Категория: ОбразованиеОбразование

Консультация (ответы на вопросы)

1.

Индивидуальное задание
2022-2023
Консультация 04.01.2023. Ответы на вопросы

2.

1
Вопросы
Ответ
• Я когда считаю почасовую плату
Иванова по программе питон, у меня
получается
V=15000*70=1050000
Vфот=1050000*50/100=525000
Pчас=525000/(4*72)=1822,916
а у Вас получилось 123,45. Возможно я
неправильно поняла формулы или
смысл переменных, но вроде
перечитывала несколько раз.
• Возможно ли, что данные по
определенной образовательной
программе содержатся только в файле
catalog.txt или reestr.txt? В примере
подобный случай(C/C++(2) в catalog.txt
и D(2) в reestr.txt), а откуда данные
взяли непонятно.
• Приведенные в тексте задания примеры
иллюстрируют только формат
представления входных и выходных
данных. Данные в файлах Catalog, Reestr,
tab_MM_YYYY, input, а также выходные
данные не связаны между собой.
• Для отладки программы рекомендуется
использовать пример входных данных,
выданный на консультации 04.01.2022 и
расчет к нему в xls-файле

3.

2
Вопрос
Ответ
• Гарантируется ли соответствие
дисциплин в файлах Reestr.txt и
Catalog.txt?
• Пример: если посмотреть ТЗ, то в
файле Catalog.txt заявлены
следующие дисциплины: Python(1),
EGE, C/C++, в файле Reestr.txt:
Python(1), EGE, D(2)
• Получается, что по первым двум
дисциплинам (Python(1) и EGE)
возможно получить все данные, но
по двум другим (C/C++ и D(2)) —
нет, т.к. информации о них нет в
одном из файлов.
• Программы, которые содержатся в
реестре (Reestr.txt), гарантированно
имеются в файле Catalog.txt (поскольку
иначе они не могут реализовываться).
• Обратное в общем случае неверно (т.е.
необязательно, что каждая
утвержденная программа из Catalog.txt
будет реализована на практике)

4.

3
Вопрос
Ответ
• В файле указано, что "В
первой строке через пробел
записаны целые числа
КФОТ, КНАЧ, КЮФУ. Во
второй строке записано
единственное число N –
количество программ в
каталоге (1 ≤ N ≤ 100).", но в
примере все числа
записаны в одну строку. Как
их записывать в итоге?
• Текст задания скорректирован.
Число N перенесено на вторую
строчку

5.

4
Вопрос
• По условию сказано, если * то
рассчитать заработок для всех
преподавателей за указанный
месяц. Условие для
определенного преподавателя
не исключает ситуации, когда
файл Табеля с определенной
датой отсутствует.
• Возможен ли вариант когда в
файле input введено
• Sum * (дата, файл которой
отсутствует)
• если да, то что выводит
программа?
Ответ
• В этом случае в выходной файл
должна быть выведена
единственная строка вида:
0 0.00
• (первое число - количество
преподавателей, второе суммарная выплата им за
расчетный период)

6.

5
Вопрос
Ответ
• Может ли файл Reestr.txt содержать
несколько строк данных для одной и
той же программы? К примеру:
Python(1) 10.2022 1.2023 15000 70 4
Python(1) 3.2020 6.2021 12000 55 3
• Да, это не противоречит заданию.
• Однако явно указано, что "никогда не
начинается реализация новой программы
до окончания реализации одноименной
программы предыдущего набора (т.е. в
любой момент времени реализуется не
более одной программы определенного
наименования)".
• То есть даже если в Реестре есть
информация о реализации нескольких
"потоков" одной и той же программы, в
каждый расчетный период реализуется
только один "поток" программы.
• Python(1) 10.2022 1.2023 15000 70 4
Python(1) 7.2022 10.2022 12000 55 3

7.

6
Вопрос
Ответ
• Гарантируется ли, что в
файле input.txt будет только
1 запрос? (не важно: для
одного преподавателя или
для всех)
• Да, в одном файле input.txt
записан строго один запрос

8.

7
Вопрос
Ответ
• В условии не указана длина
имени преподавателя. То
есть размер произвольный?
• Имя преподавателя - непустая
строка длиной до 20 символов,
без точек и пробелов.
• Дополнения внесены в текст
ИЗ

9.

8
Вопрос
Ответ
• В примере указано
количество записей 5, но
после этого идет 6 записей.
Умышленная ошибка или
случайность?
• Опечатка. Исправлено

10.

9
Вопрос
Ответ
• Что из себя представляет
единица трансляции?
• То, что обрабатывается
компилятором на первом этапе
трансляции (c/cpp-файл).
Результатом обработки одной
единицы трансляции является
один объектный obj-файл. На
втором этапе все obj-файлы и
библиотеки объединяются в
исполняемый файл.
• Иногда к единице трансляции
относят не только c/cpp-файл, но
и подключаемые к нему через
#include h/cpp-файлы

11.

10
Вопрос
Ответ
• Как считывать файлы?(То
есть в каждом модуле мы
пишем функцию
открытия/закрытия файла или
осуществляем это в
клиентском приложении
(базовый проект))
• Рекомендуется всю работу с
каждой таблицей (Catalog, Reestr,
Tabel) собирать в отдельном
модуле.
• В задании указано: "не
предъявляются требования по
разделению функционала
библиотеки и клиентского
приложения, однако из
клиентского приложения должны
быть вызваны как минимум две
разных функции приложениябиблиотеки".

12.

11
Вопрос
• Правильно ли я понимаю, что
определение пользовательских
типов данных мы должны делать
в разных модулях, то есть в h
файле пишем объявление
структуры + ее прототипы
функции (интерфейс), а уже в
сpp файле пишу реализацию.
Если это так, то мы должны
объявить все структуры в одном
h файле + прототипы функций, а
реализации их в одном cpp
файле или же каждую структуру
и её реализацию мы пишем
отдельно?
Ответ
• Как правило, в file.h описываются
структуры данных, с которыми идет
работа в file.c.
• Также в file.h описываются функции,
реализованные в file.c, которые вы
хотите разрешить вызывать из
других модулей.
• Если какой-то тип данных или
константа используется сразу в
нескольких h- или c-файлах, то
можно описать дополнительный
"общий" h-файл (без
соответствующего ему c-файла) и
подключать его к h- или c-файлам.

13.

12
Вопрос
Ответ
• Как отмечены
корректировки к тексте ИЗ?
• Корректировки выделены
желтым цветом
• Удален один из "особых"
случаев. Теперь это условие
проверять не нужно
(зачеркнуто и выделено
красным).
English     Русский Правила