hswhvwvsihsbwb 2021-10-28 08:15 采纳率: 58.3%
浏览 81
已结题

怎么去解决以下的matlab问题

使用字母ABCD…OP,共16个字母来表示1、2、3..16,共16个数,则AA表示17,AB表示18,…BA表示33,以此类推。请设计一个程序,能够实现输入一个正整数,输出对应的字母表示,并计算数字4000,10000的字母值。

  • 写回答

1条回答 默认 最新

  • joel_1993 2021-10-28 10:36
    关注

    你好同学,代码供参考:

    n = 4000; % 需要转换的数
    s = [];
    while(n~=0) % 得到16进制数
        p = mod(n,16);
        s = [p,s];
        n=(n-p)/16;
    end
    % 得到下标s
    for i = length(s):-1:2
        if(s(i)==0)
            s(i)=16;
            s(i-1)=s(i-1)-1;
        end
    end
    if(s(1)==0)
        s(1)=[];
    end
    % 换算成字母表示
    code = 'A':'P';
    result = code(s) % 结果输出
    

    几个例子
    n=4000

    result =
    
        'OIP'
    

    n=10000

    result =
    
        'BFPP'
    

    n=33

    result =
    
        'BA'
    

    有帮助还望给个采纳支持一下答主答题哟

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

报告相同问题?

问题事件

  • 系统已结题 11月5日
  • 已采纳回答 10月28日
  • 创建了问题 10月28日

悬赏问题

  • ¥15 麒麟V10桌面版SP1如何配置bonding
  • ¥15 Marscode IDE 如何预览新建的 HTML 文件
  • ¥15 K8S部署二进制集群过程中calico一直报错
  • ¥15 java python或者任何一种编程语言复刻一个网页
  • ¥20 如何通过代码传输视频到亚马逊平台
  • ¥15 php查询mysql数据库并显示至下拉列表中
  • ¥15 freertos下使用外部中断失效
  • ¥15 输入的char字符转为int类型,不是对应的ascall码,如何才能使之转换为对应ascall码?或者使输入的char字符可以正常与其他字符比较?
  • ¥15 devserver配置完 启动服务 无法访问static上的资源
  • ¥15 解决websocket跟c#客户端通信