Runtime Error

#include <iostream>

using namespace std;
void FtoCF(int num1,int num2);
void CFtoF(char str[3],int arr[10000],int sum);

int main()
{
int sum=0,num1=0,num2=0;
int arr[10000];
char str[10000];

cin >> str[0] >> arr[0] >> str[1];
int i=1;
while(str[i]!=']') {
cin >> arr[i] >> str[i+1];
i++;
}
sum=i; //数组长度参数
char chr;
cin >> num1 >> chr >> num2;
CFtoF(str,arr,sum); //连分数转分数
FtoCF(num1,num2); //分数转连分数
return 0;
}

void CFtoF(char str[10000],int arr[10000],int sum) {
int num1=1,num2=0,temp=0;
while(sum!=0) {
temp=num1;
num1=arr[sum-1]*num1+num2;
num2=temp;
sum--;
}
cout << num1 <<'/' << num2 << endl;
}
void FtoCF(int num1,int num2) {
int i=0,temp=0;
int num[10000]={0}; //保存结果的数组
while(num2!=0)
{
num[i]=num1/num2; //使用辗转相除法
temp=num2;
num2=num1-num2*num[i];
num1=temp;
i++;
}
cout << '[' << num[0] << ';'; //输出格式
for(int j=1;j<i;j++) {
if(j!=i-1) {
cout << num[j] << ',';
} else {
cout << num[j];
}
}
cout << ']' << endl;
}

0 条评论

目前还没有评论...

信息

ID
1696
难度
7
分类
其他 | 数学模拟 点击显示
标签
递交数
5158
已通过
1140
通过率
22%
被复制
3
上传者