读书人

有没有做题严谨的oj题格式异常

发布时间: 2012-04-14 17:14:21 作者: rapoo

有没有做题严谨的,oj题,格式错误
题目:
给定的二阶矩阵(2*2),求其逆矩阵。
Input
输入大小为2*2的距阵。
Output
输出一个大小为2*2的距阵,矩阵每一行相邻的的两个数字之间由一个空格隔开。具体的请详见 Sample Output 。
Sample Input
2 0
1 1
Sample Output
0.500000 0.000000
-0.500000 1.000000
Hint
见实验指导书。
我的代码[code=C/C++][/code]
#include "stdio.h"
#include<math.h>
int main()
{
int i,j;
double a[2][2],b[2][2],A;
while((scanf("%lf%lf%lf%lf",&a[0][0],&a[0][1],&a[1][0],&a[1][1]))!=EOF)
{
A=1.0/(a[0][0]*a[1][1]-a[1][0]*a[0][1]);
b[0][0]=A*a[1][1];
b[0][1]=(-1)*A*a[0][1];
b[1][0]=(-1)*A*a[1][0];
b[1][1]=A*a[0][0];
for(i=0;i<2;i++)
for(j=0;j<2;j++)
{
if(fabs(b[i][j])==0.000000)
b[i][j]=0.000000;
}
printf("%lf %lf\n",b[0][0],b[0][1]);
printf("%lf %lf\n",b[1][0],b[1][1]);
}
return 0;
}
有没有谁知道个是怎么错了!提示一下,我都改烦了!

[解决办法]
帮忙顶下吧,矩阵的运算都快忘完了
[解决办法]

C/C++ code
#include "stdio.h"#include<math.h>int main(){    int i,j;    double a[2][2],b[2][2],A;    printf("input 2*2 matrix like 1,1,1,1: \n");    while((scanf("%lf,%lf,%lf,%lf",&a[0][0],&a[0][1],&a[1][0],&a[1][1]))!=EOF)    {        A=1.0/(a[0][0]*a[1][1]-a[1][0]*a[0][1]);        b[0][0]=A*a[1][1];        b[0][1]=(-1)*A*a[0][1];        b[1][0]=(-1)*A*a[1][0];        b[1][1]=A*a[0][0];        for(i=0;i<2;i++)            for(j=0;j<2;j++)            {                if(fabs(b[i][j])==0.000000)                    b[i][j]=0.000000;            }        printf("result:\n");        printf("%lf %lf\n",b[0][0],b[0][1]);        printf("%lf %lf\n",b[1][0],b[1][1]);    }    return 0;} 

读书人网 >C++

热点推荐