芒果芭乐 2024-06-05 17:38 采纳率: 90.2%
浏览 9
已结题

这个图片里的内容有较好的解决办法吗

img


此图片里的内容题设 有什么比较好的解决方法不?谢谢大家 希望帮助谢谢!

  • 写回答

3条回答 默认 最新

  • wanghui0380 2024-06-05 18:18
    关注

    他特别说明不让用数组,表示其实用数组有简单解法。
    所以不妨你先用数组想。我先拼接2个123456
    123456123456
    然后你发现了规律了,就是每次索引+1,从索引处取6个
    123456 索引0
    234561 索引1
    345612 索引2
    456123 索引3
    561234 索引4
    612345 索引5
    这是数组解解法


    换他题目要求的解法。你可以观察到这是一个周期性的东西。既然如此你可以看成一个周期函数,这个函数周期是6,那么每次索引+1,其实就是相位。
    现在补个图:你看一下就明白了

    img


    这是信号处理里面5大基础波形的锯齿波,既然是波,如果你移动初始相位,我想你可以理解我要表达什么了的把

    至于解法,前面专家-赤兔[在线] 已经有解了。你参考那个看。外层循环就是产生相位的,内层循环就是产生周期的
    当然我个人评价那个写的麻烦了点 周期长度就是6,直接 j=i to i+6 然后取模 即可。

    算了还是写个例子好了,实现2种方法都不用数组的(不过我不想开另IDE,所以直接用C#)
    下面是C#代码,你要C++的看懂的自己改

    static void Main(string[] args)
     {
         Console.WriteLine("方法一");
         make(6);
         Console.WriteLine("方法二");
         make2(6);
    
    
         Console.ReadKey();
         return;
         //正常的波形+相位
         void make(int rate)
         {
             for (int i = 0; i < rate; i++)
             {
                 for (int j = 0; j < rate; j++)
                 {
                     var m = (j + i) % rate;
                     Console.Write(m + 1);
                 }
                 if (i < rate -1)
                     Console.Write(Environment.NewLine);
             }
         }
         //如果看成波形和相位,其实还能有另外反推法,用商当相位,这样么一个循环也可
         void make2(int rate)
         {
             for (int i = 0; i < rate *rate; i++)
             {
                 var m = i / rate;
                 var n = i + m;
                 var j = n % rate;
                 Console.Write(j+1);
                 if(i%rate==(rate-1)&&i<rate*rate-1)
                     Console.Write(Environment.NewLine);
             }
         }
    
     }
    
    
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 6月15日
  • 已采纳回答 6月7日
  • 创建了问题 6月5日

悬赏问题

  • ¥15 AD9910输出波形向上偏移,波谷不为0V
  • ¥15 淘宝自动下单XPath自动点击插件无法点击特定<span>元素,如何解决?
  • ¥15 曙光1620-g30服务器安装硬盘后 看不到硬盘
  • ¥15 抖音直播广场scheme
  • ¥15 为什么我明明有这个文件调试器还显示错误?
  • ¥15 软件工程用例图的建立(相关搜索:软件工程用例图|画图)
  • ¥15 如何在arcgis中导出拓扑关系表
  • ¥15 处理数据集文本挖掘代码
  • ¥15 matlab2017
  • ¥15 在vxWorks下TCP/IP编程,总是connect()报错,连接服务器失败: errno = 0x41