# include struct t_Factorial { short n, // величина факториала n! N ; // число сочетаний char *value ; // массив, в котором лежат сочетания long n_value ; short fak[10] ; // число сочетаний от i // ------ величины, нужные при построении ------- long j ; short I[10] ; // значения бегучих индексов short flag[10]; // занятые индексы t_Factorial( short nn ); long calc_factorial( short _n ); void make( short z ); long use( long Variant, long Word ); }; /************************************************************************/ long t_Factorial :: calc_factorial( short nn ) { long i,NN ; for( NN=i=1 ; i<=nn ; i++ ) { NN*=i ; fak[i]=NN ; } return NN ; } /************************************************************************/ void t_Factorial :: make( short z ) { long i,z1 ; if( z<0 ) { j++ ; z1=n*(N-j) ; for( i=0 ; i