一级棒(Eachfun)
偷猫的个人主页
一级棒(Eachfun) - 编程园地 - 奥赛辅导 - 三十一课:十进制到二进制的转化
RSS订阅
三十一课:十进制到二进制的转化
发表时间:2002-12-19 00:00:00 关键词:奥赛,PASCAL,编程,源码

program DtoB;
var
  a,n:real;
  s1,s2:string[20];p:string;
  i,j,m,t:integer;
begin
  readln(a);
  m:=trunc(a);
  n:=a-trunc(a);

  i:=0;
  repeat
    i:=i+1;
    if m mod 2=1 then s1[i]:='1' else s1[i]:='0';
    m:=m div 2;
  until m=0;

  j:=0;
  repeat
    j:=j+1;
    if n*2 >=1 then s2[j]:='1' else s2[j]:='0';
    n:=n*2-trunc(n*2);
  until (n=0) or (j=10);

  for t:=i downto 1 do
    write(s1[t]);
  write('.');

  for t:=1 to j do
    write(s2[t]);
  writeln;
end.

本站特约顾问律师常州东晟律师事务所朱立律师(电话13915029670,QQ646146109)提醒您:
本站文章皆为作者原创,其它媒体(包括但不限于报刊、杂志、网站、电视、电台)未经作者书面许可严禁转载(或部分摘录)!
相关评论
发表评论
称呼:
QQ:
邮箱:
链接:
内容:
搜索: 百度搜索 Google搜索
Copyright©2000 - 2011 Eachfun.Com, All Rights Reserved 一级棒网络
备案号忘了带来
一级棒建站系统 http://www.eachfun.com 一级棒版权所有,未经许可不得商用!