. , . [ ]. - - . . - . . , . . . . , . . , . 1) . , . 2) . 3) .Net. # . , . . . : public _ this[int index] { get { // , . } set { // , . } } -. - . , set , . get , . . get-, set- . , ( get-) ( set-). . , , . . . , , . , ( ). . . 3: Matrix bezop_mas2D, : class bezop_mas2D
{ int [,] mas; //
int rows, cols; //
public int dlina; //
public bool errflag; //
public beop_mas2D(int r, int c)
{ rows = r; ols = c; mas = new int[rows, cols]; dlina = rows * cols; }
//: public int this [int index1, int index2]
|
|
{ get { if(ok(index1, index2))
{ errflag = false; return mas[index1, index2]; }
else { errflug = true; return 0; } }
set { if(ok(index1, index2))
{ mas[index1, index2] = value; errflag = false; }
else errflag = true; }
private bool ok(int index1, int index2)
{ if(index1 >= 0 && index1 < rows && index2 >= 0 && index2 < cols)
return true;
return false; } ←// }←//
// main():
bezop_mas2D mas2D = new bezop_mas2D(3,5);
Console.WriteLine( );
for (i = 0; i < 6; i++) mas2D[i, i] = I * 10;
Console.WriteLine( );
for(i = 0; i < 6; i++)
{ mas2D[i, i] = i * 10; If(mas2D.errflag)
Console.WriteLine(mas2D[ + i + , + i + ] ); } Console.WriteLine();
Cnsole.WriteLine( ); for(i = 0; i < 6; i++) {x = mas2D[i, i];
if(!mas2D.errflag) Console.Write(x + );
else Console.WriteLine(mas2D[ + i + , + i + ] ); } } }
( ), , .. .