m0_64301419 2022-05-25 18:20 采纳率: 100%
浏览 168
已结题

MATLAB,这周五之前,有偿!

img

考虑定义:函数s1、s2、和sines(pts、amp、n1、n2)。输入pts是一个整数,但amp、n1和n2不一定是整数。输出参数s1是一个行向量,其长度(元素数)等于pts。s1的元素是正弦函数的值,当它被赋予从零开始并延伸到正弦n1周期的等距参数时。(请注意,我们要求完整的句点,因此如果n1是整数,则s1的第一个和最后一个元素都将是0,而不是非常小的舍入误差。)(提示:如果你必须用10m长的线段做一个100m长的直线围栏,你需要多少线段fi和多少极fi)正弦波的振幅等于amp。向量s2与s1相同,只是s2包含n2个周期。向量和是s1和s2的和。如果省略n2,则应将其设置为比n1大5%的值。如果也省略n1,则应将其设置为100。如果未提供amp,则它应默认为1。最后,如果也省略了pts,则应将其设置为1000。如果按如下所示运行sines并绘制第三个输出参数sums,则图形应如下所示(如果水平拉伸绘图窗口)。
要求:请绘制pts 1000 amp 1.5 n1 100 200 300 400时的总和。尝试在同一窗口中绘制四个图形。请显示主代码、功能代码和结果。

  • 写回答

1条回答 默认 最新

  • czy1219 2022-05-29 11:21
    关注
    
    clear all
    clc
    close all
    
    % 测试
    figure(1)
    set(figure(1),'Position',[51,501,1167.5,217]);
    subplot(1,2,1)
    [s11,s21,sums1]=sines(10,1,2,3);
    subplot(1,2,2)
    [s12,s22,sums2]=sines(1000,1,50,52);
    
    % 四图
    figure(2)
    set(figure(2),'Position',[46.5,107,1172,307]);
    subplot(2,2,1)
    [s_11,s_21,sums_1]=sines(1000,1.5,100);
    subplot(2,2,2)
    [s_12,s_22,sums_2]=sines(1000,1.5,200);
    subplot(2,2,3)
    [s_13,s_23,sums_3]=sines(1000,1.5,300);
    subplot(2,2,4)
    [s_14,s_24,sums_4]=sines(1000,1.5,400);
    
    function [s1,s2,sums]=sines(pts,amp,n1,n2)
    if nargin < 1
        pts = 1000;
        amp = 1;
        n1 = 100;
        n2 = n1*(1+0.05);
    elseif nargin < 2
        amp = 1;
        n1 = 100;
        n2 = n1*(1+0.05);
    elseif nargin < 3
        n1 = 100;
        n2 = n1*(1+0.05);
    elseif nargin < 4
        n2 = n1*(1+0.05);
    end
    t1 = linspace(0,2*pi*n1,pts);
    t2 = linspace(0,2*pi*n2,pts);
    s1 = amp*sin(t1);
    s2 = amp*sin(t2);
    sums = s1 + s2;
    plot(sums);
    end
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 6月6日
  • 已采纳回答 5月29日
  • 赞助了问题酬金30元 5月29日
  • 创建了问题 5月25日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵