ЗАДАНИЕ ДЛЯ ВЫПОЛНЕНИЯ РЕЙТИНГОВОЙ РАБОТЫ
Дан ряд целых чисел, полученный в результате обработки символов Фамилии, Имени, Отчества обучающегося, а также его ID. Необходимо отсортировать набор данных двумя способами, а также выполнить некоторые арифметические расчеты.
Исходные данные
ФИО и ID подготавливаются заранее в текстовом файле с именем source_data.txt в кодировке Unicode (Юникод). Каждое слово, составляющее ФИО должно быть с заглавной буквы. Слова между собой должны быть разделены пробелом. Точка в конце не ставится. Текстовый файл с исходными данными должен иметь следующий вид:
Иванов Иван Иванович
70115094
Примечание:
1. ФИО – Иванов Иван Иванович, и ID – 70115094 представлены в качестве примера. Естественно, при формировании файла source_data.txt, нужно вносить свои ФИО и ID.
2. ФИО и ID разделены символом enter (u000a). Данный символ в последующей обработке набора данных не должен участвовать. После номера ID символ enter не ставится; таким образом, в файле source_data.txt должно быть две строки.
3. Пробелы между словами ФИО в обработке набора данных не должны участвовать.
Требуется написать программу на языке Python, которая выполняет следующие задачи:
1. Считать исходные данные из текстового файла source_data.txt
2. Вычислить целое значение, получившееся в результате деления ID на количество символов, составляющих ФИО (количество символов подсчитывается без учета пробелов).
3. Определить направление сортировки в зависимости от числа, полученного в п.2:
- сортировка по возрастанию, если число чётное;
- сортировка по убыванию, если число нечётное.
4. Сформировать набор данных (список) из кодов Юникода каждого символа ФИО (исключая пробелы между словами), переведенных в десятичную форму.
5. Выполнить сортировку набора данных по убыванию или по возрастанию. Сортировку выполнить двумя различными способами, например: сортировка выбором и сортировка методом простого обмена (пузырька). В программном коде должны быть представлены комментарии, обозначающие тот или иной алгоритм сортировки.
# алгоритм сортировки по методу пузырька
# алгоритм "Шейкерная сортировка"
6. Вычислить среднее арифметическое значение набора данных. При необходимости, результат округлить до третьего знака после запятой.
7. Вычислить среднее квадратическое значение набора данных. При необходимости, результат округлить до третьего знака после запятой.