Преобразователь данных
Часть раздела Логика и потоки выполнения путешествия по GDScript на Coddy. Урок 78 из 78.
Задание
СложноПреобразуйте записи об учениках в отчёт. Программа считывает целое число n, затем n записей. Запись содержит три поля, разделённые символом ;: идентификатор ученика, оценки (целые числа, разделённые запятыми) и предметы (разделённые запятыми):
S123;88,92,85;Math,Science,HistoryУченик считается прошедшим отбор, если каждая оценка выше 70 (оценка ровно 70 не подходит). Проверьте это с помощью метода массива all().
Выведите Qualified students: и количество таких учеников. Затем для каждого прошедшего отбор ученика в порядке ввода выведите идентификатор, : и среднее значение оценок с двумя знаками после запятой. Затем выведите Subjects: и для каждого предмета, который изучает хотя бы один прошедший отбор ученик, выведите предмет, : и количество прошедших отбор учеников, которые его изучают, в порядке первого появления предметов.
Для следующих входных данных:
3
S123;88,92,85;Math,Science,History
S124;65,95,80;Math,Science,English
S125;91,89,92;Math,Physics,Historyвывод будет таким:
Qualified students: 2
S123: 88.33
S125: 90.67
Subjects:
Math: 2
Science: 1
History: 2
Physics: 1S124 не прошёл отбор из-за оценки 65, поэтому English не учитывается. Если ни один ученик не прошёл отбор, вывод заканчивается строкой Subjects:.
Попробуйте сами
extends Node
func _ready():
var n := int(OS.read_string_from_stdin())
# Считайте n записей, затем выведите студентов, соответствующих требованиям, и предметы
pass
Все уроки раздела Логика и потоки выполнения
1Строки: углублённое изучение
Методы строкПоиск в строкахЗамена и обрезка пробеловРазделение и объединениеПовторение — проверка имени пользователя4Словари. Часть 2
Вложенные словариМассивы словарейОбъединение словарейКопирование словарейПовторение — подсчёт частоты10Продвинутые функции
Возврат нескольких значенийЛямбда-функции. Часть 1Лямбда-функции. Часть 2Повторение — сортировка с помощью лямбда-функцииРекурсивные функции. Часть 1Рекурсивные функции. Часть 2Повторение — сумма вложенного массива13Система управления запасами
Обзор проектаДобавление товара2Продвинутое управление ветвлением
Сопоставление с переменнымиУсловия в шаблонахШаблоны массивовШаблоны словарейПроверка принадлежностиИтоги — парсер команд5Приложение «Телефонная книга»
Показать менюДобавить контакт8Менеджер успеваемости студентов
Обзор проектаДобавить студента3Многомерные массивы
Основы двумерных массивовДоступ к элементам двумерного массиваВложенные циклы с двумерными массивамиПовторение: двумерные массивыРваные массивыТипичные шаблоны работы с двумерными массивамиПовторение: игровое поле6Множества и словари
Что такое множество?Словарь как множествоДобавление и удалениеОбъединение и пересечениеРазность множествПовторение — удаление дубликатовПотренируйтесь самостоятельно: Онлайн-компилятор GDScript