你猜是什么??? 十进制转化为任意进制咩咩咩!!!

来源:互联网 发布:js构造函数的使用实例 编辑:程序博客网 时间:2024/05/04 19:46


一、实验目的
1、   熟练掌栈和队列的结构特点,掌握栈和队列的顺序存储和链式存储结构和实现。
2、      学会使用栈和队列解决实际问题。
二、实验内容
2、设计算法并写出代码,实现一个十进制转换成任意的进制数。

三、实验步骤
1、依据实验内容分别说明实验程序中用到的数据类型的定义;
2、相关操作的算法表达;
3、完整程序;
4、总结、运行结果和分析。
5、总体收获和不足,疑问等。

四 源代码

#include<iostream>using namespace std;const int size=10;template<class T>class seqstack{public:seqstack(){top=-1;}~seqstack(){}    void push(T x);T pop();T gettop(){if(top!=-1)return data[top];};int empty(){if(top==-1) return 1;else{return 0;}}void decimaltor(int m,int r);private:T data[size];     int top;};template<class T>void seqstack<T>::push (T x){if(top==size-1)throw"上溢";top++;data[top]=x;}template<class T>T seqstack<T>::pop(){   T x;if(top==-1)throw"上溢";x=data[top--];return x;}template <class T> void seqstack<T>:: decimaltor (int num,int r){top=-1; T k;while (num!=0){  k=num %r;push (k);num=num/r;}while(top!=-1){cout<<pop()<<'\t';    } }int main(){   int num,r;cout<<"~~~快点赶紧输入一个十进制的数嘛:"<<endl;cin>>num;cout<<endl;    cout<<"你想转化为多少进制的数啊嗷嗷嗷:"<<endl;    cin>>r;    cout<<endl;seqstack<int>L;    L.decimaltor(num,r);    cout<<endl;   return 0;}

五 运行截图

六 实验心得

我是根据实验书52页的算法然后自己补充成为一个完整的程序啊

但是要我写出这个进制的算法还是不行哇。

老师,我会努力的啊。

阅读全文
0 0
原创粉丝点击