Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2341475
  • 博文数量: 816
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-17 17:57
文章分类

全部博文(816)

文章存档

2011年(1)

2008年(815)

分类:

2008-12-17 18:07:04

//这个程序是将二进制数字转化为十进制数字

#include//for cin and cout
#include//for ifstream and ofstream
#include//for pow function
#include//for filename
using namespace std;


void printline();//print the headline
void change();//change the digits

int main()
{
printline();
change();
       
return 0;
}

//***********************************************************************
void change()
{
      //change digits
string filename;
  ifstream indata;

//open the file
indata.open(filename.c_str());
cout<<"please enter the filename";
cin>>filename;


if(!indata)
{
cout<<"can't open the file";  //check the file
}
else
{
string line;
indata>>line; //整行地读入
string::size_type n;
n=line.length();//一行有多少个数字方便乘以二的几次方
       

int count1=1;
int count2=1;
int count3=0;

while(count1<=n&&count2<=n)
{
          int j,b;
  b=substr((0+count3),1);//take the digit one by one
          j=b*pow(2,n-count2);
  cout< 
  int c=1;

  while(c<=(14-n))
  {
  cout<<" ";
    c++;
  }
  cout<}
count3++;
}
}

//*******************************************************************************************
void printline()
{
// print the title
cout<<"Binary Number     Decimal Equivalent"<}


--------------------next---------------------
//这个程序是将二进制数字转化为十进制数字

#include  //for cin and cout
#include  //for ifstream and ofstream
#include  //for pow function
#include  //for filename

using namespace std;

void printline();  //print the headline
int change();  //change the digits
//---------------------------------------------------------------------------
int main()
{
    printline();
    change();
    system("Pause");
    return 0;
}
//---------------------------------------------------------------------------
int change()
{
    unsigned int i,n;
    int sum;
    bool Error;
    string filename;
    string line;
    ifstream indata;

    cout<<"please enter the filename: ";
    cin>>filename;

    indata.open(filename.c_str());  //open the file

    if(!indata)
    {
        cout<<"can't open the file";  //check the file
        return 0;
    }
    while(!indata.eof())
    {
        indata>>line; //整行地读入
        n=line.length();//一行有多少个数字方便乘以二的几次方

        sum=0;
        Error=false;

        for(i=0;i        {
            if(line[i]==48)
                continue;
            else if(line[i]==49)
                sum+=pow(2,n-i-1);
            else
            {
                Error=true;
                break;
            }
        }
        if(!Error)
            cout<<"二进制"<        else
            cout<    }
    return 1;
}

//--------------------------------------------------------------------------
void printline()
{
// print the title
cout<<"Binary Number     Decimal Equivalent"<}


--------------------next---------------------

阅读(847) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~