大数转为二进制的栈的应用
来源:互联网 发布:小鸡模拟器网络验证 编辑:程序博客网 时间:2024/06/11 03:22
今天花了好久的时间写了一个栈的二进制应用,最后还是被我写出了,感觉还是挺有成就感的,特意记录下
普通整数转化,应该很简单,不多说了
#include<iostream>using namespace std;typedef struct{int key;}stack;int top = -1;stack s[10000];int main() {int n;cin >> n;while (n) {s[++top].key = n % 2;n /= 2;}while (top != -1) {cout << s[top--].key;}return 0;}
大数的转化,读进来字符串,后来用字符串来操纵,但一直错,后来直接全部改为用数组来操作,还行
#include<iostream>using namespace std;typedef struct{int key;}stack;int top = -1;stack s[10000];int main() {int len=0,i, j, k, sum,temp,a,b,zhi[10000];bool flag;char ch[10000];cin >> ch;while (ch[len] != '\0')len++;for (i = 0; i < len; i++)zhi[i] = ch[i] - '0';while (1) {//判断,若全部都为0的话,则退出循环 flag = false;for (i = 0; i < len; i++){if (zhi[i] != 0) {flag = true;break;}}//核心代码,每一次计数时自己位上变为原来/2,随后记录下余数,待下一位进行判断 if (flag) {temp = 0;for (i = 0; i < len; i++) {sum = temp * 10 + zhi[i];a = sum % 2;b = sum / 2;zhi[i] = b;if (a)temp = 1;elsetemp = 0;}s[++top].key= a;}elsebreak;}k = 1;//输出的操作 while (top != -1) {cout << s[top--].key;if ((k)%4 == 0)cout << " ";k++;}return 0;}
0 0
- 大数转为二进制的栈的应用
- 任意长度的十进制数转为二进制、十六进制,和大数除法算法(只有小半份)
- 十进制转为二进制的JAVA代码
- 把数字转为二进制的字串
- 十进制转为二进制:python/java的实现
- 栈的应用-大数加法问题
- 二进制的神奇应用
- 栈的应用举例:二进制的转换
- 一个二进制数转为格雷码的小程序
- 将int型转为指定长度的二进制
- 将二进制转为字符串,再还原的方法
- 十六进制,八进制,十进制数转为二进制数显示的函数
- python:十进制数转为相应二进制数的字符串形式
- 将int类型转为二进制类型的方法
- 计算X转为二进制后,包含1的数量
- DecimalFormat的用法,十进制转为二进制补0
- java 整数转为二进制后得到其中1的个数
- 解析字符串,每八位的二进制转为十进制
- android 捕获 UncaughtExceptionHandler
- C++ 语言中将其他类型的对象隐式转换
- ios 异步后台获取网络资源
- 每日三个笑话-20151013
- JQuery 淡入淡出2
- 大数转为二进制的栈的应用
- CentOS+Hadoop+Zookeeper+HBase安装配置
- 车辆系统仿真平台AVL Cruise M 2015、ESI PAM-DIEMAKER with PAM-TFA 2014.0 for catia v5r19-22 64位
- java23种设计模式之原型模式(Prototype)
- 多线程——生产和销售
- sizeof和C++类的问题
- 化学物品辅助检索工具ESL ChemHELP v2.03、vmgsim.V9.0.46流程模拟
- 解决TCP网络传输“粘包”问题
- a new beginning