17.4配列は進数変換に用いられる(正直、よくわからないことに遭遇すると「萎えた!!:-()
1584 ワード
/*
* Copyright (c) 2013,
* All rights reserved.
* :
* :2013 12 17
* :v1.0
*
* :
* :
* :
* : 32
* :
*/
#include <iostream>
using namespace std;
void tran(int n, int d);
int main()
{
tran(1800, 8);
tran(2000, 24);
tran(1600, 2);
return 0;
}
void tran(int n, int d)
{
int k,a[100],m=0,max,i;
k=n; // k n ,n
while(k>0)
{
a[m++]=k%d; // d m
k/=d;
}
max=0;
cout<<n<<" "<<d<<" :"; // d ,
for(i=m-1; i>=0; i--)
{
if(a[i]<10)
cout<<a[i];
else
cout<<char('A'+a[i]-10);
if(max<a[i]) max=a[i];
}
cout<<endl;
cout<<" " << ((max<10)?char('0'+max):char('A'+max-10)) << ", "; // max
for(i=m-1; i>=0; i--)
{
if(a[i]==max)
cout<<m-i<<' '; //i=m-1 , m-i 1, 1 ,
}
cout <<" 。"<<endl;
}
心得:ああ!進数になるとカードが!いつも分からないで、先生が送ったのを见てやっと自分がしたことが何なのかを発见します???そんなに面倒くさい!・・・