Language: C++

#include <iostream>
#include <iomanip>
using namespace std;

int main(void){
    int a,b,c,d,e,f;
    double ansX[1000],ansY[1000];
    while(std::cin >> a >> b >> c >> d >> e >> f){
        ansX = (c*e - b*f) / (a*e - b*d);
        ansX *= 1000;
        if(ansX > 0) 
            ansX += 0.5;
        else 
            ansX -= 0.5;
        ansX = int(ansX);
        ansX /= 1000;
        
        ansY = (a*f - c*d) / (a*e - b*d);
        ansY *= 1000;
        if(ansY > 0) 
            ansY += 0.5;
        else
            ansY -= 0.5;
        ansY = int(ansY);
        ansY /= 1000;
        
        std::cout <<fixed << setprecision(3) << ansX << " " << fixed << setprecision(3)<<ansY << std::endl;
    }
}

Compiler output:
a.cc: In function 'int main()':
a.cc:9:14: error: incompatible types in assignment of 'int' to 'double [1000]'
    9 |         ansX = (c*e - b*f) / (a*e - b*d);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
a.cc:10:14: error: invalid operands of types 'double [1000]' and 'int' to binary 'operator*'
   10 |         ansX *= 1000;
      |         ~~~~~^~~~~~~
a.cc:10:14: note:   in evaluation of 'operator*=(double [1000], int)'
a.cc:11:17: error: ordered comparison of pointer with integer zero ('double*' and 'int')
   11 |         if(ansX > 0)
      |            ~~~~~^~~
a.cc:12:18: error: invalid operands of types 'double [1000]' and 'double' to binary 'operator+'
   12 |             ansX += 0.5;
      |             ~~~~~^~~~~~
a.cc:12:18: note:   in evaluation of 'operator+=(double [1000], double)'
a.cc:14:18: error: invalid operands of types 'double [1000]' and 'double' to binary 'operator-'
   14 |             ansX -= 0.5;
      |             ~~~~~^~~~~~
a.cc:14:18: note:   in evaluation of 'operator-=(double [1000], double)'
a.cc:15:16: error: cast from 'double*' to 'int' loses precision [-fpermissive]
   15 |         ansX = int(ansX);
      |                ^~~~~~~~~
a.cc:15:14: error: incompatible types in assignment of 'int' to 'double [1000]'
   15 |         ansX = int(ansX);
      |         ~~~~~^~~~~~~~~~~
a.cc:16:14: error: invalid operands of types 'double [1000]' and 'int' to binary 'operator/'
   16 |         ansX /= 1000;
      |         ~~~~~^~~~~~~
a.cc:16:14: note:   in evaluation of 'operator/=(double [1000], int)'
a.cc:18:14: error: incompatible types in assignment of 'int' to 'double [1000]'
   18 |         ansY = (a*f - c*d) / (a*e - b*d);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
a.cc:19:14: error: invalid operands of types 'double [1000]' and 'int' to binary 'operator*'
   19 |         ansY *= 1000;
      |         ~~~~~^~~~~~~
a.cc:19:14: note:   in evaluation of 'operator*=(double [1000], int)'
a.cc:20:17: error: ordered comparison of pointer with integer zero ('double*' and 'int')
   20 |         if(ansY > 0)
      |            ~~~~~^~~
a.cc:21:18: error: invalid operands of types 'double [1000]' and 'double' to binary 'operator+'
   21 |             ansY += 0.5;
      |             ~~~~~^~~~~~
a.cc:21:18: note:   in evaluation of 'operator+=(double [1000], double)'
a.cc:23:18: error: invalid operands of types 'double [1000]' and 'double' to binary 'operator-'
   23 |             ansY -= 0.5;
      |             ~~~~~^~~~~~
a.cc:23:18: note:   in evaluation of 'operator-=(double [1000], double)'
a.cc:24:16: error: cast from 'double*' to 'int' loses precision [-fpermissive]
   24 |         ansY = int(ansY);
      |                ^~~~~~~~~
a.cc:24:14: error: incompatible types in assignment of 'int' to 'double [1000]'
   24 |         ansY = int(ansY);
      |         ~~~~~^~~~~~~~~~~
a.cc:25:14: error: invalid operands of types 'double [1000]' and 'int' to binary 'operator/'
   25 |         ansY /= 1000;
      |         ~~~~~^~~~~~~
a.cc:25:14: note:   in evaluation of 'operator/=(double [1000], int)'