哪位高手有兴趣把这段C++转成C# 万分感谢了
//   每月还款金额 
 	double   dMonthMoney   =   m_dMonthMoneyGive;   
 	//   还款月数 
 	int   monthNum   =   m_nMonthNum;   
 	if(m_nMoneyGiveType   ==   0) 
 	{ 
 		if(monthNum    <=   0) 
 		{ 
 			MessageBox( "[还款月数]输入不正确 "); 
 			CEdit*   pWnd   =   (CEdit*)   GetDlgItem(IDC_MONTH_NUM); 
 			pWnd-> SetFocus(); 
 			pWnd-> SetSel(0,   -1); 
 			return; 
 		}   
 		dMonthMoney   =   GetMonthMoneyGive(m_lTotalMoney,   monthNum,   a); 
 	} 
 	else 
 	{ 
 		monthNum   =   GetMonthNum(m_lTotalMoney,   dMonthMoney,   a); 
 	}   
 	if(monthNum    <   1) 
 	{ 
 		return; 
 	}   
 	//   每月利息 
 	double*   X   =   new   double[monthNum];   
 	//   每月末剩余本金 
 	double*   Y   =   new   double[monthNum];  	     
 	X[0]   =   m_lTotalMoney   *   a; 
 	Y[0]   =   m_lTotalMoney   -   (dMonthMoney   -   X[0]);   
 	double   XTotalTmp   =   X[0]; 
 	int   nPrevGiveNum   =   0;   
 	for(int   i   =   1;   i    <   monthNum;   ++   i) 
 	{ 
 		X[i]   =   Y[i   -   1]   *   a; 
 		XTotalTmp   +=   X[i];	  		 
 		Y[i]   =   m_lTotalMoney   -   ((   i   +   1)   *   dMonthMoney   -   XTotalTmp); 
 	}   
 	//   设置结算结果 
 	m_dTotalMoneyGive   =   dMonthMoney   *   monthNum; 
 	m_dMoneyInterestGive   =   0; 
 	m_dBaseMoneyGive   =   m_lTotalMoney   -   Y[monthNum   -   1]   ; 
 	m_dBaseMoneyLeave   =   Y[monthNum   -   1];	 
 	m_dMonthMoneyGive   =   dMonthMoney; 
 	m_nMonthNum   =   monthNum;   
 	for(int   k   =   0;   k    <   monthNum;   ++   k) 
 	{ 
 		m_dMoneyInterestGive   +=   X[k]; 
 	}   
 	if(X   !=   NULL) 
 	{ 
 		delete   []X; 
 		X   =   NULL; 
 	}   
 	if(Y   !=   NULL) 
 	{ 
 		delete   []Y; 
 		Y   =   NULL; 
 	}   
 	SetCursor(hCursorSrc);   
 	UpdateData(FALSE);   
 }   
 double   TryGetMonth(long   totalMoney,   int   monthNum,    
 						   double   dInterestRate,   double   dPrevMoneyGive,   int   nPrevMoneyGiveMonth,   double   monthMoney) 
 { 
 	double   dReturn   =   0;   
 	bool   isPrevGive   =   dPrevMoneyGive   >    0;   
 	//   每月利息 
 	double*   X   =   new   double[monthNum];   
 	//   每月末剩余本金 
 	double*   Y   =   new   double[monthNum];   
 	X[0]   =   totalMoney   *   dInterestRate; 
 	Y[0]   =   totalMoney   -   (monthMoney   -   X[0]);   
 	double   XTotalTmp   =   X[0]; 
 	int   nPrevGiveNum   =   0; 
 	for(int   i   =   1;   i    <   monthNum;   ++   i) 
 	{ 
 		X[i]   =   Y[i   -   1]   *   dInterestRate; 
 		XTotalTmp   +=   X[i];	  		 
 		bool   isPrevCal   =   i   %   nPrevMoneyGiveMonth   >    0; 
 		nPrevGiveNum   =   i   /   nPrevMoneyGiveMonth;