1
0
mirror of https://github.com/netology-code/1c-homeworks.git synced 2024-11-24 08:02:20 +02:00
1c-homeworks/homework-2-7.md
2023-05-24 16:30:43 +05:00

7.3 KiB

Задание к занятию "Универсальные коллекции"

Примерное время выполнения: 60 минут

Все задачи обязательны к выполнению. Пожалуйста, присылайте на проверку все задачи сразу.

Любые вопросы по решению задач задавайте в чате учебной группы.

Цель задания

  1. Закрепить на практике работу с универсальными коллекциями

Решение задания научит вас использовать массивы, структуры и соответствия для написания алгоритмов. Этот навык является одним из базовых для дальнейшего решения домашних заданий и промышленной разработки.

Чеклист готовности к домашнему заданию

  • Установлена учебная платформа версии 8.3.20 или больше.
  • Развернута информационная база с конфигурацией УправлениеИТФирмой, полученная по итогу выполнения домашнего задания к занятию Циклы.

Инструкция к заданию

  1. Решите описанные задачи в конфигураторе.
  2. Протестируйте решение в пользовательском режиме.
  3. Отправьте на проверку в личном кабинете Нетологии внешнюю обработку ПодсчетЧислаУникальныхСлов с решением задачи 1 и файл выгрузки информационной базы (.dt) с конфигурацией, содержащей решение по задаче 2. Файлы прикрепите в раздел "решение" в практическом задании.

Задача 1 "Подсчет числа уникальных слов"

Описание задачи

Вы хотите реализовать обработку, которая сможет посчитывать число уникальных слов в тексте, введенном пользователем.

Требования к результату

Внешняя обработка с реквизитом и многострочным полем ввода для текста и кнопкой "Подсчитать", по нажатию на которую определяется и выводится пользователю число уникальных слов в тексте без учета регистра. Иначе говоря, слово, встречающееся в тексте несколько раз, учитывается в итоговом результате лишь однажды.

Например: для текста "Привет привет ПрИвЕт Нетология" результат должен быть 2

Процесс выполнения

  1. Создайте внешнюю обработку с именем, например, ПодсчетЧислаУникальныхСлов.
  2. Добавьте в нее реквизит типа Строка - например, Текст - и перетащите его на форму, сделав многострочным полем ввода.
  3. Добавьте команду Подсчитать и перетащите ее кнопкой на форму.
  4. В обработчике команды:
  • Создайте Соответствие для хранения уникальных слов.
  • Разделите текст на слова вызовом СтрРазделить().
  • Обойдите в цикле все слова.
  • Вставляйте в соответствие слово, приведя его к верхнему или нижнему регистру.
  • Выведите результат - число элементов соответствия - вызовом Сообщить() или ПоказатьПредупреждение(), формируя строку с помощью СтрШаблон().

Задача 2 "Поздравления"

Описание задачи

Вы хотите, чтобы программа при запуске поздравляла пользователя с праздником, если он приходится на сегодня или на завтра.

Требования к результату

Выгрузка информационной базы (.dt), при начале работы системы выводящая поздравление с сегодняшней или завтрашней праздничной датой, находя ее в заранее подготовленном массиве структур. Приветствие должно содержать название праздника и собираться функцией СтрШаблон().

Процесс выполнения

  1. Используйте конфигурацию из прошлого задания.
  2. Реализуйте алгоритм оповещения о праздниках в обработчике ПриНачалеРаботыСистемы в модуле приложения.
  3. Объявите переменную-массив праздничных дат.
  4. Добавьте в него несколько праздничных дат в виде структур со свойствами День, Месяц, Название.
  5. Определите, не является ли текущая дата праздничной или предпраздничной, обходя в цикле этот заранее подготовленный массив структур, и покажите соответствующее поздравление.

Критерии оценки

Задание считается выполненным при соблюдении следующих условий:

  1. Решение включает внешнюю обработку ПодсчетЧислаУникальныхСлов и выгрузку в формате dt с конфигурацией УправлениеИТФирмой;
  2. Обработка ПодсчетЧислаУникальныхСлов позволяет выявить уникальные слова в тексте, веденным пользователем;
  3. При запуске программы выводится поздравление, если на сегодня или на завтра приходится праздник.

Подсказка:

Чтобы вам было проще понять, что в итоге должно получиться, мы подготовили подсказки: анимационные изображения в формате gif или картинки. Чтобы их увидеть, кликните по ссылке