题目1 长整数四则运算(难度系数:1.0) [问题描述 一个实现任意长的整数进行加法运算的演示程序。 [基本要求 利用双向循环链表实现长整数的存储,每个结点含一个整型变量。任何整型变量的范围是 -(2l5-1)~(215-1)。输入和输出形式:按中国对于长整数的表示习惯,每四位一组,组间用逗号隔 开。 [测试数据] (1)0;0;应输出“0”。 (2) -2345,6789:-7654.3211:应输出“-1.0000.0000”。 (3)-9999.9999:1.0000.0000.0000:应输出“9999.0000.0001” (4)1.0001.0001:-1.0001.0001:应输出“0”。 (5) 1.0001,0001:-1,0001.0000:应输出“1” (6)-9999.9999.9999:-9999.9999.9999:应输出“-1.9999.9999.9998”。 (7) 1,0000,9999,9999;1;应输出“1.0001.0000.0000”。 [实现提示] (1)每个结点中可以存放的最大整数为 251=32767,才能保证两数相加不会溢出。但若这样 存,即相当于按 32768 进制数存,在十进制数与 32768 进制数之间的转换十分不方便。故可以在 每个结点中仅存十进制数的4位,即不超过 9999 的非负整数,整个链表视为万进制数。 (2)可以利用头结点数据域的符号代表长整数的符号。用其绝对值表示元素结点数目。相加 过程中不要破坏两个操作数链表。两操作数的头指针存于指针数组中是简化程序结构的一种方法。 不能给长整数位数规定上限。 [选做内容] (1)实现长整数的四则运算;
时间: 2023-02-06 22:59:32 浏览: 300
长整数四则运算是指进行大数据范围内的整数四则运算,这些数据可能超出程序语言中整型变量的范围。
为了解决这个问题,可以使用双向循环链表来存储长整数。每个结点可以存储一个整型变量,其范围是-(215-1) ~ (215-1)。
输入和输出的形式按照中国的习惯,每四位一组,组间用逗号隔开。
要求实现任意长的整数进行加法运算的演示程序。可以考虑使用头结点数据域的符号来代表长整数的符号,使用其绝对值表示元素结点数目。在相加过程中不要破坏两个操作数的链表。
选做内容中的长整数四则运算要求实现对长整数进行四则运算,包括加法、减法、乘法和除法。
下面是一个简单的长整数加法示例代码:
```
#include <iostream>
#include <cstring>
using namespace std;
struct Node {
int val;
Node* next;
Node* prev;
};
class LongInt {
private:
Node* head;
public:
LongInt();
~LongInt();
void insert(int val);
void print();
LongInt operator+(LongInt b);
};
LongInt::LongInt() {
head = new Node;
head->val = 0;
head->next = head;
head->prev = head;
}
LongInt::~LongInt() {
while (head->next != head) {
Node* temp = head->next;
head->
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)