题目:将一个分数转化成连分数形式。
分析:辗转相除,直接利用GCD算法求解即可。
#include <iostream>
#include <cstdlib>
using namespace std;
int s[100];
int main()
{
int b,k;
while ( cin >> b >> k ) {
int count = 0;
while ( b%k ) {
s[count ++] = b/k;
b = b%k;
swap( b, k );
}
s[count ++] = b;
cout << "[" << s[0];
for ( int i = 1 ; i < count ; ++ i ) {
if ( i == 1 ) cout << ";";
else cout << ",";
cout << s[i];
}
cout << "]" << endl;
}
return 0;
}