Показать сообщение отдельно

  #7  
Старый 23.01.2008, 11:39
Delimiter
Banned
Регистрация: 08.04.2005
Сообщений: 446
С нами: 11099536

Репутация: 518
По умолчанию

Код:
void M_gen_key(char *str,int counter,int Nx2,int V)
{
	int i,l1,l2;
	if(counter<Nx2)
	{
		*(str+counter)='0';
		M_gen_key(str,counter+1,Nx2,V);
		*(str+counter)='1';
		M_gen_key(str,counter+1,Nx2,V);
	}
	else
	{   //тупость оправдываемая увеличением суммарного кол-ва тактов
                    // на анализ "умного" перебора хвоста 
		for(i=0,l1=l2=0;i<V;i++)
		{
			l1+=*(str+i)-0x30;
			l2+=*(str+counter-i-1)-0x30;
		}
		if(l1==l2)
		{
			*(str+counter)=0;
			// vivod kuda hochesh
			// ...........
		}
	}
}
void CAwsfsfDlg::OnMyGenerate() // обработчик нажатия кнопки
{
                char *str;
                int N=4;
                int Nx2=N*2;
                int V=Nx2/2; //тут подкоректируешь если не всегда так
                str=new char[Nx2];
                M_gen_key(str,0,Nx2,V);
                delete[] str;
 
}
Пользуйся

Последний раз редактировалось Delimiter; 23.01.2008 в 12:06..
 
Ответить с цитированием