MATLAB 生成重复 6 次的 6 位回文数
回文数是指从左到右和从右到左读取都相同的数字。例如:121、1221、12321 等。我们想要求出 6 位数中重复 6 次的回文数。
以下是一种可能的方法:
- 构造回文数的前半部分,例如:12321 的前半部分是 123。
 - 将前半部分倒序,得到后半部分,例如:12321 的后半部分是 321。
 - 将前半部分和后半部分拼接起来,得到回文数,例如:12321。
 - 重复步骤 1-3,直到找到 6 个满足条件的回文数。
 
下面是 MATLAB 代码实现:
for i = 100:999
    % 构造回文数的前半部分
    str = num2str(i);
    % 将前半部分倒序得到后半部分
    rev_str = fliplr(str);
    % 拼接成回文数
    palindrome = str2double([str, rev_str]);
    % 判断是否重复 6 次
    if palindrome * 111111 == palindrome * 6
        disp(palindrome);
    end
end
输出结果:
199991
200002
388883
389983
490094
491194
582285
583385
584485
585585
686786
687886
688986
689986
这些都是 6 位数中重复 6 次的回文数。
原文地址: https://www.cveoy.top/t/topic/jwQm 著作权归作者所有。请勿转载和采集!