实验3.5 十进制转换
来源:互联网 发布:python网络编程 amazon 编辑:程序博客网 时间:2024/05/01 11:05
一、实验目的
1、 熟练掌栈和队列的结构特点,掌握栈和队列的顺序存储和链式存储结构和实现。
2、 学会使用栈和队列解决实际问题。
二、实验内容
设计算法并写出代码,实现一个十将二进制转换成2进制数。
三、实验源代码#include <iostream> using namespace std; const int StackSize=100; template<class DataType> class SeqStack { public: SeqStack(); ~SeqStack(){}; void Push(DataType x); DataType Pop(); void Decimaltor(int num,int r); private: DataType data[StackSize]; int top; }; template<class DataType> SeqStack<DataType>::SeqStack() { top=-1; } template<class DataType> void SeqStack<DataType>::Push(DataType x) { if(top==StackSize-1)throw"上溢"; top++; data[top]=x; } template<class DataType> DataType SeqStack<DataType>::Pop() { DataType x; if(top==-1)throw"下溢"; x=data[top--]; return x; } template<class DataType> void SeqStack<DataType>::Decimaltor(int num,int r) { int k; top=-1; while(num!=0) { k=num%r;//得到余数 Push(k); num=num/r; } while(top!=-1){ cout<<Pop(); } } int main() { int num; int r; SeqStack<int>S; cout<<"请输入一个十进制的数字:"; cin>>num; cout<<"请问你要转换为几进制:"; cin>>r; cout<<"转换后的"<<r<<"进制数字为:"; S.Decimaltor(num,r); cout<<endl; return 0; }
四、实验结果截图
#include <iostream> using namespace std; const int StackSize=100; template<class DataType> class SeqStack { public: SeqStack(); ~SeqStack(){}; void Push(DataType x); DataType Pop(); void Decimaltor(int num,int r); private: DataType data[StackSize]; int top; }; template<class DataType> SeqStack<DataType>::SeqStack() { top=-1; } template<class DataType> void SeqStack<DataType>::Push(DataType x) { if(top==StackSize-1)throw"上溢"; top++; data[top]=x; } template<class DataType> DataType SeqStack<DataType>::Pop() { DataType x; if(top==-1)throw"下溢"; x=data[top--]; return x; } template<class DataType> void SeqStack<DataType>::Decimaltor(int num,int r) { int k; top=-1; while(num!=0) { k=num%r;//得到余数 Push(k); num=num/r; } while(top!=-1){ cout<<Pop(); } } int main() { int num; int r; SeqStack<int>S; cout<<"请输入一个十进制的数字:"; cin>>num; cout<<"请问你要转换为几进制:"; cin>>r; cout<<"转换后的"<<r<<"进制数字为:"; S.Decimaltor(num,r); cout<<endl; return 0; }
四、实验结果截图
阅读全文
0 0
- 实验3.5 十进制转换
- 第二周实验报告十进制转换二进制
- 数据结构|用栈实现十进制转换成二进制(实验3.5)
- 数据结构x实验二--非负十进制转换为八进制
- 实验三:十进制转换成二进制数(顺序栈)
- 十进制转换
- 十进制转换
- 十进制转换
- 《第二周实验报告1-1》---递归函数将十进制数转换成二进制
- 第二周实验报告之编写递归函数将十进制数转换成二进制数输出
- 十进制转换二进制(反码)
- 十进制/十六进制转换
- 十进制转换Ruby实现
- 十进制转换为二进制
- 十六进制 与 十进制转换
- 二进制与十进制转换
- JvavScript二进制十进制转换
- 十六进制 十进制 转换
- idea快捷键
- 身体各个时辰的变化
- 博客访问破万纪念
- TabLayout+ViewPager的基本使用
- Httpurl网络获取数据
- 实验3.5 十进制转换
- 从零开始实现线性判别分析(LDA)算法(多类情形)
- DBDT 基于不同损失函数的算法推导细节
- swift方法实现字符串的大小写转换
- Sap BussinessObjects Design Studio-infoChart
- 高手详解SQL性能优化十条经验
- Volume-Docker存储(一)
- JPA-Java Persistence API
- Spring中ApplicationContext和beanfactory区别