💡 Инструкция: Выберите один ответ из пяти. Время — 55 минут. Верный вариант в каждом вопросе один; после завершения доступны общий результат, профиль по 4 темам и объяснения.
Вопрос 2 из 20
Ниже приведена неудачная реализация из темы «Создание массивов». Какая редакция возвращает требуемый результат и оставляет независимый контроль?
MATLAB Фрагмент для рецензии Копировать
A = (1 2 3; 4 5 6);
Внести показанную замену без изменения входного контракта. На минимальном примере сопоставить форму выхода и два контрольных значения с независимым эталоном. Результат проверки оформить так, чтобы его можно было повторить без ручной подгонки. A = [1 2; 3 4; 5 6];
Принять эту редакцию как полную замену текущего блока. Перед принятием проверить предпосылки операции, форму результата и один численный инвариант. В журнале проверки сохранить вход, ожидаемый результат и фактическое расхождение. A = [1 4; 2 5; 3 6];
Заменить исходный блок этой реализацией. Добавить регрессионный пример, на котором исходная версия расходится с требованием по значению или размерности. Допуск и критерий принятия зафиксировать до просмотра результата. A = reshape(1:6, 2, 3);
Переписать вычислительный шаг следующим образом. Сравнить результат с формулой на двух входах, где меняются ориентация данных и масштаб величин. Контрольный пример должен воспроизводиться на чистом запуске проекта. A = [1; 2; 3, 4; 5; 6];
Использовать показанный вариант вместо дефектного фрагмента. После замены проверить обычный и граничный входы, заранее вычислив ожидаемый результат. Отдельно убедиться, что ближайшая неверная реализация этот контроль не проходит. A = [1 2 3; 4 5 6];
Вопрос 7 из 20
В тесте «Матрицы, векторы и индексация» показанный фрагмент нарушает правило из темы «Линейная индексация». Какая редакция исправляет причину, а не только её проявление?
MATLAB Фрагмент для рецензии Копировать
x = A{4};
Внести показанную замену без изменения входного контракта. Перед принятием проверить предпосылки операции, форму результата и один численный инвариант. Отдельно убедиться, что ближайшая неверная реализация этот контроль не проходит. x = A(2,2);
Принять эту редакцию как полную замену текущего блока. Сравнить результат с формулой на двух входах, где меняются ориентация данных и масштаб величин. Допуск и критерий принятия зафиксировать до просмотра результата. x = A(end-3);
Переписать вычислительный шаг следующим образом. После замены проверить обычный и граничный входы, заранее вычислив ожидаемый результат. Результат проверки оформить так, чтобы его можно было повторить без ручной подгонки. x = A{4};
Использовать показанный вариант вместо дефектного фрагмента. Добавить регрессионный пример, на котором исходная версия расходится с требованием по значению или размерности. В журнале проверки сохранить вход, ожидаемый результат и фактическое расхождение. x = A(4);
Заменить исходный блок этой реализацией. На минимальном примере сопоставить форму выхода и два контрольных значения с независимым эталоном. Контрольный пример должен воспроизводиться на чистом запуске проекта. Для темы «Линейная индексация» также сверить класс данных и сохранение ожидаемой структуры выхода. x = A(1,4);
Вопрос 12 из 20
Для темы «Срезы» в тесте «Матрицы, векторы и индексация» приведён дефектный блок. Какое замечание рецензента можно принять?
MATLAB Фрагмент для рецензии Копировать
B = A(2:4, :);
Заменить исходный блок этой реализацией. Перед принятием проверить предпосылки операции, форму результата и один численный инвариант. Результат проверки оформить так, чтобы его можно было повторить без ручной подгонки. B = A(2:end-1);
Использовать показанный вариант вместо дефектного фрагмента. На минимальном примере сопоставить форму выхода и два контрольных значения с независимым эталоном. Допуск и критерий принятия зафиксировать до просмотра результата. B = A(:, 2:4);
Внести показанную замену без изменения входного контракта. Сравнить результат с формулой на двух входах, где меняются ориентация данных и масштаб величин. В журнале проверки сохранить вход, ожидаемый результат и фактическое расхождение. B = A(2, 4);
Переписать вычислительный шаг следующим образом. Добавить регрессионный пример, на котором исходная версия расходится с требованием по значению или размерности. Отдельно убедиться, что ближайшая неверная реализация этот контроль не проходит. B = A(2:4, :);
Принять эту редакцию как полную замену текущего блока. После замены проверить обычный и граничный входы, заранее вычислив ожидаемый результат. Контрольный пример должен воспроизводиться на чистом запуске проекта. B = A(:, [2 4]);
Вопрос 14 из 20
Перед реализацией требования «выбрать из матрицы A все строки и столбцы со второго по четвёртый» записывают модель. Какая запись подходит?
B=A_{:,\,3:4}
B=B_{:,\,2:4}
C=A_{:,\,2:4}
B=A_{:,\,2:4}
B=A_{:,\,4:4}
Вопрос 18 из 20
Результат фрагмента по теме «Размерности» нужно принять перед включением в расчёт. Какая проверка даст независимое основание?
\operatorname{size}(A)=(m,n)
MATLAB Код и модель Копировать
[nRows, nCols] = size(A);
Сравнить два близких входа и убедиться, что результат меняется плавно и без предупреждений в задаче по теме «Размерности».
Сравните `size`, `length`, `numel`, `ndims` на строке, столбце, матрице и трёхмерном массиве.
Проверить только один сводный показатель результата — сумму, среднее или норму — на двух обычных входах из темы «Размерности».
Сравнить ответ с сохранённым выводом предыдущей версии на рабочем наборе данных по теме «Размерности».
Увеличить размер входа и проверить ожидаемый рост времени и памяти, сохранив исходный способ вычисления по теме «Размерности».