ML MATLAB  ·  30 вопросов  ·  ~85 мин  ·  ⏱ Таймер 25:00  ·  Сложный  · 

Генерация C/C++-кода

Тест проверяет тему «Генерация C/C++-кода» через чтение MATLAB-кода, математические модели и рабочие ситуации. Здесь важно не узнать знакомую команду, а предсказать результат, заметить скрытое допущение и выбрать проверку, которая различит близкие реализации.

Отвечено: 0 из 30
⏱ --:--
0%
💡 Инструкция: Выберите один ответ из пяти. Время — 85 минут. Верный вариант в каждом вопросе один; после завершения доступны общий результат, профиль по 6 темам и объяснения.
Вопрос 1 из 30
В проекте появился шаг: подготовить функцию для codegen с фиксированным типом входа single-вектор длины 16. Какой вариант выполняет его без подмены операции?
Вопрос 2 из 30
В расчёте по теме «Ограничения типов» обнаружено содержательное расхождение. Какую замену следует принять после проверки?
MATLABФрагмент для рецензии
coder myFilter -type single[16]
Вопрос 3 из 30
Код по теме «Ограничения типов» проходит обычный пример. Какая проверка покажет, что вычислительный договор сохраняется и на неудобном входе?
x\in\texttt{single}^{16\times1}
MATLABКод и модель
cfg = coder.config("lib");
arg = coder.typeof(single(0),[16 1],[false false]);
codegen -config cfg myFilter -args {arg}
Вопрос 4 из 30
Нужно сопоставить MATLAB-код с постановкой «подготовить функцию для codegen с фиксированным типом входа single-вектор длины 16». Какая запись подходит?
Вопрос 5 из 30
На целевой системе приходит single, но пример для codegen был double, и интерфейс содержит другой тип. Как поступить без подгонки результата под ожидание?
Вопрос 6 из 30
Нужно выбрать код для действия: заменить динамическое изменение размера массива на код, пригодный для статической генерации. Какой вариант выполняет его без подмены операции?
Вопрос 7 из 30
Ниже приведена неудачная реализация из темы «Генерация кода». Какая редакция возвращает требуемый результат и оставляет независимый контроль?
MATLABФрагмент для рецензии
y=x(x>0); y(end+1)=0;
Вопрос 8 из 30
Перед рецензентом рабочий фрагмент по теме «Генерация кода». Как проверить его так, чтобы близкая подмена не прошла вместе с ним?
0\le n\le maxN
MATLABКод и модель
y = zeros(maxN,1,"like",x);
n = 0;
for k=1:numel(x)
 if x(k)>0, n=n+1; y(n)=x(k); end
end
y = y(1:n);
Вопрос 9 из 30
В рецензии формализуют требование «заменить динамическое изменение размера массива на код, пригодный для статической генерации». Какая запись подходит?
Вопрос 10 из 30
Генератор сообщает о неограниченном изменении размера, хотя физический протокол задаёт максимум пакета. Какой шаг сохранит воспроизводимость проверки?
Вопрос 11 из 30
Проверяется реализация операции: сравнить MATLAB- и сгенерированную реализацию на одной батарее входов. Какой вариант выполняет его без подмены операции?
Вопрос 12 из 30
В тесте «Генерация C/C++-кода» показанный фрагмент нарушает правило из темы «Проверка эквивалентности». Какая редакция исправляет причину, а не только её проявление?
MATLABФрагмент для рецензии
assert(~isempty(myAlg_mex(x)));
Вопрос 13 из 30
Фрагмент по теме «Проверка эквивалентности» выглядит правдоподобно. Какая проверка действительно подтвердит заявленное свойство, а не только отсутствие сбоя?
\|y_M-y_C\|\le tol\max(1,\|y_M\|)
MATLABКод и модель
for k=1:numel(cases)
 yM = myAlg(cases{k});
 yC = myAlg_mex(cases{k});
 assert(norm(double(yM-yC)) <= tol*max(1,norm(double(yM))));
end
Вопрос 14 из 30
Контрольный расчёт для действия «сравнить MATLAB- и сгенерированную реализацию на одной батарее входов» начинается с формулы. Какая запись подходит?
Вопрос 15 из 30
Сгенерированный код быстрее, но на насыщении целого типа даёт иной результат, который обычный double-тест не замечает. Какое решение можно обосновать на рецензии?
Вопрос 16 из 30
Исходное требование формулируется так: вызвать сгенерированную библиотеку из C с явной инициализацией и завершением, если они созданы. Какой вариант выполняет его без подмены операции?
Вопрос 17 из 30
Для темы «Интеграция» в тесте «Генерация C/C++-кода» приведён дефектный блок. Какое замечание рецензента можно принять?
CФрагмент для рецензии
initialize(myAlg); output=myAlg(input);
Вопрос 18 из 30
Ниже показано решение из темы «Интеграция». Какой контроль отличит его от ближайшей ошибочной реализации?
init\to call^N\to terminate
CКод и модель
myAlg_initialize();
myAlg(input, output);
myAlg_terminate();
Вопрос 19 из 30
Требование «вызвать сгенерированную библиотеку из C с явной инициализацией и завершением, если они созданы» переводят на язык математики. Какая запись подходит?
Вопрос 20 из 30
Приложение вызывает основной API до инициализации, и редкая ветвь использует неготовое постоянное состояние. Что связывает исправление с измеримым признаком качества?
Вопрос 21 из 30
Нужно реализовать действие: получить диагностический отчёт codegen и остановить выпуск при неподдерживаемой конструкции. Какая запись соответствует условию на заявленных входах?
Вопрос 22 из 30
Показанный код из темы «Разбор отказов» не соответствует постановке. Какая редакция восстанавливает вычислительный договор?
MATLABФрагмент для рецензии
try codegen myAlg; catch, disp("ignored"); end
Вопрос 23 из 30
Результат фрагмента по теме «Разбор отказов» нужно принять перед включением в расчёт. Какая проверка даст независимое основание?
build=success\land report\_reviewed
MATLABКод и модель
cfg = coder.config("lib");
cfg.GenerateReport = true;
codegen -config cfg myAlg -args {arg};
assert(isfile("codegen/lib/myAlg/html/report.mldatx"));
Вопрос 24 из 30
Для действия «получить диагностический отчёт codegen и остановить выпуск при неподдерживаемой конструкции» нужен независимый математический эталон. Какое выражение сохраняет смысл постановки?
Вопрос 25 из 30
Сценарий ловит ошибку и продолжает упаковку старой библиотеки, поэтому версия исходника и бинарника расходятся. Какое действие даст проверяемый результат?
Вопрос 26 из 30
В расчёте требуется восстановить предыдущую рабочую библиотеку после неудачного выпуска без ручного копирования файлов. Какая запись соответствует условию на заявленных входах?
Вопрос 27 из 30
Рецензент разбирает фрагмент по теме «Восстановление системы» в тесте «Генерация C/C++-кода». Какой вариант исправляет саму операцию?
MATLABФрагмент для рецензии
codegen myAlg; if failed, rebuildOld(); end
Вопрос 28 из 30
Для решения по теме «Восстановление системы» выбирают контрольный опыт. Какой вариант проверяет смысл операции, а не внешние признаки результата?
current\in\{build_{verified}\}
MATLABКод и модель
buildId = string(datetime("now","Format","yyyyMMdd_HHmmss"));
buildTo("staging/"+buildId);
runEquivalenceTests("staging/"+buildId);
atomicPromote("staging/"+buildId,"current");
Вопрос 29 из 30
Нужно формализовать операцию «восстановить предыдущую рабочую библиотеку после неудачного выпуска без ручного копирования файлов». Какое выражение сохраняет смысл постановки?
Вопрос 30 из 30
Обновление перезаписывает рабочие файлы на месте и оставляет половину новой библиотеки после сбоя диска. Какой порядок работы не скроет причину ошибки?

Ответьте на все 30 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу