Sandstorm_Bo 2024-03-30 08:51 采纳率: 45.5%
浏览 1
已结题

Mathematica

#Mathematica #构造常值分段函数 #Partition函数报错

img


请教一下应该如何改正?

  • 写回答

3条回答 默认 最新

  • 檀越@新空间 2024-03-30 08:57
    关注

    Sandstorm_Bo 上午好☀️☀️☀️️
    本答案参考ChatGPT-3.5

    在这段代码中,出现了一些错误。你想要构造一个分段常值函数,但是在使用Partition函数时出现了问题。以下是针对你代码中出现的错误和解决方案的详细说明:

    1. 错误: Table[Random[],{100}] 应为 Table[Random[],{100}]

      • 这里有一个拼写错误,应该是{100}而不是{.100}
    2. 错误: Sort 表格 排序

      • 这一行代码应该没有被正确解析。可以将其删除。
    3. 错误: Out-1={...}

      • 这行代码应该是注释,应该以(* ... *)的格式注释。
    4. 错误: segments Partition[data,Length [data]/100]

      • 在这里,你试图使用Partition函数将data划分成长度为Length [data]/100的段落,但是这一行代码出现了错误。
      • Partition函数的语法是Partition[list, size],其中list是要划分的列表,size是划分的段落数目或每个段落的长度。
      • 你想要将data划分为固定长度的段落,所以应该使用Partition[data, Length[data]/100]
    5. 错误: segments[i,1]s x<segments[i+1,1]

      • 这一行代码中,segments[i,1]s应该是 segments[i, 1] * s,表示常数乘法。
      • 此外,你还需要添加逗号来分隔条件和结果。
      • 因此,应该写成segments[i, 1] *s, x < segments[i + 1, 1]

    以下是修改后的代码:

    data = Table[Random[], {100}];
    segments = Partition[data, Length[data]/100];
    piecewiseFunction = Piecewise[Table[{i, segments[[i, 1]] * s, x < segments[[i + 1, 1]]}, {i, 1, Length[segments] - 1}]];
    Plot[piecewiseFunction, {x, 1, 100}, Exclusions -> None]
    

    这样,你应该可以正确构造并绘制分段常值函数了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月7日
  • 已采纳回答 3月30日
  • 创建了问题 3月30日