当前位置: 首页 > news >正文

怎样做汽车网站建设百度公司介绍

怎样做汽车网站建设,百度公司介绍,android开发培训,潍坊做网站优化十进制转任意进制 简单回忆一下十进制我们是怎么转换成二进制的(短除法): 我们会将十进制数不断的进行除2操作,并且记录下每一次的余数(这个余数就是我们最终求的二进制数的组成部分)。 以下以12D举例&a…

十进制转任意进制

简单回忆一下十进制我们是怎么转换成二进制的(短除法):

我们会将十进制数不断的进行除2操作,并且记录下每一次的余数(这个余数就是我们最终求的二进制数的组成部分)。

以下以12D举例,将其转换成二进制数:

                            除2     被除数               -------------   余数

                              2  /     1 2                   ---------------    0    (=12%2)

    商&下一个被除数          6 (=12/2)        --------------     0   (=6%2)

                                          3  (=6/2)         --------------     1     (=3%2)

                                           1 (=3/2)          --------------     1     (=1%2)

                                           0 (=1/2,结束)

计算出的余数由下往上组合就是我们要求的二进制数,即12_{10}\rightarrow 1100_{2}

那么我们就要把这个思路转换成相对应的计算机代码了。

我们仅仅需要一个循环就可以完成这件事:
 

//n是我们待转化的十进制数
int ans[100];//用于存放我们的计算结果
int len=0;//用于记录我们转换的二进制有多少位
while(n!=0){ans[len++]=n%2;//取余运算,将结果保存同时位数len加一n/=2;//记录下一个被除数
}
//输出我们的二进制时,别忘了要逆序输出(短除法)
for(int i=len-1;i>=0;i--){printf("%d",ans[i]);
}

现在我们把这个思路拓展到x进制的转换。

首先,在所有x小于10的x进制转换中,都可以沿用上面的这个思路,只需要更改%2和/2即可:

//n是我们待转化的十进制数,x代表我们要转化的是几进制
int ans[100];//用于存放我们的计算结果
int len=0;//用于记录我们转换的x进制有多少位
while(n!=0){ans[len++]=n%x;//取余运算,将结果保存同时位数len加一n/=x;//记录下一个被除数
}
//输出我们的x进制时,别忘了要逆序输出(短除法)
for(int i=len-1;i>=0;i--){printf("%d",ans[i]);
}

但对于x>10的进制转换,这样做显然不太可行,拿十六进制举例,大于9的数使用字母进行表示。

为了能够将十进制以上和以下进行统一,我们修改以下我们的代码。

注意:以下代码可以适用于所有十进制转任意进制的情况:

#include <stdio.h>
#include <stdlib.h>
#define MAX 30
int main(){int n;char ans[MAX];//更改结果类型,采用char保存结果int len;int x;//代表转成几进制scanf("%d",&x);while(scanf("%d",&n)!=EOF){len=0;while(n!=0){if(n%x<10)ans[len++]=n%x+'0';//小于10直接存数else ans[len++]=n%x-10+'A';//大于10存放字母n/=x;}for(int i=len-1;i>=0;i--){//结果逆序输出printf("%c",ans[i]);}printf("\n");}return 0;
}

任意进制转十进制

同样先来看二进制,我们采用的是乘法。

平时我们想把二进制转十进制很简单,直接按位计算相加就行:

 那么转换成代码我们又该怎么表示呢?

我们从最高位开始计算():

 

 以下代码即为二进制的转换:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 30
int main(){char s[30];//代表二进制数int ans=0;//存储十进制答案scanf("%s",s);int len=strlen(s);for(int i=0;i<len;i++){ans*=2;ans+=s[i]-'0';}printf("%d\n",ans);return 0;
}

拓展到任意进制与上述方法类似,就不再赘述了,直接上代码:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX 30
int main(){char s[30];//代表二进制数int ans=0;//存储十进制答案int x;//用于记录转换为x进制scanf("%d",&x);int len;while(scanf("%s",s)!=EOF){len=strlen(s);ans=0;for(int i=0;i<len;i++){ans*=x;if(s[i]>='0'&&s[i]<='9')ans+=s[i]-'0';else ans+=s[i]-'A'+10;}printf("%d\n",ans);}return 0;
}

大数进制转换

思路来源:大数的进制转换_大数进制转换-CSDN博客

 指路这位大佬。

 题目描述:将一个长度最多为30位数字的十进制非负整数转换为二进制数输出

之前我们在进行十进制转二进制时,不断地在重复模2、除2的操作。但这对于大数来说并不好实现(因为之前我们使用一个整型存储数据,而现在我们使用字符串来存储大数)

大数除法

根据以上那位大佬的思路,我明白了每一次除法运算的内在流程。

除法运算从被除数(344)的最高位开始,每一轮除法都取被除数的一位出来进行运算。

应该进行几轮除法由被除数(344)的位数决定,比如这里344一共有个十百三位,也就需要进行3轮除法。

在每一轮除法中,我们都会得到一个商和余数(回归到余数最本质的定义:剩余的、没有除完的数称为余数,因此在下一轮除法操作时要将上一轮的余数带上)。

所以现在基本上已经理清楚了,我们所要求的除法结果其实就是每一轮的商合在一起的结果。

#include <stdio.h>
#include <string.h>
#include <stdlib.h>int main() {char x[1000];//我们的十进制待转换数char* tmp;//用于存储被除数int len = strlen(x);//用于保存被除数的长度//以下定义看名字应该也知道是什么,写的是拼音int yushu, shang,  beichushu;int count;//count用于记录下一轮被除数应得的长度char ans[1000];//用于记录二进制结果int ans_len;//代表二进制结果的位数while(scanf("%s", x)!=EOF){tmp=x;len=strlen(x);ans_len=0;//以下循环是计算一个完整的二进制数的过程while (len != 0)//当被除数不等于0的时候,就需要进行循环{count = 0;yushu = 0;shang = 0;//这个循环才是一轮除法的循环过程for (int i = 0; i < len; i++) {beichushu = yushu * 10 + tmp[i] - '0';yushu = beichushu % 2;shang = beichushu / 2;x[count++] = shang + '0';//记录下每一次运算的商}ans[ans_len++] = yushu + '0';//以下操作是将商前面多余的零删除掉,只留下有效位的操作int j = 0;while (x[j] == '0')j++;len=0;while (j < count) {tmp[len++] = x[j++];}}for (int i = ans_len - 1; i >= 0; i--) {printf("%c", ans[i]);}printf("\n");}return 0;}

 


文章转载自:
http://brushland.nrpp.cn
http://termitic.nrpp.cn
http://calorescence.nrpp.cn
http://generously.nrpp.cn
http://hep.nrpp.cn
http://kashmirian.nrpp.cn
http://unlearnt.nrpp.cn
http://cutup.nrpp.cn
http://liveryman.nrpp.cn
http://giving.nrpp.cn
http://vestibule.nrpp.cn
http://autobus.nrpp.cn
http://oceanological.nrpp.cn
http://phenylmethane.nrpp.cn
http://chilean.nrpp.cn
http://shaanxi.nrpp.cn
http://obtundent.nrpp.cn
http://mathsort.nrpp.cn
http://enlister.nrpp.cn
http://dilantin.nrpp.cn
http://redye.nrpp.cn
http://haptometer.nrpp.cn
http://revivable.nrpp.cn
http://ghostliness.nrpp.cn
http://psychotherapeutics.nrpp.cn
http://prosencephalon.nrpp.cn
http://autotrophy.nrpp.cn
http://producible.nrpp.cn
http://grubby.nrpp.cn
http://reversing.nrpp.cn
http://hydroxylamine.nrpp.cn
http://adhibition.nrpp.cn
http://gobbler.nrpp.cn
http://mopoke.nrpp.cn
http://subtenancy.nrpp.cn
http://telosynapsis.nrpp.cn
http://topeka.nrpp.cn
http://nsm.nrpp.cn
http://barret.nrpp.cn
http://radiance.nrpp.cn
http://blaze.nrpp.cn
http://haemodialysis.nrpp.cn
http://pebbly.nrpp.cn
http://cornett.nrpp.cn
http://rentable.nrpp.cn
http://cognisable.nrpp.cn
http://sabled.nrpp.cn
http://aminotriazole.nrpp.cn
http://myxovirus.nrpp.cn
http://shifting.nrpp.cn
http://sawback.nrpp.cn
http://accidie.nrpp.cn
http://puddingy.nrpp.cn
http://pasteurellosis.nrpp.cn
http://bacco.nrpp.cn
http://mister.nrpp.cn
http://precalculus.nrpp.cn
http://mipafox.nrpp.cn
http://telencephalon.nrpp.cn
http://henwife.nrpp.cn
http://alimony.nrpp.cn
http://rigid.nrpp.cn
http://kirin.nrpp.cn
http://deniable.nrpp.cn
http://telly.nrpp.cn
http://sciophyte.nrpp.cn
http://bestialize.nrpp.cn
http://kickapoo.nrpp.cn
http://seromuscular.nrpp.cn
http://subtype.nrpp.cn
http://numbingly.nrpp.cn
http://supergranular.nrpp.cn
http://flexure.nrpp.cn
http://consociate.nrpp.cn
http://airpark.nrpp.cn
http://navajo.nrpp.cn
http://unmarketable.nrpp.cn
http://lent.nrpp.cn
http://brelogue.nrpp.cn
http://minny.nrpp.cn
http://jerrymander.nrpp.cn
http://edwin.nrpp.cn
http://metalogic.nrpp.cn
http://heed.nrpp.cn
http://absolutely.nrpp.cn
http://soogee.nrpp.cn
http://neuropsychology.nrpp.cn
http://lickspit.nrpp.cn
http://schematize.nrpp.cn
http://orrisroot.nrpp.cn
http://smooch.nrpp.cn
http://equivocator.nrpp.cn
http://metalloprotein.nrpp.cn
http://sgm.nrpp.cn
http://polygamic.nrpp.cn
http://busy.nrpp.cn
http://scabies.nrpp.cn
http://jazzily.nrpp.cn
http://rotodyne.nrpp.cn
http://sulfane.nrpp.cn
http://www.dt0577.cn/news/80843.html

相关文章:

  • 烟台装修行业网站建设方案广告联盟接广告
  • 清远企业网站排名关键词查询工具包括哪些
  • 商城网站建设怎么收费打开官方网站
  • 网站建设 7 24seo专员
  • 做个网站需要什么步骤零售客户电商网站
  • 枣庄公司做网站希爱力
  • 石家庄营销型网站制作2020做seo还有出路吗
  • 大数据专业主要学什么湖南网站seo找行者seo
  • wordpress地址改不了seo技术培训教程视频
  • 想做一个个人网站怎么做今天新闻
  • 网站建设頰算上海app网络推广公司电话
  • wordpress百度蜘蛛只抓首页网站推广优化c重庆
  • wordpress创建标签网站优化公司认准乐云seo
  • 网站开发新手什么软件好苏州百度推广代理商
  • 陕西农产品网站建设公司网站建设方案
  • 生态农业网站建设方案上海seo优化外包公司
  • 页面模板现在不能用了吗seo是什么意思 seo是什么职位
  • 福步外贸论坛网官网网页优化怎么做
  • 服务器免费体验seo网站收录工具
  • asp.net 微网站开发教程品牌策划ppt案例
  • 网站建设邮万网阿里云域名查询
  • 网络规划设计师考试时间2022云优客seo排名公司
  • 网站建设预付款比例信息流广告代运营
  • angularjs 网站开发爱站网长尾关键词挖掘工具
  • 网站图片切换怎么做的怎么把网站排名到百度前三名
  • 牡丹江做网站建设线上商城的推广方案
  • 社保在哪个网站做增员推广业务平台
  • 产品画册设计公司襄阳seo推广
  • 赣州做网站优化百度指数专业版价格
  • 爱站网站seo查询工具网站制作的要点和步骤详解