JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

数论之十进制转二进制

wys521 2024-11-20 22:55:47 精选教程 18 ℃ 0 评论

一、实验目标

输入一个正整数,转换为二进制输出。

输入样例1:

14

输出样例1:

1110

数据范围:

* n <= 2^31

二、分析

1、思路

循环%2求余,剩下商,直到商为0退出。

2、方案和步骤

用一个数组a[100]来保存二进制,用last表示当前存储的位,last=1表示二进制的个位数。

while(n>0) {

a[++last] = n % 2;

n /= 2;

}

注意数组的存储和输出顺序是相反的,输出的循环要反着来。

三、参考代码

#include <iostream>
using namespace std;
int n;
int a[100], last;
int main() {
  int n;
  cin>>n;
  while(n>0) {
    a[++last] = n % 2;
    n /= 2;
  }
  for(int i=last; i>=1; i--)
    cout<<a[i];
  cout<<endl;
  return 0;
}

如果你对数论编程感兴趣,可以到itbegin网站上,输入短码100701,就可以看到今天的知识,跟着老师学习,也可以自己练习。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表