实现简单的26进制加法

实现简单的26进制加法

  1. 两个大整数相加,每一位是一个小写字母,二十六进制,a表示0,z表示25,求结果。例如:
    输入:z 和 bc
    输出: cb

解析

首先,以字符串的格式输入两个加数,然后,利用函数getCol()将两个加数转化为可直接运算的十进制数字。然后,将结果相加,并转化为小写字符并输出。

将字符串转换为十进制数

int getCol(string ch) {    //将字母转化为可运算的十进制数字int res = 0;int len = ch.size();for(int i = 0;i < len; i++) {int t = ch[i] - 'a';res = res*26 + t;}return res;}

实现

    string input1;cout << "请输入第一个加数:";cin >> input1;string input2;cout << "请输入第二个加数:";cin >> input2;int num1 = getCol(input1);int num2 = getCol(input2);int sum = num1 + num2;if(sum < 26) {char t1 = sum + '97';cout << t1 << endl;}if(26 <= sum < 260) {char t1 = char(sum%26 + 97);char t2 = char(sum/26 + 97);cout << t2 << t1 << endl;}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部