Calculating the determinants of data entered
General comments:

Use one line per variable.

int x,y,z,;


Prefer to use smaller than than smaller than or equal. This is a bit nit-picky but when working with array bounds you can then use the same number in the test as in the size of the array, which makes it slightly easier to read.

int mReader[9];
for (x = 0 ; x &lt;= 8 ; x++)

// try
int mReader[9];
for (x = 0 ; x &lt; 9 ; x++) // easy to see correlation between x and mReader


The variables x/y/z are not used to pass information between different loops. So rather than declare them at the top declare them as close to the point of use as possible. Your loops should look more like this:

for(int x = 0; x&lt;=2 ;x++)
 // ^^^ x is local to the loop


Do not fall in to the mental trap of thinking that you are saving space for re-use. The compiler is quite capable of doing that all by itself.

This test seems a bit redundant:

if ((x % 3) == 0 || x == 0)
     //          ^^^^^^^^^  Why? if x == 0 then (x % 3) == 0 thus the second part of the
     //                          test will never be evaluated.


Are you sure this is correct?

for(x = 9 ; x &gt;= 1 ; x--)


Seems like x never reaches 0. As it turns out it is correct even if it looks wrong. But you need to read the rest of the code to make sure it is being used correctly. Writing code were you need to scan ahead to determine correctness is not a good idea. I would loop the same way as all the other loops (using a different variable name) then adjust the usage.

for(int reverseX = 0 ; reverseX &lt; 9 ; ++reverseX)
{
 ..... 
     Determinant[y] =  Determinant[y] * My3DMatrix[z][mReader[9 - 1 - reverseX]];


Does this work?

cin.get();


Looks like you are trying to pause the application before termination. But to me it looks like it will try and swallow the '\n' from the last time you hit enter, and thus do nothing.