You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WebWork(PG)中使用循环生成题目展示表格

你遇到的语法错误来自两个问题:

  1. TEXT() 函数的参数列表中所有元素只能用逗号分隔,你之前尝试的代码里map行末尾多写了分号,直接打断了参数列表的语法结构
  2. Perl不允许直接在函数的参数列表中使用for循环,需要用map函数把题目数组批量转换为表格行参数

可直接运行的实现代码

@questions=(
"x(x+1)",
"x^2(1-x)",
"(x+2)(3x-4)",
"(x-\\sqrt{x})(x+\\sqrt{x})",
"(x^3-\\frac{x^2}{3}-1)(2-x)",
"(x^3-2x)(x^{-2}+\\frac{1}{x^4})",
"\\frac{x-\\sqrt{2x}}{x^2}"
);

BEGIN_TEXT
$BR $BR
Find the derivatives. 
$PAR
END_TEXT

@header=(" f(x) "," f '(x) ");
@header = map {EV3($_) } @header;

TEXT(
begintable(1+scalar(@header)), 
    row(@header),
    map {row("\\[\\qquad{$_}\\qquad\\]",ans_rule(10))} @questions,
endtable() 
);

后续新增导数题目只需要往@questions数组里追加对应的函数表达式即可,不需要手动修改表格部分的代码,会自动生成对应数量的题目行和答题框。

内容的提问来源于stack exchange,提问作者James Hughes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.19 23:24:03