week1-绪论

.作业题目

仿照三元组或复数的抽象数据类型写出有理数抽象数据类型的描述 (有理数是其分子、分母均为整数且分母不为零的分数)。
有理数基本运算:

1. 构造有理数T,元素e1,e2分别被赋以分子、分母值

2. 销毁有理数T

3. e(引用类型参数)返回有理数T的分子或分母,当入参i为1时返回分子, i为2是返回分母。

4. 将有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母

5. 有理数T1,T2相加,结果存入有理数T3

6. 有理数T1,T2相减,结果存入有理数T3

7. 有理数T1,T2相乘,结果存入有理数T3

8. 有理数T1,T2相除,结果存入有理数T3

ADT Rational

{   数据对象:

D={e1,e2|e1,e2均为整数,且e1为分子,e2为分母}

数据关系:

R={<e1,e2>|e1为有理数的分子,e2为有理数的分母,且e2不为0}

基本运算

AssignRational(&T,v1,v2)

操作结果:构造有理数T,元素e1,e2分别被赋以参数v1,v2的值

DestroyRational(&T)

初始条件:有理数T已存在

操作结果:有理数T被销毁

GetRational(T,i,&e)

初始条件:有理数T已存在,i属于{1,2}

操作结果:用e返回有理数T的分子或分母,i=1返回分子,i=2返回分母

PutRational(T,i,e)

初始条件:有理数T已存在,i属于{1,2}

操作结果:改变有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母

AddRational(T1,T2,&T3)

初始条件:有理数T1,T2已存在

操作结果:有理数T1T2相加,结果存入有理数T3

SubRational(T1,T2,&T3)

初始条件:有理数T1,T2已存在

操作结果:有理数T1,T2相减,结果存入有理数T3

MulRational(T1,T2,&T3)

初始条件:有理数T1,T2已存在

操作结果:有理数T1,T2相乘,结果存入有理数T3

DivRational(T1,T2,&T3)

初始条件:有理数T1,T2已存在

操作结果:有理数T1,T2相除,结果存入有理数T3

}ADTRational

 

二.数据结构、函数说明

头文件:

      

函数:

 

三.代码实现说明

1.构造有理数T

 

2.销毁有理数T

 

3.有理数相加

 

4.有理数相减

 

5.有理数相乘

 

6.有理数相除

 

7.求最大公约数

 

四.结果展示

 

 

五.总结

在这次作业中深刻认识到了传参的重要性,所以在引用T时要先给它分配存储,参数才传得进去;

其二,当多个小函数运用到同一个引用T3时,只需在主函数中先构造T3有理数,在后来的小函数中T3有理数将会随着其小函数的改变而改变;还有就是关于自定义一个名为Rational的数据类型,可以根据题目中Rational的特点,使用typedef 原有类型名 新类型名定义。数据结构分为逻辑结构和存储结构,使问题更快的到解决。

 

 

.作业题目

仿照三元组或复数的抽象数据类型写出有理数抽象数据类型的描述 (有理数是其分子、分母均为整数且分母不为零的分数)。
有理数基本运算:

1. 构造有理数T,元素e1,e2分别被赋以分子、分母值

2. 销毁有理数T

3. e(引用类型参数)返回有理数T的分子或分母,当入参i为1时返回分子, i为2是返回分母。

4. 将有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母

5. 有理数T1,T2相加,结果存入有理数T3

6. 有理数T1,T2相减,结果存入有理数T3

7. 有理数T1,T2相乘,结果存入有理数T3

8. 有理数T1,T2相除,结果存入有理数T3

ADT Rational

{   数据对象:

D={e1,e2|e1,e2均为整数,且e1为分子,e2为分母}

数据关系:

R={<e1,e2>|e1为有理数的分子,e2为有理数的分母,且e2不为0}

基本运算

AssignRational(&T,v1,v2)

操作结果:构造有理数T,元素e1,e2分别被赋以参数v1,v2的值

DestroyRational(&T)

初始条件:有理数T已存在

操作结果:有理数T被销毁

GetRational(T,i,&e)

初始条件:有理数T已存在,i属于{1,2}

操作结果:用e返回有理数T的分子或分母,i=1返回分子,i=2返回分母

PutRational(T,i,e)

初始条件:有理数T已存在,i属于{1,2}

操作结果:改变有理数T的分子或分母更改为e,入参i为1时改变分子, i为2是改变分母

AddRational(T1,T2,&T3)

初始条件:有理数T1,T2已存在

操作结果:有理数T1T2相加,结果存入有理数T3

SubRational(T1,T2,&T3)

初始条件:有理数T1,T2已存在

操作结果:有理数T1,T2相减,结果存入有理数T3

MulRational(T1,T2,&T3)

初始条件:有理数T1,T2已存在

操作结果:有理数T1,T2相乘,结果存入有理数T3

DivRational(T1,T2,&T3)

初始条件:有理数T1,T2已存在

操作结果:有理数T1,T2相除,结果存入有理数T3

}ADTRational

 

二.数据结构、函数说明

头文件:

      

函数:

 

三.代码实现说明

1.构造有理数T

 

2.销毁有理数T

 

3.有理数相加

 

4.有理数相减

 

5.有理数相乘

 

6.有理数相除

 

7.求最大公约数

 

四.结果展示

 

 

五.总结

在这次作业中深刻认识到了传参的重要性,所以在引用T时要先给它分配存储,参数才传得进去;

其二,当多个小函数运用到同一个引用T3时,只需在主函数中先构造T3有理数,在后来的小函数中T3有理数将会随着其小函数的改变而改变;还有就是关于自定义一个名为Rational的数据类型,可以根据题目中Rational的特点,使用typedef 原有类型名 新类型名定义。数据结构分为逻辑结构和存储结构,使问题更快的到解决。

 

转载于:https://www.cnblogs.com/alleln/p/8520179.html

你好!对于心脏病预测的问题,使用循环神经网络(RNN)是一种常见的方法。RNN适用于处理序列数据,而心电图信号就是一种序列数据。在使用RNN进行心脏病预测时,你可以将心电图信号作为输入序列,然后通过训练RNN模型来预测患者是否患有心脏病。 首先,你需要准备一个合适的数据集,其中包含心电图信号和相应的心脏病标签。可以使用公开的心电图数据集,如PTB数据库或MIT-BIH数据库。然后,你可以对数据进行预处理和特征工程,如数据清洗、滤波、降采样等。 接下来,你可以构建一个RNN模型。RNN模型由一系列循环层组成,每个循环层都会处理一个时间步的输入数据。你可以选择不同类型的RNN单元,如简单循环单元(SimpleRNN)、长短期记忆网络(LSTM)或门控循环单元(GRU)。通过添加适当的全连接层和激活函数,你可以将RNN模型输出映射到二分类问题(有或无心脏病)的结果。 然后,你可以使用训练集对RNN模型进行训练,并使用验证集进行模型调优。在训练过程中,你可以使用适当的损失函数(如交叉熵)和优化算法(如随机梯度下降)来最小化模型的预测误差。 最后,你可以使用测试集对训练好的模型进行评估,并计算模型的性能指标,如准确率、精确率、召回率等。这些指标可以帮助你评估模型的预测能力和泛化能力。 需要注意的是,心脏病预测是一个复杂的医学问题,仅仅使用心电图信号可能不能得到准确的预测结果。通常情况下,还需要结合其他患者的临床信息和医学知识来进行综合评估。因此,在进行心脏病预测时,建议与专业医生合作,并遵循相关的医学准则和规范。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值